)]}'
{"manila/tests/share/drivers/dummy.py":[{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"3afb3b493d6f12f8f65816a0368a7c784716db1a","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    ),"},{"line_number":56,"context_line":"    cfg.DictOpt("},{"line_number":57,"context_line":"        \"dummy_driver_driver_methods_delays\","},{"line_number":58,"context_line":"        help\u003d\"It is dictionary-like config option, that sonsists of \""},{"line_number":59,"context_line":"             \"driver method names as keys and integer/float values that are \""},{"line_number":60,"context_line":"             \"time delay in seconds. Optional.\","},{"line_number":61,"context_line":"        default\u003d{"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a77a97e_a311cb5f","line":58,"range":{"start_line":58,"start_character":56,"end_line":58,"end_character":64},"updated":"2016-11-22 09:43:48.000000000","message":"consist","commit_id":"0849a99cf19f00d3e016c4ce09cb50629ce0e12c"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f21c6528f7c4210fc90203692bdf0c33cb0002f4","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    ),"},{"line_number":56,"context_line":"    cfg.DictOpt("},{"line_number":57,"context_line":"        \"dummy_driver_driver_methods_delays\","},{"line_number":58,"context_line":"        help\u003d\"It is dictionary-like config option, that sonsists of \""},{"line_number":59,"context_line":"             \"driver method names as keys and integer/float values that are \""},{"line_number":60,"context_line":"             \"time delay in seconds. Optional.\","},{"line_number":61,"context_line":"        default\u003d{"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a77a97e_5e629017","line":58,"range":{"start_line":58,"start_character":56,"end_line":58,"end_character":64},"in_reply_to":"7a77a97e_a311cb5f","updated":"2016-11-22 09:55:23.000000000","message":"Done","commit_id":"0849a99cf19f00d3e016c4ce09cb50629ce0e12c"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"f63d4296820a5151e31426d1d8d7159ebdd35cba","unresolved":false,"context_lines":[{"line_number":115,"context_line":"        self.migration_progress \u003d {}"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"    def _verify_configuration(self):"},{"line_number":118,"context_line":"        default_driver_method_delay \u003d self.configuration.safe_get("},{"line_number":119,"context_line":"            \"dummy_driver_default_driver_method_delay\")"},{"line_number":120,"context_line":"        allowed_driver_methods \u003d [m for m in dir(self) if m[0] !\u003d \u0027_\u0027]"},{"line_number":121,"context_line":"        allowed_driver_methods.extend(["}],"source_content_type":"text/x-python","patch_set":1,"id":"7a77a97e_34a7cc50","line":118,"updated":"2016-11-21 21:44:00.000000000","message":"as you see from the pep report this variable isn\u0027t being used","commit_id":"0849a99cf19f00d3e016c4ce09cb50629ce0e12c"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f21c6528f7c4210fc90203692bdf0c33cb0002f4","unresolved":false,"context_lines":[{"line_number":115,"context_line":"        self.migration_progress \u003d {}"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"    def _verify_configuration(self):"},{"line_number":118,"context_line":"        default_driver_method_delay \u003d self.configuration.safe_get("},{"line_number":119,"context_line":"            \"dummy_driver_default_driver_method_delay\")"},{"line_number":120,"context_line":"        allowed_driver_methods \u003d [m for m in dir(self) if m[0] !\u003d \u0027_\u0027]"},{"line_number":121,"context_line":"        allowed_driver_methods.extend(["}],"source_content_type":"text/x-python","patch_set":1,"id":"7a77a97e_e325830a","line":118,"in_reply_to":"7a77a97e_34a7cc50","updated":"2016-11-22 09:55:23.000000000","message":"Done","commit_id":"0849a99cf19f00d3e016c4ce09cb50629ce0e12c"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"3afb3b493d6f12f8f65816a0368a7c784716db1a","unresolved":false,"context_lines":[{"line_number":315,"context_line":"            pools[0][\"replication_type\"] \u003d \"readable\""},{"line_number":316,"context_line":"        return pools"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"    def _update_share_stats(self, data\u003dNone):"},{"line_number":319,"context_line":"        \"\"\"Retrieve stats info from share group.\"\"\""},{"line_number":320,"context_line":"        data \u003d {"},{"line_number":321,"context_line":"            \"share_backend_name\": self.backend_name,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a77a97e_7ee10cd0","line":318,"updated":"2016-11-22 09:43:48.000000000","message":"missing @slow_me_down?","commit_id":"0849a99cf19f00d3e016c4ce09cb50629ce0e12c"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f21c6528f7c4210fc90203692bdf0c33cb0002f4","unresolved":false,"context_lines":[{"line_number":315,"context_line":"            pools[0][\"replication_type\"] \u003d \"readable\""},{"line_number":316,"context_line":"        return pools"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"    def _update_share_stats(self, data\u003dNone):"},{"line_number":319,"context_line":"        \"\"\"Retrieve stats info from share group.\"\"\""},{"line_number":320,"context_line":"        data \u003d {"},{"line_number":321,"context_line":"            \"share_backend_name\": self.backend_name,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a77a97e_d9123a58","line":318,"in_reply_to":"7a77a97e_7ee10cd0","updated":"2016-11-22 09:55:23.000000000","message":"Done","commit_id":"0849a99cf19f00d3e016c4ce09cb50629ce0e12c"},{"author":{"_account_id":17097,"name":"Tiago Pasqualini da Silva","email":"t.pasqualini@luizalabs.com","username":"tiago.pasqualini"},"change_message_id":"9b8993377a39926db8adaa920611308c077d9daa","unresolved":false,"context_lines":[{"line_number":117,"context_line":"            \"share_backend_name\") or \"DummyDriver\""},{"line_number":118,"context_line":"        self.migration_progress \u003d {}"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"    def _verify_configuration(self):"},{"line_number":121,"context_line":"        allowed_driver_methods \u003d [m for m in dir(self) if m[0] !\u003d \u0027_\u0027]"},{"line_number":122,"context_line":"        allowed_driver_methods.extend(["},{"line_number":123,"context_line":"            \"_setup_server\","},{"line_number":124,"context_line":"            \"_teardown_server\","},{"line_number":125,"context_line":"            \"_get_pools_info\","},{"line_number":126,"context_line":"            \"_update_share_stats\","},{"line_number":127,"context_line":"        ])"},{"line_number":128,"context_line":"        for k, v in self.configuration.safe_get("},{"line_number":129,"context_line":"                \"dummy_driver_driver_methods_delays\").items():"},{"line_number":130,"context_line":"            if k not in allowed_driver_methods:"},{"line_number":131,"context_line":"                raise exception.BadConfigurationException(reason\u003d("},{"line_number":132,"context_line":"                    \"Dummy driver does not have \u0027%s\u0027 method.\" % k"},{"line_number":133,"context_line":"                ))"},{"line_number":134,"context_line":"            try:"},{"line_number":135,"context_line":"                float(v)"},{"line_number":136,"context_line":"            except (TypeError, ValueError):"},{"line_number":137,"context_line":"                raise exception.BadConfigurationException(reason\u003d("},{"line_number":138,"context_line":"                    \"Wrong value (%(v)s) for \u0027%(k)s\u0027 dummy driver method time \""},{"line_number":139,"context_line":"                    \"delay is set in \u0027dummy_driver_driver_methods_delays\u0027 \""},{"line_number":140,"context_line":"                    \"config option.\" % {\"k\": k, \"v\": v}"},{"line_number":141,"context_line":"                ))"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"    def _get_share_name(self, share):"},{"line_number":144,"context_line":"        return \"share_%(s_id)s_%(si_id)s\" % {"}],"source_content_type":"text/x-python","patch_set":2,"id":"7a77a97e_55f418ce","line":141,"range":{"start_line":120,"start_character":0,"end_line":141,"end_character":18},"updated":"2016-11-22 15:52:58.000000000","message":"Values for `do_setup`, `get_network_allocations_number`, `get_admin_network_allocations_number` and `get_share_server_pools` will pass this verification and the methods are not decorated. Either this should fail when configuring a delay for them or they should be decorated.","commit_id":"88dc78f9a44e4399b9da80158b52941709ef42f2"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"a38228c5123ad7b9c9ceb4118f1345ac74412653","unresolved":false,"context_lines":[{"line_number":117,"context_line":"            \"share_backend_name\") or \"DummyDriver\""},{"line_number":118,"context_line":"        self.migration_progress \u003d {}"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"    def _verify_configuration(self):"},{"line_number":121,"context_line":"        allowed_driver_methods \u003d [m for m in dir(self) if m[0] !\u003d \u0027_\u0027]"},{"line_number":122,"context_line":"        allowed_driver_methods.extend(["},{"line_number":123,"context_line":"            \"_setup_server\","},{"line_number":124,"context_line":"            \"_teardown_server\","},{"line_number":125,"context_line":"            \"_get_pools_info\","},{"line_number":126,"context_line":"            \"_update_share_stats\","},{"line_number":127,"context_line":"        ])"},{"line_number":128,"context_line":"        for k, v in self.configuration.safe_get("},{"line_number":129,"context_line":"                \"dummy_driver_driver_methods_delays\").items():"},{"line_number":130,"context_line":"            if k not in allowed_driver_methods:"},{"line_number":131,"context_line":"                raise exception.BadConfigurationException(reason\u003d("},{"line_number":132,"context_line":"                    \"Dummy driver does not have \u0027%s\u0027 method.\" % k"},{"line_number":133,"context_line":"                ))"},{"line_number":134,"context_line":"            try:"},{"line_number":135,"context_line":"                float(v)"},{"line_number":136,"context_line":"            except (TypeError, ValueError):"},{"line_number":137,"context_line":"                raise exception.BadConfigurationException(reason\u003d("},{"line_number":138,"context_line":"                    \"Wrong value (%(v)s) for \u0027%(k)s\u0027 dummy driver method time \""},{"line_number":139,"context_line":"                    \"delay is set in \u0027dummy_driver_driver_methods_delays\u0027 \""},{"line_number":140,"context_line":"                    \"config option.\" % {\"k\": k, \"v\": v}"},{"line_number":141,"context_line":"                ))"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"    def _get_share_name(self, share):"},{"line_number":144,"context_line":"        return \"share_%(s_id)s_%(si_id)s\" % {"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a74a57a_395eebe9","line":141,"range":{"start_line":120,"start_character":0,"end_line":141,"end_character":18},"in_reply_to":"7a77a97e_55f418ce","updated":"2016-11-23 14:06:06.000000000","message":"Done","commit_id":"88dc78f9a44e4399b9da80158b52941709ef42f2"}]}
