)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"288db709981205744f8e684e4e4ed23763899a1f","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Snapshot manage/unmanage APIs are using the HTTPUnprocessableEntity"},{"line_number":10,"context_line":"exception (error 422), but according to the guidelines, this should not"},{"line_number":11,"context_line":"be used. This patch changes them to HTTPBadRequest."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Closes-bug: #1606670"},{"line_number":14,"context_line":"Change-Id: I124a569938d1ca06ce5234c7d0bf26ffbad60e73"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"dada55a8_090b37d7","line":12,"updated":"2016-07-26 19:25:03.000000000","message":"I believe this deserves APIImpact flag","commit_id":"1827d02b976031a362e353736148f79c5887b215"},{"author":{"_account_id":17097,"name":"Tiago Pasqualini da Silva","email":"t.pasqualini@luizalabs.com","username":"tiago.pasqualini"},"change_message_id":"4156b764f76c761e2f28f57757baac7353e05e7c","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Snapshot manage/unmanage APIs are using the HTTPUnprocessableEntity"},{"line_number":10,"context_line":"exception (error 422), but according to the guidelines, this should not"},{"line_number":11,"context_line":"be used. This patch changes them to HTTPBadRequest."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Closes-bug: #1606670"},{"line_number":14,"context_line":"Change-Id: I124a569938d1ca06ce5234c7d0bf26ffbad60e73"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"dada55a8_6923d358","line":12,"in_reply_to":"dada55a8_090b37d7","updated":"2016-07-26 19:25:47.000000000","message":"You are correct! :)","commit_id":"1827d02b976031a362e353736148f79c5887b215"}],"manila/api/v2/share_snapshots.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"361bfa184ab46430c94d82f2ecd59fa75b816599","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        \"\"\""},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"        context \u003d req.environ[\u0027manila.context\u0027]"},{"line_number":102,"context_line":"        snapshot_data \u003d self._validate_manage_parameters(context, body)"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"        # NOTE(vponomaryov): compatibility actions are required between API and"},{"line_number":105,"context_line":"        # DB layers for \u0027name\u0027 and \u0027description\u0027 API params that are"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_5e130365","line":102,"range":{"start_line":102,"start_character":24,"end_line":102,"end_character":71},"updated":"2016-07-27 12:41:01.000000000","message":"needs to change?","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"},{"author":{"_account_id":17097,"name":"Tiago Pasqualini da Silva","email":"t.pasqualini@luizalabs.com","username":"tiago.pasqualini"},"change_message_id":"ddbb6332539c8df3ee8188f8cf9551f2dc42273a","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        \"\"\""},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"        context \u003d req.environ[\u0027manila.context\u0027]"},{"line_number":102,"context_line":"        snapshot_data \u003d self._validate_manage_parameters(context, body)"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"        # NOTE(vponomaryov): compatibility actions are required between API and"},{"line_number":105,"context_line":"        # DB layers for \u0027name\u0027 and \u0027description\u0027 API params that are"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_094af354","line":102,"range":{"start_line":102,"start_character":24,"end_line":102,"end_character":71},"in_reply_to":"dada55a8_5e130365","updated":"2016-07-27 12:46:31.000000000","message":"Yes :|","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"361bfa184ab46430c94d82f2ecd59fa75b816599","unresolved":false,"context_lines":[{"line_number":131,"context_line":"        return self._view_builder.detail(req, snapshot_ref)"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"    def _validate_manage_parameters(self, context, body, fix_response):"},{"line_number":134,"context_line":"        if not (body and self.is_valid_body(body, \u0027snapshot\u0027)):"},{"line_number":135,"context_line":"            msg \u003d _(\"Snapshot entity not found in request body.\")"},{"line_number":136,"context_line":"            if fix_response:"},{"line_number":137,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_fe7f57a8","line":134,"range":{"start_line":134,"start_character":0,"end_line":134,"end_character":8},"updated":"2016-07-27 12:41:01.000000000","message":"exc_response \u003d exc.HTTPBadRequest if fix_response else exc.HTTPUnprocessableEntity","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"},{"author":{"_account_id":17097,"name":"Tiago Pasqualini da Silva","email":"t.pasqualini@luizalabs.com","username":"tiago.pasqualini"},"change_message_id":"ddbb6332539c8df3ee8188f8cf9551f2dc42273a","unresolved":false,"context_lines":[{"line_number":131,"context_line":"        return self._view_builder.detail(req, snapshot_ref)"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"    def _validate_manage_parameters(self, context, body, fix_response):"},{"line_number":134,"context_line":"        if not (body and self.is_valid_body(body, \u0027snapshot\u0027)):"},{"line_number":135,"context_line":"            msg \u003d _(\"Snapshot entity not found in request body.\")"},{"line_number":136,"context_line":"            if fix_response:"},{"line_number":137,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_a9dac775","line":134,"range":{"start_line":134,"start_character":0,"end_line":134,"end_character":8},"in_reply_to":"dada55a8_fe7f57a8","updated":"2016-07-27 12:46:31.000000000","message":"Thanks, looks cleaner indeed.","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"361bfa184ab46430c94d82f2ecd59fa75b816599","unresolved":false,"context_lines":[{"line_number":133,"context_line":"    def _validate_manage_parameters(self, context, body, fix_response):"},{"line_number":134,"context_line":"        if not (body and self.is_valid_body(body, \u0027snapshot\u0027)):"},{"line_number":135,"context_line":"            msg \u003d _(\"Snapshot entity not found in request body.\")"},{"line_number":136,"context_line":"            if fix_response:"},{"line_number":137,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg)"},{"line_number":138,"context_line":"            else:"},{"line_number":139,"context_line":"                raise exc.HTTPUnprocessableEntity(explanation\u003dmsg)"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"        required_parameters \u003d (\u0027share_id\u0027, \u0027provider_location\u0027)"},{"line_number":142,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_9e5bbb53","line":139,"range":{"start_line":136,"start_character":12,"end_line":139,"end_character":66},"updated":"2016-07-27 12:41:01.000000000","message":"raise exc_response(explanation\u003dmsg)","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"361bfa184ab46430c94d82f2ecd59fa75b816599","unresolved":false,"context_lines":[{"line_number":145,"context_line":"        for parameter in required_parameters:"},{"line_number":146,"context_line":"            if parameter not in data:"},{"line_number":147,"context_line":"                msg \u003d _(\"Required parameter %s not found.\") % parameter"},{"line_number":148,"context_line":"                if fix_response:"},{"line_number":149,"context_line":"                    raise exc.HTTPBadRequest(explanation\u003dmsg)"},{"line_number":150,"context_line":"                else:"},{"line_number":151,"context_line":"                    raise exc.HTTPUnprocessableEntity(explanation\u003dmsg)"},{"line_number":152,"context_line":"            if not data.get(parameter):"},{"line_number":153,"context_line":"                msg \u003d _(\"Required parameter %s is empty.\") % parameter"},{"line_number":154,"context_line":"                if fix_response:"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_5e3ca3e0","line":151,"range":{"start_line":148,"start_character":16,"end_line":151,"end_character":70},"updated":"2016-07-27 12:41:01.000000000","message":"raise exc_response(explanation\u003dmsg)","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"361bfa184ab46430c94d82f2ecd59fa75b816599","unresolved":false,"context_lines":[{"line_number":151,"context_line":"                    raise exc.HTTPUnprocessableEntity(explanation\u003dmsg)"},{"line_number":152,"context_line":"            if not data.get(parameter):"},{"line_number":153,"context_line":"                msg \u003d _(\"Required parameter %s is empty.\") % parameter"},{"line_number":154,"context_line":"                if fix_response:"},{"line_number":155,"context_line":"                    raise exc.HTTPBadRequest(explanation\u003dmsg)"},{"line_number":156,"context_line":"                else:"},{"line_number":157,"context_line":"                    raise exc.HTTPUnprocessableEntity(explanation\u003dmsg)"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"        return data"},{"line_number":160,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_de289399","line":157,"range":{"start_line":154,"start_character":0,"end_line":157,"end_character":70},"updated":"2016-07-27 12:41:01.000000000","message":"raise exc_response(explanation\u003dmsg)","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"212f462c7692903ad7d4fcd08865a5d975b5e45e","unresolved":false,"context_lines":[{"line_number":181,"context_line":"    @wsgi.Controller.api_version(\u00272.12\u0027)"},{"line_number":182,"context_line":"    @wsgi.response(202)"},{"line_number":183,"context_line":"    def manage(self, req, body):"},{"line_number":184,"context_line":"        if req.api_version_request \u003c api_version.APIVersionRequest(\u00272.19\u0027):"},{"line_number":185,"context_line":"            return self._manage(req, body)"},{"line_number":186,"context_line":"        else:"},{"line_number":187,"context_line":"            return self._manage(req, body)"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"    @wsgi.Controller.api_version(\u00272.12\u0027)"},{"line_number":190,"context_line":"    @wsgi.action(\u0027unmanage\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_3eb8cfc7","line":187,"range":{"start_line":184,"start_character":8,"end_line":187,"end_character":42},"updated":"2016-07-27 12:31:41.000000000","message":"Both the same.","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"},{"author":{"_account_id":17097,"name":"Tiago Pasqualini da Silva","email":"t.pasqualini@luizalabs.com","username":"tiago.pasqualini"},"change_message_id":"ddbb6332539c8df3ee8188f8cf9551f2dc42273a","unresolved":false,"context_lines":[{"line_number":181,"context_line":"    @wsgi.Controller.api_version(\u00272.12\u0027)"},{"line_number":182,"context_line":"    @wsgi.response(202)"},{"line_number":183,"context_line":"    def manage(self, req, body):"},{"line_number":184,"context_line":"        if req.api_version_request \u003c api_version.APIVersionRequest(\u00272.19\u0027):"},{"line_number":185,"context_line":"            return self._manage(req, body)"},{"line_number":186,"context_line":"        else:"},{"line_number":187,"context_line":"            return self._manage(req, body)"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"    @wsgi.Controller.api_version(\u00272.12\u0027)"},{"line_number":190,"context_line":"    @wsgi.action(\u0027unmanage\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_6921ef9d","line":187,"range":{"start_line":184,"start_character":8,"end_line":187,"end_character":42},"in_reply_to":"dada55a8_3eb8cfc7","updated":"2016-07-27 12:46:31.000000000","message":"I am not a smart man.","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"}],"manila_tempest_tests/tests/api/admin/test_snapshot_manage_negative.py":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"212f462c7692903ad7d4fcd08865a5d975b5e45e","unresolved":false,"context_lines":[{"line_number":77,"context_line":"    @test.attr(type\u003d[base.TAG_NEGATIVE, base.TAG_API_WITH_BACKEND])"},{"line_number":78,"context_line":"    @ddt.data(\u00272.12\u0027, \u00272.19\u0027)"},{"line_number":79,"context_line":"    def test_manage_invalid_parameters(self, version):"},{"line_number":80,"context_line":"        if utils.is_microversion_eq(version, \u00272.12\u0027):"},{"line_number":81,"context_line":"            expected_exception \u003d lib_exc.UnprocessableEntity"},{"line_number":82,"context_line":"        else:"},{"line_number":83,"context_line":"            expected_exception \u003d lib_exc.BadRequest"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_debd33b2","line":80,"range":{"start_line":80,"start_character":8,"end_line":80,"end_character":53},"updated":"2016-07-27 12:31:41.000000000","message":"If less than 2.19\n\nAlso, you should check that versions you use are enabled.","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"},{"author":{"_account_id":17097,"name":"Tiago Pasqualini da Silva","email":"t.pasqualini@luizalabs.com","username":"tiago.pasqualini"},"change_message_id":"ddbb6332539c8df3ee8188f8cf9551f2dc42273a","unresolved":false,"context_lines":[{"line_number":77,"context_line":"    @test.attr(type\u003d[base.TAG_NEGATIVE, base.TAG_API_WITH_BACKEND])"},{"line_number":78,"context_line":"    @ddt.data(\u00272.12\u0027, \u00272.19\u0027)"},{"line_number":79,"context_line":"    def test_manage_invalid_parameters(self, version):"},{"line_number":80,"context_line":"        if utils.is_microversion_eq(version, \u00272.12\u0027):"},{"line_number":81,"context_line":"            expected_exception \u003d lib_exc.UnprocessableEntity"},{"line_number":82,"context_line":"        else:"},{"line_number":83,"context_line":"            expected_exception \u003d lib_exc.BadRequest"}],"source_content_type":"text/x-python","patch_set":3,"id":"dada55a8_69cbafa4","line":80,"range":{"start_line":80,"start_character":8,"end_line":80,"end_character":53},"in_reply_to":"dada55a8_debd33b2","updated":"2016-07-27 12:46:31.000000000","message":"Done","commit_id":"6b4cf9b69e61f6eff145de6bbb85cfede57b72d6"}]}
