)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"37e0e63935901ad174b7569ba1486c8db1ab96cb","unresolved":false,"context_lines":[{"line_number":10,"context_line":"Therefore, according to transition plan [1],"},{"line_number":11,"context_line":"we should have py36 testenv ready for it."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"[1] https://wiki.ubuntu.com/Python/Python36Transition"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I535188debcf89c91c887d0026bbf2157333ae2a4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5f7c97a3_5372c413","line":13,"range":{"start_line":13,"start_character":1,"end_line":13,"end_character":53},"updated":"2018-06-25 10:59:34.000000000","message":"this is the ubuntu transtion plan not the openstack transtion plan. \nlooking at https://github.com/openstack/governance/blob/master/reference/pti/python.rst\n\nwe still do not have an update to descibe how we should adress python 3.6\n\nsome had suggested makeign python 3.4 or 3.5 as the minimum version of python 3 we suppport others suggested making a hard break to 3.6 as that is what most distros would be shipping when we move to python 3 only.\n\nwe can add a 3.6 target but not any voting gate jobs or enable it by default until we decide as a community how to address moving to python 3.","commit_id":"3cf008fa66e6eb7cb333ee14959d6f20e85c1318"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"baf11970b994553e9e6905e8ddcd55944c00c0bf","unresolved":false,"context_lines":[{"line_number":10,"context_line":"Therefore, according to transition plan [1],"},{"line_number":11,"context_line":"we should have py36 testenv ready for it."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"[1] https://wiki.ubuntu.com/Python/Python36Transition"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I535188debcf89c91c887d0026bbf2157333ae2a4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5f7c97a3_a7daeee5","line":13,"range":{"start_line":13,"start_character":1,"end_line":13,"end_character":53},"in_reply_to":"5f7c97a3_5372c413","updated":"2018-06-25 13:56:45.000000000","message":"can we rephase this to point to the links provided by doug.\nspecifically  https://governance.openstack.org/tc/resolutions/20180529-python2-deprecation-timeline.html\nand https://review.openstack.org/#/c/575933/","commit_id":"3cf008fa66e6eb7cb333ee14959d6f20e85c1318"},{"author":{"_account_id":25903,"name":"Vu Cong Tuan","email":"tuanvc@vn.fujitsu.com","username":"tuanvu"},"change_message_id":"58b915fd59163ceb6a3dae51c46a46a3be9c89d0","unresolved":false,"context_lines":[{"line_number":10,"context_line":"Therefore, according to transition plan [1],"},{"line_number":11,"context_line":"we should have py36 testenv ready for it."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"[1] https://wiki.ubuntu.com/Python/Python36Transition"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I535188debcf89c91c887d0026bbf2157333ae2a4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5f7c97a3_6acb2d49","line":13,"range":{"start_line":13,"start_character":1,"end_line":13,"end_character":53},"in_reply_to":"5f7c97a3_a7daeee5","updated":"2018-06-26 01:59:31.000000000","message":"Sure, Sean.\nIt has just been updated as your suggestion.","commit_id":"3cf008fa66e6eb7cb333ee14959d6f20e85c1318"}],"tox.ini":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"3b804f4a71ffcd107d8a18740ad3c6f0274b83a3","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"[testenv:py36]"},{"line_number":36,"context_line":"basepython \u003d python3"},{"line_number":37,"context_line":"commands \u003d"},{"line_number":38,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-properties","patch_set":2,"id":"5f7c97a3_21db5321","line":36,"range":{"start_line":36,"start_character":0,"end_line":36,"end_character":20},"updated":"2018-07-05 08:44:29.000000000","message":"these are wrong. This will run with the system Python3, which could be python3.4, python3.5, python3.6, etc.\n\nInstead of doing this, could you \u0027commands\u0027 attribute up into the \u0027testenv\u0027 section and delete all of these pyNN sections, please?","commit_id":"7759fce52bd67f9b798c7ae1fdb10404485d5264"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e41b6cf334db00c44d8304c1e0431be57a8b2950","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"[testenv:py36]"},{"line_number":36,"context_line":"basepython \u003d python3"},{"line_number":37,"context_line":"commands \u003d"},{"line_number":38,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-properties","patch_set":2,"id":"5f7c97a3_ccdc1373","line":36,"range":{"start_line":36,"start_character":0,"end_line":36,"end_character":20},"in_reply_to":"5f7c97a3_21db5321","updated":"2018-07-05 10:51:06.000000000","message":"I don\u0027t actually understand this request.\n\ni did look up the definiton of basepython previously\nhttps://tox.readthedocs.io/en/latest/config.html#confval-basepython\u003dNAME-OR-PATH\ni had assumed it forced only that version of python to symlinked into the environment as /bin/python but rereading this i see that is not strictly stated anywhere that, that would be the case so the #!/bin/python in stestr could still use python2.7 even with basepython\u003dpython3\n\ncan you give an example of what that would look like?\n\nwould it be something like\n\n[testenv]\npython_bin \u003d python3\ncommands \u003d {python_bin} stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027\n\n[testenv:py27]\npython_bin \u003d python2.7\n\n[testenv:functional]\npython_bin \u003d python2.7\nsetenv \u003d\n    {[testenv]setenv}\ncommands \u003d\n    {python_bin} stestr run --black-regex \".tests.unit\" \u0027{posargs}\u0027\n\nand then remove the py35 and 36 targets?","commit_id":"7759fce52bd67f9b798c7ae1fdb10404485d5264"},{"author":{"_account_id":25903,"name":"Vu Cong Tuan","email":"tuanvc@vn.fujitsu.com","username":"tuanvu"},"change_message_id":"026a35f27c7ea0c9aae25d2bf2e9e81ae86b2576","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"[testenv:py36]"},{"line_number":36,"context_line":"basepython \u003d python3"},{"line_number":37,"context_line":"commands \u003d"},{"line_number":38,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-properties","patch_set":2,"id":"5f7c97a3_0b12dffd","line":36,"range":{"start_line":36,"start_character":0,"end_line":36,"end_character":20},"in_reply_to":"5f7c97a3_b2f80dc1","updated":"2018-07-06 06:10:03.000000000","message":"Thanks for the detailed suggestions, Sean and Stephen.\nThis patch set has just been updated as your recommendation.\nCommit message has been updated as well.","commit_id":"7759fce52bd67f9b798c7ae1fdb10404485d5264"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"34e7778a1d35c3049dbb78ce43ca84ac8a57333c","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"[testenv:py36]"},{"line_number":36,"context_line":"basepython \u003d python3"},{"line_number":37,"context_line":"commands \u003d"},{"line_number":38,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-properties","patch_set":2,"id":"5f7c97a3_b2f80dc1","line":36,"range":{"start_line":36,"start_character":0,"end_line":36,"end_character":20},"in_reply_to":"5f7c97a3_ccdc1373","updated":"2018-07-05 16:07:01.000000000","message":"See https://github.com/tox-dev/tox/issues/477. tl;dr: if you specify a pyNN factor in your testenv name (e.g. py27) then the basepython will be set. However, you can still override this, in which case the default will no longer be used. That\u0027s what we\u0027re doing here so all those environments are basically doing the same thing. I fixed this recently but it hasn\u0027t been released yet: https://github.com/tox-dev/tox/commit/d5b9c0a93931707b55f8f64bbd37be7d0b6a20d7\n\nWhat you\u0027ve given above is correct *except* you shouldn\u0027t specify basepython (python_bin) in \u0027testenv\u0027. You also don\u0027t need the \u0027testenv:py27\u0027 section.","commit_id":"7759fce52bd67f9b798c7ae1fdb10404485d5264"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"4a3bdfda6fd0b8fdc1d7ec2bdb3714909770b196","unresolved":false,"context_lines":[{"line_number":11,"context_line":"deps \u003d -r{toxinidir}/requirements.txt"},{"line_number":12,"context_line":"       -r{toxinidir}/test-requirements.txt"},{"line_number":13,"context_line":"whitelist_externals \u003d bash"},{"line_number":14,"context_line":"commands \u003d stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"[tox:jenkins]"},{"line_number":17,"context_line":"downloadcache \u003d ~/cache/pip"}],"source_content_type":"text/x-properties","patch_set":3,"id":"5f7c97a3_f66d0767","line":14,"range":{"start_line":14,"start_character":56,"end_line":14,"end_character":57},"updated":"2018-07-06 12:38:51.000000000","message":"nit: these backticks can probably be removed","commit_id":"95fab50d47d40feb3d90beb14bc013bd243bdfad"},{"author":{"_account_id":25903,"name":"Vu Cong Tuan","email":"tuanvc@vn.fujitsu.com","username":"tuanvu"},"change_message_id":"0f921f24abaac3bd09e598997c289cbd0a6dfa12","unresolved":false,"context_lines":[{"line_number":11,"context_line":"deps \u003d -r{toxinidir}/requirements.txt"},{"line_number":12,"context_line":"       -r{toxinidir}/test-requirements.txt"},{"line_number":13,"context_line":"whitelist_externals \u003d bash"},{"line_number":14,"context_line":"commands \u003d stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"[tox:jenkins]"},{"line_number":17,"context_line":"downloadcache \u003d ~/cache/pip"}],"source_content_type":"text/x-properties","patch_set":3,"id":"5f7c97a3_607b57f3","line":14,"range":{"start_line":14,"start_character":56,"end_line":14,"end_character":57},"in_reply_to":"5f7c97a3_f66d0767","updated":"2018-07-09 02:11:40.000000000","message":"Done","commit_id":"95fab50d47d40feb3d90beb14bc013bd243bdfad"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"4a3bdfda6fd0b8fdc1d7ec2bdb3714909770b196","unresolved":false,"context_lines":[{"line_number":12,"context_line":"       -r{toxinidir}/test-requirements.txt"},{"line_number":13,"context_line":"whitelist_externals \u003d bash"},{"line_number":14,"context_line":"commands \u003d stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"[tox:jenkins]"},{"line_number":17,"context_line":"downloadcache \u003d ~/cache/pip"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"[testenv:pep8]"},{"line_number":20,"context_line":"basepython \u003d python3"}],"source_content_type":"text/x-properties","patch_set":3,"id":"5f7c97a3_d6a56ba1","line":17,"range":{"start_line":15,"start_character":0,"end_line":17,"end_character":27},"updated":"2018-07-06 12:38:51.000000000","message":"Fancy removing this in a follow up? I assume no one is using this (maybe check when it was added with git blame)","commit_id":"95fab50d47d40feb3d90beb14bc013bd243bdfad"},{"author":{"_account_id":25903,"name":"Vu Cong Tuan","email":"tuanvc@vn.fujitsu.com","username":"tuanvu"},"change_message_id":"0f921f24abaac3bd09e598997c289cbd0a6dfa12","unresolved":false,"context_lines":[{"line_number":12,"context_line":"       -r{toxinidir}/test-requirements.txt"},{"line_number":13,"context_line":"whitelist_externals \u003d bash"},{"line_number":14,"context_line":"commands \u003d stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"[tox:jenkins]"},{"line_number":17,"context_line":"downloadcache \u003d ~/cache/pip"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"[testenv:pep8]"},{"line_number":20,"context_line":"basepython \u003d python3"}],"source_content_type":"text/x-properties","patch_set":3,"id":"5f7c97a3_8071d30f","line":17,"range":{"start_line":15,"start_character":0,"end_line":17,"end_character":27},"in_reply_to":"5f7c97a3_d6a56ba1","updated":"2018-07-09 02:11:40.000000000","message":"Thanks for your suggestion.\nI\u0027ve just created a new patch for removing this [1].\nIt was added 3 years ago via [2]\n[1] https://review.openstack.org/#/c/580886/\n[2] https://github.com/openstack/os-vif/commit/8023f334530a9405278615422b9652ce44725690","commit_id":"95fab50d47d40feb3d90beb14bc013bd243bdfad"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"4a3bdfda6fd0b8fdc1d7ec2bdb3714909770b196","unresolved":false,"context_lines":[{"line_number":30,"context_line":"    {[testenv]setenv}"},{"line_number":31,"context_line":"commands \u003d"},{"line_number":32,"context_line":"    stestr run --black-regex \".tests.unit\" \u0027{posargs}\u0027"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"[testenv:cover]"},{"line_number":35,"context_line":"basepython \u003d python3"},{"line_number":36,"context_line":"commands \u003d"},{"line_number":37,"context_line":"  coverage erase"},{"line_number":38,"context_line":"  python setup.py testr --coverage --testr-args\u003d\u0027--concurrency\u003d1 {posargs}\u0027"},{"line_number":39,"context_line":"  coverage combine"},{"line_number":40,"context_line":"  coverage html --include\u003d\u0027os_vif/*\u0027 -d covhtml -i"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"[testenv:docs]"},{"line_number":43,"context_line":"basepython \u003d python3"}],"source_content_type":"text/x-properties","patch_set":3,"id":"5f7c97a3_96da931a","line":40,"range":{"start_line":33,"start_character":0,"end_line":40,"end_character":50},"updated":"2018-07-06 12:38:51.000000000","message":"This also needs to be converted. Personally, I\u0027d just remove it because we don\u0027t do anything with this","commit_id":"95fab50d47d40feb3d90beb14bc013bd243bdfad"},{"author":{"_account_id":25903,"name":"Vu Cong Tuan","email":"tuanvc@vn.fujitsu.com","username":"tuanvu"},"change_message_id":"0f921f24abaac3bd09e598997c289cbd0a6dfa12","unresolved":false,"context_lines":[{"line_number":30,"context_line":"    {[testenv]setenv}"},{"line_number":31,"context_line":"commands \u003d"},{"line_number":32,"context_line":"    stestr run --black-regex \".tests.unit\" \u0027{posargs}\u0027"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"[testenv:cover]"},{"line_number":35,"context_line":"basepython \u003d python3"},{"line_number":36,"context_line":"commands \u003d"},{"line_number":37,"context_line":"  coverage erase"},{"line_number":38,"context_line":"  python setup.py testr --coverage --testr-args\u003d\u0027--concurrency\u003d1 {posargs}\u0027"},{"line_number":39,"context_line":"  coverage combine"},{"line_number":40,"context_line":"  coverage html --include\u003d\u0027os_vif/*\u0027 -d covhtml -i"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"[testenv:docs]"},{"line_number":43,"context_line":"basepython \u003d python3"}],"source_content_type":"text/x-properties","patch_set":3,"id":"5f7c97a3_0057035c","line":40,"range":{"start_line":33,"start_character":0,"end_line":40,"end_character":50},"in_reply_to":"5f7c97a3_96da931a","updated":"2018-07-09 02:11:40.000000000","message":"Thanks, this section has just been removed.","commit_id":"95fab50d47d40feb3d90beb14bc013bd243bdfad"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"4a3bdfda6fd0b8fdc1d7ec2bdb3714909770b196","unresolved":false,"context_lines":[{"line_number":83,"context_line":"  -c{toxinidir}/lower-constraints.txt"},{"line_number":84,"context_line":"  -r{toxinidir}/test-requirements.txt"},{"line_number":85,"context_line":"  -r{toxinidir}/requirements.txt"},{"line_number":86,"context_line":"commands \u003d"},{"line_number":87,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"}],"source_content_type":"text/x-properties","patch_set":3,"id":"5f7c97a3_76b017dd","line":87,"range":{"start_line":86,"start_character":0,"end_line":87,"end_character":60},"updated":"2018-07-06 12:38:51.000000000","message":"This can be removed now","commit_id":"95fab50d47d40feb3d90beb14bc013bd243bdfad"},{"author":{"_account_id":25903,"name":"Vu Cong Tuan","email":"tuanvc@vn.fujitsu.com","username":"tuanvu"},"change_message_id":"0f921f24abaac3bd09e598997c289cbd0a6dfa12","unresolved":false,"context_lines":[{"line_number":83,"context_line":"  -c{toxinidir}/lower-constraints.txt"},{"line_number":84,"context_line":"  -r{toxinidir}/test-requirements.txt"},{"line_number":85,"context_line":"  -r{toxinidir}/requirements.txt"},{"line_number":86,"context_line":"commands \u003d"},{"line_number":87,"context_line":"    stestr run --black-regex \".tests.functional\" \u0027{posargs}\u0027"}],"source_content_type":"text/x-properties","patch_set":3,"id":"5f7c97a3_6064b749","line":87,"range":{"start_line":86,"start_character":0,"end_line":87,"end_character":60},"in_reply_to":"5f7c97a3_76b017dd","updated":"2018-07-09 02:11:40.000000000","message":"Done","commit_id":"95fab50d47d40feb3d90beb14bc013bd243bdfad"}]}
