)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14377,"name":"Apoorva","email":"apps.desh@gmail.com","username":"apoorvad"},"change_message_id":"284823a84836330ac8b8f56c7170003910dd0c8a","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Cinder XML API is not tested by Tempest about one year."},{"line_number":10,"context_line":"We don\u0027t know if it works or not."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Implements blueprint: remove-xml-api"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: If98db25f1f4032725444c3959acb9aad8f869802"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7a2fa921_87681489","line":12,"updated":"2015-10-06 19:27:42.000000000","message":"We should have APIImpact keyword","commit_id":"43ff88f6de8b0b3f592e0d1be208135b956c9f34"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"e9942b2440cae67d7b102dccfa9a6e8a39fb3cf6","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Cinder XML API is not tested by Tempest about one year."},{"line_number":10,"context_line":"We don\u0027t know if it works or not."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Implements blueprint: remove-xml-api"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: If98db25f1f4032725444c3959acb9aad8f869802"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7a2fa921_e7e788e2","line":12,"in_reply_to":"7a2fa921_87681489","updated":"2015-10-06 19:35:00.000000000","message":"Done","commit_id":"43ff88f6de8b0b3f592e0d1be208135b956c9f34"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"6d521a5e98bebfd791099d20794f65086da418bb","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Remove XML API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Cinder XML API is not tested by Tempest about one year."},{"line_number":10,"context_line":"We don\u0027t know if it works or not. It was depricated in"},{"line_number":11,"context_line":"Mitaka release."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"fa0719c6_c0a604ad","line":9,"updated":"2016-03-24 10:45:05.000000000","message":"Missing \"for\"","commit_id":"cd4913570e38db017b35ada9e7a30feb76f2ba67"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"6d521a5e98bebfd791099d20794f65086da418bb","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Remove XML API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Cinder XML API is not tested by Tempest about one year."},{"line_number":10,"context_line":"We don\u0027t know if it works or not. It was depricated in"},{"line_number":11,"context_line":"Mitaka release."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implements blueprint: remove-xml-api"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"fa0719c6_20bc20ba","line":10,"range":{"start_line":10,"start_character":41,"end_line":10,"end_character":51},"updated":"2016-03-24 10:45:05.000000000","message":"s/depricated/deprecated","commit_id":"cd4913570e38db017b35ada9e7a30feb76f2ba67"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"afa1fdd1037183b6ec0e1bc63d912277d4f5fcfb","unresolved":false,"context_lines":[{"line_number":13,"context_line":"Implements blueprint: remove-xml-api"},{"line_number":14,"context_line":"APIImpact"},{"line_number":15,"context_line":"DocImpact"},{"line_number":16,"context_line":"UpgradeImpact"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: If98db25f1f4032725444c3959acb9aad8f869802"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"1a122d0e_596471e4","line":16,"updated":"2016-04-21 17:12:05.000000000","message":"We don\u0027t really need UpgradeImpact anymore since we capture the release notes right with the patchset. But doesn\u0027t hurt.","commit_id":"c042a05ac3872494f3a0924ebb0561e1e33a2d1c"}],"cinder/api/extensions.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"6d521a5e98bebfd791099d20794f65086da418bb","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    # The alias for the extension, e.g., \u0027FOXNSOX\u0027"},{"line_number":50,"context_line":"    alias \u003d None"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    # Description comes from the docstring for the class"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    # The XML namespace for the extension, e.g.,"},{"line_number":55,"context_line":"    # \u0027http://www.fox.in.socks/api/ext/pie/v1.0\u0027"},{"line_number":56,"context_line":"    namespace \u003d None"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    # The timestamp when the extension was last updated, e.g.,"},{"line_number":59,"context_line":"    # \u00272011-01-22T13:25:27-06:00\u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa0719c6_4066742a","side":"PARENT","line":56,"range":{"start_line":52,"start_character":0,"end_line":56,"end_character":20},"updated":"2016-03-24 10:45:05.000000000","message":"Wait, if you\u0027re removing that, you should also remove all the namespace from descendants of this class.","commit_id":"4fcf249df8c65b4c6124da45c0f66777dfd25380"}],"cinder/tests/unit/api/middleware/test_faults.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"6d521a5e98bebfd791099d20794f65086da418bb","unresolved":false,"context_lines":[{"line_number":92,"context_line":"            self.assertEqual(\"application/json\", response.content_type)"},{"line_number":93,"context_line":"            self.assertEqual(expected, actual)"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    def test_raise(self):"},{"line_number":96,"context_line":"        \"\"\"Ensure the ability to raise :class:`Fault` in WSGI-ified methods.\"\"\""},{"line_number":97,"context_line":"        @webob.dec.wsgify"},{"line_number":98,"context_line":"        def raiser(req):"},{"line_number":99,"context_line":"            raise wsgi.Fault(webob.exc.HTTPNotFound(explanation\u003d\u0027whut?\u0027))"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"        req \u003d webob.Request.blank(\u0027/.xml\u0027)"},{"line_number":102,"context_line":"        resp \u003d req.get_response(raiser)"},{"line_number":103,"context_line":"        self.assertEqual(\"application/xml\", resp.content_type)"},{"line_number":104,"context_line":"        self.assertEqual(404, resp.status_int)"},{"line_number":105,"context_line":"        self.assertIn(b\u0027whut?\u0027, resp.body)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def test_raise_403(self):"},{"line_number":108,"context_line":"        \"\"\"Ensure the ability to raise :class:`Fault` in WSGI-ified methods.\"\"\""},{"line_number":109,"context_line":"        @webob.dec.wsgify"},{"line_number":110,"context_line":"        def raiser(req):"},{"line_number":111,"context_line":"            raise wsgi.Fault(webob.exc.HTTPForbidden(explanation\u003d\u0027whut?\u0027))"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"        req \u003d webob.Request.blank(\u0027/.xml\u0027)"},{"line_number":114,"context_line":"        resp \u003d req.get_response(raiser)"},{"line_number":115,"context_line":"        self.assertEqual(\"application/xml\", resp.content_type)"},{"line_number":116,"context_line":"        self.assertEqual(403, resp.status_int)"},{"line_number":117,"context_line":"        self.assertNotIn(\u0027resizeNotAllowed\u0027, resp.body)"},{"line_number":118,"context_line":"        self.assertIn(b\u0027forbidden\u0027, resp.body)"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"    @mock.patch(\u0027cinder.api.openstack.wsgi.i18n.translate\u0027)"},{"line_number":121,"context_line":"    def test_raise_http_with_localized_explanation(self, mock_translate):"},{"line_number":122,"context_line":"        params \u003d (\u0027blah\u0027, )"},{"line_number":123,"context_line":"        expl \u003d _(\"String with params: %s\") % params"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"        def _mock_translation(msg, locale):"},{"line_number":126,"context_line":"            return \"Mensaje traducido\""},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"        mock_translate.side_effect \u003d _mock_translation"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"        @webob.dec.wsgify"},{"line_number":131,"context_line":"        def raiser(req):"},{"line_number":132,"context_line":"            raise wsgi.Fault(webob.exc.HTTPNotFound(explanation\u003dexpl))"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"        req \u003d webob.Request.blank(\u0027/.xml\u0027)"},{"line_number":135,"context_line":"        resp \u003d req.get_response(raiser)"},{"line_number":136,"context_line":"        self.assertEqual(\"application/xml\", resp.content_type)"},{"line_number":137,"context_line":"        self.assertEqual(404, resp.status_int)"},{"line_number":138,"context_line":"        self.assertIn(b\"Mensaje traducido\", resp.body)"},{"line_number":139,"context_line":"        self.stubs.UnsetAll()"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"    def test_fault_has_status_int(self):"},{"line_number":142,"context_line":"        \"\"\"Ensure the status_int is set correctly on faults.\"\"\""}],"source_content_type":"text/x-python","patch_set":5,"id":"fa0719c6_635aa2f3","side":"PARENT","line":139,"range":{"start_line":95,"start_character":0,"end_line":139,"end_character":29},"updated":"2016-03-24 10:45:05.000000000","message":"Shouldn\u0027t we rewrite these to JSON to avoid losing coverage?","commit_id":"4fcf249df8c65b4c6124da45c0f66777dfd25380"}],"releasenotes/notes/remove-xml-api-392b41f387e60eb1.yaml":[{"author":{"_account_id":170,"name":"Mike Perez","email":"thingee@gmail.com","username":"thingee"},"change_message_id":"7af65842f4e5c5dc18015fc2b14c2afce782f247","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - Remove Cinder XML API"},{"line_number":4,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":11,"id":"7a1b2928_cb0ecb33","line":2,"updated":"2016-04-11 18:00:40.000000000","message":"Change this to upgrade.","commit_id":"03a60dd5014fb9aaac2ee7be43445908156306b1"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"57d862210dcd4132c1c9a29c7127641d330836d1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - Remove Cinder XML API"},{"line_number":4,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":11,"id":"7a1b2928_31b1b090","line":2,"in_reply_to":"7a1b2928_cb0ecb33","updated":"2016-04-11 18:57:56.000000000","message":"Done","commit_id":"03a60dd5014fb9aaac2ee7be43445908156306b1"},{"author":{"_account_id":16308,"name":"Sheel Rana","email":"ranasheel2000@gmail.com","username":"sheel.rana"},"change_message_id":"c7d111e54adfa18f3179bb50947accf37de7388a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - Remove Cinder XML API"},{"line_number":4,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":14,"id":"1a122d0e_e3e4993c","line":3,"range":{"start_line":3,"start_character":0,"end_line":3,"end_character":25},"updated":"2016-04-16 13:03:36.000000000","message":"The XML API has been removed in Newton release.\nCinder supports only JSON API request/response format now.","commit_id":"8adf3be06c42b633a2064d4d8aa3376df9e38c69"}]}
