)]}'
{"rally/plugins/openstack/scenarios/glance/images.py":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"4c98989bba75e6281906f65b0c612aa3cada132e","unresolved":false,"context_lines":[{"line_number":30,"context_line":"    @validation.required_services(consts.Service.GLANCE)"},{"line_number":31,"context_line":"    @validation.required_openstack(users\u003dTrue)"},{"line_number":32,"context_line":"    @scenario.configure(context\u003d{\"cleanup\": [\"glance\"]})"},{"line_number":33,"context_line":"    @types.set(image_location\u003dtypes.FilePathOrUrlType)"},{"line_number":34,"context_line":"    def create_and_list_image(self, container_format,"},{"line_number":35,"context_line":"                              image_location, disk_format, **kwargs):"},{"line_number":36,"context_line":"        \"\"\"Add an image and then list all images."}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_77d83c1e","line":33,"updated":"2015-08-17 17:44:16.000000000","message":"this decorator must be after @scenario.configure (in future this will stop working) \n\nplease keep order: \n\n  @types\n  @validation\n  @scenario.configure","commit_id":"18897c9a278f695360e83272a16a17784f1a01e6"}],"rally/task/types.py":[{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"892b311025c0391f8adbe918b0c71df523368f78","unresolved":false,"context_lines":[{"line_number":362,"context_line":"            head \u003d requests.head(path)"},{"line_number":363,"context_line":"            if head.status_code \u003d\u003d 200:"},{"line_number":364,"context_line":"                return path"},{"line_number":365,"context_line":"            msg \u003d \"URL %s unavailable (code %s)\" % (path, head.status_code)"},{"line_number":366,"context_line":"            raise exceptions.InvalidScenarioArgument(msg)"},{"line_number":367,"context_line":"        except Exception:"},{"line_number":368,"context_line":"            raise exceptions.InvalidScenarioArgument(\"No such file %s\" % path)"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa1b9901_5f939c4f","line":365,"updated":"2015-08-18 16:20:44.000000000","message":"This `msg\u0027 is useless since L367 will catch it and raise another message","commit_id":"66d0e73ce8febf4c865208c58364da3170e08c7d"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"fdda1773cbac98339d977aa9ac2714bfb3ab1bfe","unresolved":false,"context_lines":[{"line_number":362,"context_line":"            head \u003d requests.head(path)"},{"line_number":363,"context_line":"            if head.status_code \u003d\u003d 200:"},{"line_number":364,"context_line":"                return path"},{"line_number":365,"context_line":"            msg \u003d \"URL %s unavailable (code %s)\" % (path, head.status_code)"},{"line_number":366,"context_line":"            raise exceptions.InvalidScenarioArgument(msg)"},{"line_number":367,"context_line":"        except Exception:"},{"line_number":368,"context_line":"            raise exceptions.InvalidScenarioArgument(\"No such file %s\" % path)"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa1b9901_a0938c4e","line":365,"in_reply_to":"fa1b9901_5f939c4f","updated":"2015-08-19 11:22:23.000000000","message":"Done","commit_id":"66d0e73ce8febf4c865208c58364da3170e08c7d"},{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"892b311025c0391f8adbe918b0c71df523368f78","unresolved":false,"context_lines":[{"line_number":364,"context_line":"                return path"},{"line_number":365,"context_line":"            msg \u003d \"URL %s unavailable (code %s)\" % (path, head.status_code)"},{"line_number":366,"context_line":"            raise exceptions.InvalidScenarioArgument(msg)"},{"line_number":367,"context_line":"        except Exception:"},{"line_number":368,"context_line":"            raise exceptions.InvalidScenarioArgument(\"No such file %s\" % path)"},{"line_number":369,"context_line":""},{"line_number":370,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"fa1b9901_5fbabcc1","line":367,"updated":"2015-08-18 16:20:44.000000000","message":"Catching `Exception\u0027 may cause bugs, maybe use something from requests.exceptions ?","commit_id":"66d0e73ce8febf4c865208c58364da3170e08c7d"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"fdda1773cbac98339d977aa9ac2714bfb3ab1bfe","unresolved":false,"context_lines":[{"line_number":364,"context_line":"                return path"},{"line_number":365,"context_line":"            msg \u003d \"URL %s unavailable (code %s)\" % (path, head.status_code)"},{"line_number":366,"context_line":"            raise exceptions.InvalidScenarioArgument(msg)"},{"line_number":367,"context_line":"        except Exception:"},{"line_number":368,"context_line":"            raise exceptions.InvalidScenarioArgument(\"No such file %s\" % path)"},{"line_number":369,"context_line":""},{"line_number":370,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"fa1b9901_409ab064","line":367,"in_reply_to":"fa1b9901_5fbabcc1","updated":"2015-08-19 11:22:23.000000000","message":"Done","commit_id":"66d0e73ce8febf4c865208c58364da3170e08c7d"},{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"65650f2488119cb22fd83eaadcfa362c4bca45a7","unresolved":false,"context_lines":[{"line_number":363,"context_line":"            if head.status_code \u003d\u003d 200:"},{"line_number":364,"context_line":"                return path"},{"line_number":365,"context_line":"            raise exceptions.InvalidScenarioArgument("},{"line_number":366,"context_line":"                msg \u003d \"Url %s unavailable(code %s)\" % (path, head.status_code))"},{"line_number":367,"context_line":"        except requests.exceptions.RequestException as ex:"},{"line_number":368,"context_line":"            raise exceptions.InvalidScenarioArgument("},{"line_number":369,"context_line":"                \"Url error %s (%s)\" % (path, ex))"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa1b9901_0604d047","line":366,"updated":"2015-08-19 12:12:47.000000000","message":"s/msg \u003d /message\u003d/ or even s/msg \u003d //","commit_id":"fd9b807791f65a1a8adc680f9e2d6f8b917b124a"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"a93a47ab9b83a6a9e7f3ca0c8fcb49cfdfcb5d4f","unresolved":false,"context_lines":[{"line_number":363,"context_line":"            if head.status_code \u003d\u003d 200:"},{"line_number":364,"context_line":"                return path"},{"line_number":365,"context_line":"            raise exceptions.InvalidScenarioArgument("},{"line_number":366,"context_line":"                msg \u003d \"Url %s unavailable(code %s)\" % (path, head.status_code))"},{"line_number":367,"context_line":"        except requests.exceptions.RequestException as ex:"},{"line_number":368,"context_line":"            raise exceptions.InvalidScenarioArgument("},{"line_number":369,"context_line":"                \"Url error %s (%s)\" % (path, ex))"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa1b9901_92c78597","line":366,"in_reply_to":"fa1b9901_0604d047","updated":"2015-08-20 10:48:57.000000000","message":"Done","commit_id":"fd9b807791f65a1a8adc680f9e2d6f8b917b124a"}]}
