)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"f1cde6f0f98fcef869e7833ec38d54145d6a41e3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"76ada56b_43991cee","updated":"2022-12-27 14:26:57.000000000","message":"LGTM","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"21210711e9dedb241767e1776e2b84d75462dc0d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"7e545647_c16d22fe","updated":"2022-12-26 19:47:46.000000000","message":"recheck sdk job fix is merged","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"62b043185745e70ade8174240caaed688b813794","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"66a691bf_589bff58","updated":"2022-12-26 19:47:33.000000000","message":"sdk job fix is merged","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"795c571dce3cd500b9fd6e1b68c7c7ce2b88145c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"4882c983_ca56cd73","updated":"2023-01-06 12:55:01.000000000","message":"I could be wrong. Please correct me if so!","commit_id":"e7dfe16cbbbfa49c20ca6213d8a98299bf50e3a2"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"2f1bc2b7daae554462bed5f02df99c493696173a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"a5018a51_de3c2867","updated":"2023-01-05 18:55:11.000000000","message":"lgtm, thanks","commit_id":"e7dfe16cbbbfa49c20ca6213d8a98299bf50e3a2"}],"tox.ini":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"0ef3a32994fa69d97a5c27bfaf68052b0ee6ed10","unresolved":true,"context_lines":[{"line_number":176,"context_line":"# separately, outside of the requirements files, and develop mode disabled"},{"line_number":177,"context_line":"# explicitly to avoid unnecessarily installing the checked-out repo too"},{"line_number":178,"context_line":"usedevelop \u003d False"},{"line_number":179,"context_line":"skipdist \u003d True"},{"line_number":180,"context_line":"deps \u003d bindep"},{"line_number":181,"context_line":"commands \u003d"},{"line_number":182,"context_line":"  bindep test"}],"source_content_type":"text/x-properties","patch_set":2,"id":"94be8750_95166d9d","line":179,"updated":"2022-12-22 15:28:42.000000000","message":"skipsdist?","commit_id":"d8a66c6a95fada7cfe371b2abcfdba1cda9114c1"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"6b8b0fc4d38bbada6f3292741f058f79d4ac262b","unresolved":false,"context_lines":[{"line_number":176,"context_line":"# separately, outside of the requirements files, and develop mode disabled"},{"line_number":177,"context_line":"# explicitly to avoid unnecessarily installing the checked-out repo too"},{"line_number":178,"context_line":"usedevelop \u003d False"},{"line_number":179,"context_line":"skipdist \u003d True"},{"line_number":180,"context_line":"deps \u003d bindep"},{"line_number":181,"context_line":"commands \u003d"},{"line_number":182,"context_line":"  bindep test"}],"source_content_type":"text/x-properties","patch_set":2,"id":"91cb0cf9_a5671f97","line":179,"in_reply_to":"94be8750_95166d9d","updated":"2022-12-22 15:49:55.000000000","message":"Done","commit_id":"d8a66c6a95fada7cfe371b2abcfdba1cda9114c1"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"12a79e75253f0f66d1dd9afd553323e8f2ece264","unresolved":true,"context_lines":[{"line_number":13,"context_line":"  bash"},{"line_number":14,"context_line":"  rm"},{"line_number":15,"context_line":"  env"},{"line_number":16,"context_line":"install_command \u003d pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}"},{"line_number":17,"context_line":"setenv \u003d"},{"line_number":18,"context_line":"  VIRTUAL_ENV\u003d{envdir}"},{"line_number":19,"context_line":"  LANGUAGE\u003den_US"}],"source_content_type":"text/x-properties","patch_set":3,"id":"db434e37_6d254218","line":16,"updated":"2023-01-04 11:24:20.000000000","message":"Whoops. You need to remove this. As it is, you\u0027re specifying the constraints file twice.","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"e5b0b84c0cd778f5016ed26665af1e377b93e207","unresolved":true,"context_lines":[{"line_number":13,"context_line":"  bash"},{"line_number":14,"context_line":"  rm"},{"line_number":15,"context_line":"  env"},{"line_number":16,"context_line":"install_command \u003d pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}"},{"line_number":17,"context_line":"setenv \u003d"},{"line_number":18,"context_line":"  VIRTUAL_ENV\u003d{envdir}"},{"line_number":19,"context_line":"  LANGUAGE\u003den_US"}],"source_content_type":"text/x-properties","patch_set":3,"id":"289f214e_c70e0cb5","line":16,"in_reply_to":"1ea8bb2a_817168b6","updated":"2023-01-09 11:51:15.000000000","message":"Without the install command I see this during placement install in the venv:\n\n```\npy310: 10345 W install_package_deps\u003e python -I -m pip install \u0027Routes\u003e\u003d2.3.1\u0027 \u0027SQLAlchemy\u003e\u003d1.4.0\u0027 \u0027WebOb\u003e\u003d1.8.2\u0027 \u0027jsonschema\u003e\u003d3.2.0\u0027 \u0027keystonemiddleware\u003e\u003d4.18.0\u0027 \u0027microversion-parse\u003e\u003d0.2.1\u0027 \u0027os-resource-classes\u003e\u003d1.1.0\u0027 \u0027os-traits\u003e\u003d2.8.0\u0027 \u0027oslo.concurrency\u003e\u003d3.26.0\u0027 \u0027oslo.config\u003e\u003d6.7.0\u0027 \u0027oslo.context\u003e\u003d2.22.0\u0027 \u0027oslo.db\u003e\u003d8.6.0\u0027 \u0027oslo.log\u003e\u003d4.3.0\u0027 \u0027oslo.middleware\u003e\u003d3.31.0\u0027 \u0027oslo.policy\u003e\u003d3.7.0\u0027 \u0027oslo.serialization\u003e\u003d2.25.0\u0027 \u0027oslo.upgradecheck\u003e\u003d1.3.0\u0027 \u0027oslo.utils\u003e\u003d4.5.0\u0027 \u0027pbr\u003e\u003d3.1.1\u0027 \u0027requests\u003e\u003d2.25.0\u0027 \u0027setuptools!\u003d24.0.0,!\u003d34.0.0,!\u003d34.0.1,!\u003d34.0.2,!\u003d34.0.3,!\u003d34.1.0,!\u003d34.1.1,!\u003d34.2.0,!\u003d34.3.0,!\u003d34.3.1,!\u003d34.3.2,!\u003d36.2.0,\u003e\u003d21.0.0\u0027 [tox/tox_env/api.py:427]\n[...snip...]\npy310: 13964 W install_package\u003e python -I -m pip install --force-reinstall --no-deps /home/gibi/upstream/git/openstack/placement/.tox/.tmp/package/1/openstack_placement-8.1.0.dev7-0.editable-py3-none-any.whl [tox/tox_env/api.py:427]\nProcessing ./.tox/.tmp/package/1/openstack_placement-8.1.0.dev7-0.editable-py3-none-any.whl\nInstalling collected packages: openstack-placement\nSuccessfully installed openstack-placement-8.1.0.dev7\n```\n\nWith the install command I see this:\n```\npy310: 8583 W install_package_deps\u003e pip install -chttps://releases.openstack.org/constraints/upper/master \u0027Routes\u003e\u003d2.3.1\u0027 \u0027SQLAlchemy\u003e\u003d1.4.0\u0027 \u0027WebOb\u003e\u003d1.8.2\u0027 \u0027jsonschema\u003e\u003d3.2.0\u0027 \u0027keystonemiddleware\u003e\u003d4.18.0\u0027 \u0027microversion-parse\u003e\u003d0.2.1\u0027 \u0027os-resource-classes\u003e\u003d1.1.0\u0027 \u0027os-traits\u003e\u003d2.8.0\u0027 \u0027oslo.concurrency\u003e\u003d3.26.0\u0027 \u0027oslo.config\u003e\u003d6.7.0\u0027 \u0027oslo.context\u003e\u003d2.22.0\u0027 \u0027oslo.db\u003e\u003d8.6.0\u0027 \u0027oslo.log\u003e\u003d4.3.0\u0027 \u0027oslo.middleware\u003e\u003d3.31.0\u0027 \u0027oslo.policy\u003e\u003d3.7.0\u0027 \u0027oslo.serialization\u003e\u003d2.25.0\u0027 \u0027oslo.upgradecheck\u003e\u003d1.3.0\u0027 \u0027oslo.utils\u003e\u003d4.5.0\u0027 \u0027pbr\u003e\u003d3.1.1\u0027 \u0027requests\u003e\u003d2.25.0\u0027 \u0027setuptools!\u003d24.0.0,!\u003d34.0.0,!\u003d34.0.1,!\u003d34.0.2,!\u003d34.0.3,!\u003d34.1.0,!\u003d34.1.1,!\u003d34.2.0,!\u003d34.3.0,!\u003d34.3.1,!\u003d34.3.2,!\u003d36.2.0,\u003e\u003d21.0.0\u0027 [tox/tox_env/api.py:427]\n[...snip...]\npy310: 13349 W install_package\u003e pip install -chttps://releases.openstack.org/constraints/upper/master --force-reinstall --no-deps /home/gibi/upstream/git/openstack/placement/.tox/.tmp/package/1/openstack_placement-8.1.0.dev7-0.editable-py3-none-any.whl [tox/tox_env/api.py:427]\nProcessing ./.tox/.tmp/package/1/openstack_placement-8.1.0.dev7-0.editable-py3-none-any.whl\nInstalling collected packages: openstack-placement\nSuccessfully installed openstack-placement-8.1.0.dev7\n```\n\nSo I think I understood it right. When the placement package is installed to the venv tox does not apply the constraints from the deps so there newer than upper constraint packages might be installed.","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"cde60802ebce05129b179a710aa36724e484d3a3","unresolved":false,"context_lines":[{"line_number":13,"context_line":"  bash"},{"line_number":14,"context_line":"  rm"},{"line_number":15,"context_line":"  env"},{"line_number":16,"context_line":"install_command \u003d pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}"},{"line_number":17,"context_line":"setenv \u003d"},{"line_number":18,"context_line":"  VIRTUAL_ENV\u003d{envdir}"},{"line_number":19,"context_line":"  LANGUAGE\u003den_US"}],"source_content_type":"text/x-properties","patch_set":3,"id":"a076d17a_b9867ff0","line":16,"in_reply_to":"289f214e_c70e0cb5","updated":"2023-01-10 12:31:20.000000000","message":"Discussed this on IRC. Yeah, 👆 makes sense. This is happening now because we\u0027re actually installing the package \u0027skipsdist !\u003d true\u0027","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"33be8b4dea902c8c921d485ca239847bb5f25ffb","unresolved":false,"context_lines":[{"line_number":13,"context_line":"  bash"},{"line_number":14,"context_line":"  rm"},{"line_number":15,"context_line":"  env"},{"line_number":16,"context_line":"install_command \u003d pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}"},{"line_number":17,"context_line":"setenv \u003d"},{"line_number":18,"context_line":"  VIRTUAL_ENV\u003d{envdir}"},{"line_number":19,"context_line":"  LANGUAGE\u003den_US"}],"source_content_type":"text/x-properties","patch_set":3,"id":"7038f580_3a107d15","line":16,"in_reply_to":"289f214e_c70e0cb5","updated":"2023-01-09 13:46:21.000000000","message":"transformed it to python -m pip install to be closer what tox does by default.","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"795c571dce3cd500b9fd6e1b68c7c7ce2b88145c","unresolved":true,"context_lines":[{"line_number":13,"context_line":"  bash"},{"line_number":14,"context_line":"  rm"},{"line_number":15,"context_line":"  env"},{"line_number":16,"context_line":"install_command \u003d pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}"},{"line_number":17,"context_line":"setenv \u003d"},{"line_number":18,"context_line":"  VIRTUAL_ENV\u003d{envdir}"},{"line_number":19,"context_line":"  LANGUAGE\u003den_US"}],"source_content_type":"text/x-properties","patch_set":3,"id":"1ea8bb2a_817168b6","line":16,"in_reply_to":"abedd736_1b7850d6","updated":"2023-01-06 12:55:01.000000000","message":"I think you\u0027ve misunderstood that? What that\u0027s saying (to me, anyway) is that you shouldn\u0027t override the \u0027[testenv] install_command\u0027 since it will be used if tox is updating itself (meaning we\u0027ll pull in the upper constraints file unnecessarily, right?). So I think you want to drop this and add the constraints to the deps as you\u0027d done","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"fc0c407e07881e2297593c4005b515d109ab1e7b","unresolved":true,"context_lines":[{"line_number":13,"context_line":"  bash"},{"line_number":14,"context_line":"  rm"},{"line_number":15,"context_line":"  env"},{"line_number":16,"context_line":"install_command \u003d pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}"},{"line_number":17,"context_line":"setenv \u003d"},{"line_number":18,"context_line":"  VIRTUAL_ENV\u003d{envdir}"},{"line_number":19,"context_line":"  LANGUAGE\u003den_US"}],"source_content_type":"text/x-properties","patch_set":3,"id":"abedd736_1b7850d6","line":16,"in_reply_to":"db434e37_6d254218","updated":"2023-01-05 10:01:51.000000000","message":"As far as I remember there was a hint somewhere that when we installing a package in editable mode that install does not follow the constraints from `deps` but still uses the `install_command`. \n\n// later\nI retraced my steps and found it where this is coming from:\nhttps://review.opendev.org/c/openstack/cinder/+/868253/1/tox.ini#47","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"12a79e75253f0f66d1dd9afd553323e8f2ece264","unresolved":true,"context_lines":[{"line_number":26,"context_line":"  SQLALCHEMY_WARN_20\u003d1"},{"line_number":27,"context_line":"deps \u003d"},{"line_number":28,"context_line":"  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}"},{"line_number":29,"context_line":"  -r{toxinidir}/requirements.txt"},{"line_number":30,"context_line":"  -r{toxinidir}/test-requirements.txt"},{"line_number":31,"context_line":"# For a venv that doesn\u0027t use stestr commands must be overridden."},{"line_number":32,"context_line":"commands \u003d"}],"source_content_type":"text/x-properties","patch_set":3,"id":"36dde789_476917aa","line":29,"updated":"2023-01-04 11:24:20.000000000","message":"This shouldn\u0027t be necessary. This should be installing the package (in editable mode, thanks to \u0027usedevelop\u0027) which means we should be installing the dependencies.\n\nIf that\u0027s not happening, then pbr isn\u0027t doing its job and I suspect you\u0027re running into [1].\n\n[1] https://review.opendev.org/c/openstack/pbr/+/869082","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"fc0c407e07881e2297593c4005b515d109ab1e7b","unresolved":false,"context_lines":[{"line_number":26,"context_line":"  SQLALCHEMY_WARN_20\u003d1"},{"line_number":27,"context_line":"deps \u003d"},{"line_number":28,"context_line":"  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}"},{"line_number":29,"context_line":"  -r{toxinidir}/requirements.txt"},{"line_number":30,"context_line":"  -r{toxinidir}/test-requirements.txt"},{"line_number":31,"context_line":"# For a venv that doesn\u0027t use stestr commands must be overridden."},{"line_number":32,"context_line":"commands \u003d"}],"source_content_type":"text/x-properties","patch_set":3,"id":"1432d0d2_f1ca7b90","line":29,"in_reply_to":"36dde789_476917aa","updated":"2023-01-05 10:01:51.000000000","message":"hm, I removed it and everything works. Probably this was a result of me trying different thing to get the tox targets work.","commit_id":"8bb18ecb25ad1076aa594408c5ca360b9cf33c9e"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a30b7edb320e316071172de991b239968d58ef37","unresolved":true,"context_lines":[{"line_number":113,"context_line":"description \u003d"},{"line_number":114,"context_line":"  Build all documentation including API guides and refs."},{"line_number":115,"context_line":"deps \u003d"},{"line_number":116,"context_line":"  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}"},{"line_number":117,"context_line":"  -r{toxinidir}/requirements.txt"},{"line_number":118,"context_line":"  -r{toxinidir}/doc/requirements.txt"},{"line_number":119,"context_line":"commands \u003d"}],"source_content_type":"text/x-properties","patch_set":4,"id":"415ab2ef_ee65f316","line":116,"updated":"2023-01-09 11:59:12.000000000","message":"i think stephen intended you to set {[testenv]deps} here\n\nthat will provide  -r{toxinidir}/requirements.txt and the constraits line is already included in the install command","commit_id":"e7dfe16cbbbfa49c20ca6213d8a98299bf50e3a2"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"33be8b4dea902c8c921d485ca239847bb5f25ffb","unresolved":false,"context_lines":[{"line_number":113,"context_line":"description \u003d"},{"line_number":114,"context_line":"  Build all documentation including API guides and refs."},{"line_number":115,"context_line":"deps \u003d"},{"line_number":116,"context_line":"  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}"},{"line_number":117,"context_line":"  -r{toxinidir}/requirements.txt"},{"line_number":118,"context_line":"  -r{toxinidir}/doc/requirements.txt"},{"line_number":119,"context_line":"commands \u003d"}],"source_content_type":"text/x-properties","patch_set":4,"id":"ae8bc7ca_71bc26eb","line":116,"in_reply_to":"415ab2ef_ee65f316","updated":"2023-01-09 13:46:21.000000000","message":"I don\u0027t think this was what Stephen suggested. But what you are right that we get the requirements.txt here automatically. The editable install will bring in the dependencies of placement so here we only need the docs requirements. Not even test-requirement are needed. The {[testenv]deps} would bring in test-requirements.txt but we don\u0027t need it hence no  {[testenv]deps}  needed here. But I can remove -r{toxinidir}/requirements.txt too. So we went full circle here compared to the original.","commit_id":"e7dfe16cbbbfa49c20ca6213d8a98299bf50e3a2"}]}
