)]}'
{"setup.cfg":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"b6336cd783089a3f6343254395b9cbaf1b456f8b","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    init \u003d tempest.cmd.init:TempestInit"},{"line_number":37,"context_line":"    cleanup \u003d tempest.cmd.cleanup:TempestCleanup"},{"line_number":38,"context_line":"    run-stress \u003d tempest.cmd.run_stress:TempestRunStress"},{"line_number":39,"context_line":"    tempest-list-plugins \u003d tempest.cmd.list_plugins:TempestListPlugins"},{"line_number":40,"context_line":"oslo.config.opts \u003d"},{"line_number":41,"context_line":"    tempest.config \u003d tempest.config:list_opts"},{"line_number":42,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":4,"id":"fa69d971_a2d4e446","line":39,"range":{"start_line":39,"start_character":4,"end_line":39,"end_character":11},"updated":"2016-01-04 16:28:32.000000000","message":"drop tempest from the command name, this will result in the call being \u0027tempest tempest-list-plugins\u0027","commit_id":"27596ec52d1b4e0526a0be3d146ad6d10b9d47de"}],"tempest/cmd/list_plugins.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"3a983fdcfaaeca0a31cba1c88cde3ed5e69d8818","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    def get_description(self):"},{"line_number":35,"context_line":"        return \u0027List all tempest plugins\u0027"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    def _list_plugins():"},{"line_number":38,"context_line":"        plugins \u003d stevedore.ExtensionManager(\u0027tempest.test_plugins\u0027)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"        output \u003d prettytable.PrettyTable([\"Name\", \"EntryPoint\"])"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa69d971_ee6f1729","line":37,"range":{"start_line":37,"start_character":21,"end_line":37,"end_character":24},"updated":"2016-01-04 23:55:19.000000000","message":"don\u0027t you need self here?","commit_id":"07ad427643b439576dd070cf64f04e15821be6b1"},{"author":{"_account_id":9364,"name":"Stephen Lowrie","email":"stephen.lowrie@rackspace.com","username":"step6829"},"change_message_id":"85597f5846278c2f69c94071dbff75e337c80d4e","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    def get_description(self):"},{"line_number":35,"context_line":"        return \u0027List all tempest plugins\u0027"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    def _list_plugins():"},{"line_number":38,"context_line":"        plugins \u003d stevedore.ExtensionManager(\u0027tempest.test_plugins\u0027)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"        output \u003d prettytable.PrettyTable([\"Name\", \"EntryPoint\"])"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa69d971_cee01399","line":37,"range":{"start_line":37,"start_character":21,"end_line":37,"end_character":24},"in_reply_to":"fa69d971_ee6f1729","updated":"2016-01-04 23:57:54.000000000","message":"Ah yes, sorry had to switch computers when writing this and must have missed this when re-writing.","commit_id":"07ad427643b439576dd070cf64f04e15821be6b1"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"f58a4e272e50dcd457cf386298aab42e794fae0f","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        return \u0027List all tempest plugins\u0027"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    def _list_plugins(self):"},{"line_number":38,"context_line":"        plugins \u003d stevedore.ExtensionManager(\u0027tempest.test_plugins\u0027)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"        output \u003d prettytable.PrettyTable([\"Name\", \"EntryPoint\"])"},{"line_number":41,"context_line":"        for plugin in plugins.extensions:"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa69d971_061f4b5c","line":38,"updated":"2016-01-08 01:24:46.000000000","message":"Do you think it would be better to call tempest.test_discover.plugin.TempestPluginManager here instead of stevedore directly?","commit_id":"9d00fbf57bf70145ea6e14f10d44e17bccea6950"}]}
