)]}'
{"os_vif/tests/functional/base.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"6c34667c7c57944648f12dfb2416f15d00c4f318","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"def sanitize_log_path(path):"},{"line_number":75,"context_line":"    \"\"\"Sanitize the string so that its log path is shell friendly\"\"\""},{"line_number":76,"context_line":"    return path.replace(\u0027 \u0027, \u0027-\u0027).replace(\u0027(\u0027, \u0027_\u0027).replace(\u0027)\u0027, \u0027_\u0027)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"# Test worker cannot survive eventlet\u0027s Timeout exception, which effectively"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_34c5f65c","line":76,"range":{"start_line":76,"start_character":0,"end_line":76,"end_character":69},"updated":"2019-02-25 15:30:56.000000000","message":"This is done because string.maketrans moved to str.maketrans","commit_id":"5ab2ee6ed08bfd2abc5aac5664c7dd520e400db8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"cdfd3e9fef592078777fde19f124fe16ae93e403","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"def sanitize_log_path(path):"},{"line_number":75,"context_line":"    \"\"\"Sanitize the string so that its log path is shell friendly\"\"\""},{"line_number":76,"context_line":"    return path.replace(\u0027 \u0027, \u0027-\u0027).replace(\u0027(\u0027, \u0027_\u0027).replace(\u0027)\u0027, \u0027_\u0027)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"# Test worker cannot survive eventlet\u0027s Timeout exception, which effectively"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_d2791582","line":76,"range":{"start_line":76,"start_character":0,"end_line":76,"end_character":69},"in_reply_to":"9fdfeff1_34c5f65c","updated":"2019-02-25 19:38:28.000000000","message":"yes and because six does not have compatibility code.\ni could do an if and import the right one but honestly this\nis simplere to understand i think for anyone that does not\nknow what maketrans does.\n\nits slightly less efficent but in this case that is not important.","commit_id":"5ab2ee6ed08bfd2abc5aac5664c7dd520e400db8"}],"tox.ini":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d14a1dca21e5b8bcd3edb1f7c5202f2308e684ba","unresolved":false,"context_lines":[{"line_number":17,"context_line":"commands \u003d stestr run --black-regex \".tests.functional\" {posargs}"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"[testenv:pep8]"},{"line_number":20,"context_line":"basepython \u003d python3"},{"line_number":21,"context_line":"commands \u003d flake8"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"[testenv:venv]"}],"source_content_type":"text/x-properties","patch_set":2,"id":"9fdfeff1_791bad7f","line":20,"range":{"start_line":20,"start_character":0,"end_line":20,"end_character":20},"updated":"2019-02-21 17:42:56.000000000","message":"If you set \u0027[tox] minversion\u0027 to 3.1.1, you can remove this from ever environment and simply set it once in \u0027[testenv]\u0027. I fixed a bug in tox whereby the implicit basepython specified by using a factor like \u0027py27\u0027 would be ignored if it was set globally. Maybe that should be a separate change though","commit_id":"d88cd8ca84f9cf9b67c3dcab2e2f4ee70779a447"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"f8d34134e691364dcf4f7680187aa513260d2c88","unresolved":false,"context_lines":[{"line_number":30,"context_line":"  -r{toxinidir}/doc/requirements.txt"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"[testenv:functional]"},{"line_number":33,"context_line":"basepython \u003d python3.6"},{"line_number":34,"context_line":"setenv \u003d"},{"line_number":35,"context_line":"    {[testenv]setenv}"},{"line_number":36,"context_line":"commands \u003d"}],"source_content_type":"text/x-properties","patch_set":2,"id":"9fdfeff1_82885522","line":33,"range":{"start_line":33,"start_character":13,"end_line":33,"end_character":22},"updated":"2019-02-22 01:17:21.000000000","message":"It should be \u0027python3\u0027.","commit_id":"d88cd8ca84f9cf9b67c3dcab2e2f4ee70779a447"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8c3c4b0118e29857dd3ce092c2f914f3fb8bbfd7","unresolved":false,"context_lines":[{"line_number":30,"context_line":"  -r{toxinidir}/doc/requirements.txt"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"[testenv:functional]"},{"line_number":33,"context_line":"basepython \u003d python3.6"},{"line_number":34,"context_line":"setenv \u003d"},{"line_number":35,"context_line":"    {[testenv]setenv}"},{"line_number":36,"context_line":"commands \u003d"}],"source_content_type":"text/x-properties","patch_set":2,"id":"9fdfeff1_85185f84","line":33,"range":{"start_line":33,"start_character":13,"end_line":33,"end_character":22},"in_reply_to":"9fdfeff1_82885522","updated":"2019-02-22 03:13:58.000000000","message":"yes i disscued this on irc.\n\ni am going to be addind a second functional target for py27 and then change this to python3 then im going to submit a followup patch to  implement stephens suggestion above","commit_id":"d88cd8ca84f9cf9b67c3dcab2e2f4ee70779a447"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"6c34667c7c57944648f12dfb2416f15d00c4f318","unresolved":false,"context_lines":[{"line_number":29,"context_line":"  -r{toxinidir}/doc/requirements.txt"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"[testenv:functional-py27]"},{"line_number":32,"context_line":"basepython \u003d python2.7"},{"line_number":33,"context_line":"setenv \u003d"},{"line_number":34,"context_line":"    {[testenv]setenv}"},{"line_number":35,"context_line":"commands \u003d"}],"source_content_type":"text/x-properties","patch_set":3,"id":"9fdfeff1_94914255","line":32,"range":{"start_line":32,"start_character":0,"end_line":32,"end_character":22},"updated":"2019-02-25 15:30:56.000000000","message":"I _think_ this is unnecessary due to the use of the \u0027py27\u0027 factor","commit_id":"5ab2ee6ed08bfd2abc5aac5664c7dd520e400db8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"cdfd3e9fef592078777fde19f124fe16ae93e403","unresolved":false,"context_lines":[{"line_number":29,"context_line":"  -r{toxinidir}/doc/requirements.txt"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"[testenv:functional-py27]"},{"line_number":32,"context_line":"basepython \u003d python2.7"},{"line_number":33,"context_line":"setenv \u003d"},{"line_number":34,"context_line":"    {[testenv]setenv}"},{"line_number":35,"context_line":"commands \u003d"}],"source_content_type":"text/x-properties","patch_set":3,"id":"9fdfeff1_525f650e","line":32,"range":{"start_line":32,"start_character":0,"end_line":32,"end_character":22},"in_reply_to":"9fdfeff1_94914255","updated":"2019-02-25 19:38:28.000000000","message":"ill test and see.","commit_id":"5ab2ee6ed08bfd2abc5aac5664c7dd520e400db8"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"6c34667c7c57944648f12dfb2416f15d00c4f318","unresolved":false,"context_lines":[{"line_number":39,"context_line":"setenv \u003d"},{"line_number":40,"context_line":"    {[testenv]setenv}"},{"line_number":41,"context_line":"commands \u003d"},{"line_number":42,"context_line":"    stestr run --black-regex \".tests.unit\" \u0027{posargs}\u0027"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"[testenv:docs]"},{"line_number":45,"context_line":"deps \u003d"}],"source_content_type":"text/x-properties","patch_set":3,"id":"9fdfeff1_3473b650","line":42,"range":{"start_line":42,"start_character":4,"end_line":42,"end_character":54},"updated":"2019-02-25 15:30:56.000000000","message":"nit:\n\n  {[testenv:functional-py27]commands}","commit_id":"5ab2ee6ed08bfd2abc5aac5664c7dd520e400db8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"cdfd3e9fef592078777fde19f124fe16ae93e403","unresolved":false,"context_lines":[{"line_number":39,"context_line":"setenv \u003d"},{"line_number":40,"context_line":"    {[testenv]setenv}"},{"line_number":41,"context_line":"commands \u003d"},{"line_number":42,"context_line":"    stestr run --black-regex \".tests.unit\" \u0027{posargs}\u0027"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"[testenv:docs]"},{"line_number":45,"context_line":"deps \u003d"}],"source_content_type":"text/x-properties","patch_set":3,"id":"9fdfeff1_f2a53904","line":42,"range":{"start_line":42,"start_character":4,"end_line":42,"end_character":54},"in_reply_to":"9fdfeff1_3473b650","updated":"2019-02-25 19:38:28.000000000","message":"i might revers teh order of these in the file if i respin but\nsure i can make the equivalent change.","commit_id":"5ab2ee6ed08bfd2abc5aac5664c7dd520e400db8"}]}
