)]}'
{".travis.yml":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"227604c1c0b4d949f6c9008899d3256c7812b402","unresolved":false,"context_lines":[{"line_number":1,"context_line":"language: python"},{"line_number":2,"context_line":"python:"},{"line_number":3,"context_line":"  - \"2.7\""},{"line_number":4,"context_line":"  - \"3.2\""},{"line_number":5,"context_line":"  - \"3.3\""},{"line_number":6,"context_line":"  - \"pypy\""},{"line_number":7,"context_line":"install:"},{"line_number":8,"context_line":"  - pip install flake8 --use-mirrors"},{"line_number":9,"context_line":"  - pip install nose --use-mirrors"},{"line_number":10,"context_line":"  - pip install -q . --use-mirrors"},{"line_number":11,"context_line":"before_script:"},{"line_number":12,"context_line":"  - flake8 stevedore setup.py"},{"line_number":13,"context_line":"script: nosetests stevedore"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"ff570b3c_ae1fe858","line":13,"range":{"start_line":1,"start_character":0,"end_line":13,"end_character":27},"updated":"2020-06-05 09:38:44.000000000","message":"Hum I\u0027m not sure but I think we can drop this file, I\u0027m not aware that we used travis on stevedore, I think we inherit this file from the previous life (outside the openstack scope) of this project.\n\nAnyway leave this one for now and we can remove this one through a follow up patch.","commit_id":"b124914a7bfad4e38e5e150621032d53bc59ee49"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"fc8166d17084dabe7f48a09dcad450cb262ec7be","unresolved":false,"context_lines":[{"line_number":1,"context_line":"language: python"},{"line_number":2,"context_line":"python:"},{"line_number":3,"context_line":"  - \"2.7\""},{"line_number":4,"context_line":"  - \"3.2\""},{"line_number":5,"context_line":"  - \"3.3\""},{"line_number":6,"context_line":"  - \"pypy\""},{"line_number":7,"context_line":"install:"},{"line_number":8,"context_line":"  - pip install flake8 --use-mirrors"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"ff570b3c_9f068d1b","line":5,"range":{"start_line":3,"start_character":0,"end_line":5,"end_character":9},"updated":"2020-06-05 14:12:30.000000000","message":"Looks like travis probably needs to be updated to actually test the runtimes we support now.\n\nIs travis used somehow though? Maybe this file should actually just be removed.","commit_id":"34b9a130495e0b327a1516da483af3d217ea8f51"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"9ab0195785cf698915428d8c21dde22224143a25","unresolved":false,"context_lines":[{"line_number":1,"context_line":"language: python"},{"line_number":2,"context_line":"python:"},{"line_number":3,"context_line":"  - \"2.7\""},{"line_number":4,"context_line":"  - \"3.2\""},{"line_number":5,"context_line":"  - \"3.3\""},{"line_number":6,"context_line":"  - \"pypy\""},{"line_number":7,"context_line":"install:"},{"line_number":8,"context_line":"  - pip install flake8 --use-mirrors"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"ff570b3c_8338e4ee","line":5,"range":{"start_line":3,"start_character":0,"end_line":5,"end_character":9},"in_reply_to":"ff570b3c_9f068d1b","updated":"2020-06-08 08:55:49.000000000","message":"No idea... IMO we could remove this file","commit_id":"34b9a130495e0b327a1516da483af3d217ea8f51"}],"stevedore/tests/test_callback.py":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"227604c1c0b4d949f6c9008899d3256c7812b402","unresolved":false,"context_lines":[{"line_number":13,"context_line":"\"\"\"Tests for failure loading callback"},{"line_number":14,"context_line":"\"\"\""},{"line_number":15,"context_line":"from testtools.matchers import GreaterThan"},{"line_number":16,"context_line":"from unittest import mock"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from stevedore import extension"},{"line_number":19,"context_line":"from stevedore import named"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_8b3bf6e7","line":16,"range":{"start_line":16,"start_character":0,"end_line":16,"end_character":25},"updated":"2020-06-05 09:38:44.000000000","message":"Same things I think it should be imported first as usual with the stdlib\u0027s imports.","commit_id":"b124914a7bfad4e38e5e150621032d53bc59ee49"}],"stevedore/tests/test_extension.py":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"227604c1c0b4d949f6c9008899d3256c7812b402","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import operator"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from unittest import mock"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from stevedore import exception"},{"line_number":21,"context_line":"from stevedore import extension"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_ab387aed","line":18,"range":{"start_line":18,"start_character":0,"end_line":18,"end_character":25},"updated":"2020-06-05 09:38:44.000000000","message":"Same things I think it should be imported first as usual with the stdlib\u0027s imports.","commit_id":"b124914a7bfad4e38e5e150621032d53bc59ee49"}],"stevedore/tests/test_named.py":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"227604c1c0b4d949f6c9008899d3256c7812b402","unresolved":false,"context_lines":[{"line_number":13,"context_line":"from stevedore import named"},{"line_number":14,"context_line":"from stevedore.tests import utils"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from unittest import mock"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class TestNamed(utils.TestCase):"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_cb5b2e51","line":16,"range":{"start_line":16,"start_character":0,"end_line":16,"end_character":25},"updated":"2020-06-05 09:38:44.000000000","message":"Same things I think it should be imported first as usual with the stdlib\u0027s imports.","commit_id":"b124914a7bfad4e38e5e150621032d53bc59ee49"}],"stevedore/tests/test_sphinxext.py":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"227604c1c0b4d949f6c9008899d3256c7812b402","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from stevedore import sphinxext"},{"line_number":17,"context_line":"from stevedore.tests import utils"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from unittest import mock"},{"line_number":20,"context_line":"import pkg_resources"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_0b79a6c3","line":19,"range":{"start_line":19,"start_character":0,"end_line":19,"end_character":25},"updated":"2020-06-05 09:38:44.000000000","message":"Same things I think linters should warn about the import order here.","commit_id":"b124914a7bfad4e38e5e150621032d53bc59ee49"}],"stevedore/tests/test_test_manager.py":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"227604c1c0b4d949f6c9008899d3256c7812b402","unresolved":false,"context_lines":[{"line_number":10,"context_line":"#  License for the specific language governing permissions and limitations"},{"line_number":11,"context_line":"#  under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"from unittest.mock import Mock, sentinel"},{"line_number":14,"context_line":"from stevedore import (ExtensionManager, NamedExtensionManager, HookManager,"},{"line_number":15,"context_line":"                       DriverManager, EnabledExtensionManager)"},{"line_number":16,"context_line":"from stevedore.dispatch import (DispatchExtensionManager,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_cb720ee3","line":13,"range":{"start_line":13,"start_character":1,"end_line":13,"end_character":40},"updated":"2020-06-05 09:38:44.000000000","message":"I wondering why linters doesn\u0027t warn about the missing empty line below","commit_id":"b124914a7bfad4e38e5e150621032d53bc59ee49"}]}
