)]}'
{"nova/api/openstack/__init__.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0ca045339a6df3583c01ae3197440bc9d30406cf","unresolved":false,"context_lines":[{"line_number":76,"context_line":"                              \u0027os-flavor-access\u0027,"},{"line_number":77,"context_line":"                              \u0027server-metadata\u0027,"},{"line_number":78,"context_line":"                              \u0027servers\u0027,"},{"line_number":79,"context_line":"                              \u0027versions\u0027])"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"class FaultWrapper(base_wsgi.Middleware):"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_2a439114","side":"PARENT","line":79,"updated":"2015-08-12 11:00:38.000000000","message":"I think this should be versionsV21\n\nI wonder if we need to rewrite any config for versions to versionsV21?","commit_id":"40cdc2b8ee162951f8d76bd091a408ab2efffd26"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e14b1150b2be38a0843e079e6ac9b4adb456c81e","unresolved":false,"context_lines":[{"line_number":76,"context_line":"                              \u0027os-flavor-access\u0027,"},{"line_number":77,"context_line":"                              \u0027server-metadata\u0027,"},{"line_number":78,"context_line":"                              \u0027servers\u0027,"},{"line_number":79,"context_line":"                              \u0027versions\u0027])"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"class FaultWrapper(base_wsgi.Middleware):"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_155a76f2","side":"PARENT","line":79,"in_reply_to":"1a4dcd0f_2a439114","updated":"2015-08-12 11:14:31.000000000","message":"Ah, I see the name is fine, but I don\u0027t think we should change this bit here.","commit_id":"40cdc2b8ee162951f8d76bd091a408ab2efffd26"}],"nova/api/openstack/compute/legacy_v2/contrib/networks_associate.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"547a3c2f0a0f7bf955900635f28beca30d4aa3f3","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        except NotImplementedError:"},{"line_number":47,"context_line":"            msg \u003d _(\u0027Disassociate host is not implemented by the configured \u0027"},{"line_number":48,"context_line":"                    \u0027Network API\u0027)"},{"line_number":49,"context_line":"            raise common.raise_feature_not_supported(msg\u003dmsg)"},{"line_number":50,"context_line":"        return webob.Response(status_int\u003d202)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    @wsgi.action(\"disassociate_project\")"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_d5d96ef4","line":49,"updated":"2015-08-12 11:34:25.000000000","message":"this is unrelated change also","commit_id":"7f02aff87d9543bd9fa5d9271a5a0c1e501c502f"}],"nova/api/openstack/compute/legacy_v2/contrib/os_networks.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"547a3c2f0a0f7bf955900635f28beca30d4aa3f3","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except NotImplementedError:"},{"line_number":114,"context_line":"            msg \u003d _(\u0027Disassociate network is not implemented by the \u0027"},{"line_number":115,"context_line":"                    \u0027configured Network API\u0027)"},{"line_number":116,"context_line":"            raise common.raise_feature_not_supported(msg\u003dmsg)"},{"line_number":117,"context_line":"        return webob.Response(status_int\u003d202)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    def show(self, req, id):"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_f5e4aaa8","line":116,"updated":"2015-08-12 11:34:25.000000000","message":"this is unrelated change","commit_id":"7f02aff87d9543bd9fa5d9271a5a0c1e501c502f"}],"nova/api/openstack/compute/legacy_v2/servers.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"547a3c2f0a0f7bf955900635f28beca30d4aa3f3","unresolved":false,"context_lines":[{"line_number":918,"context_line":"                e, \u0027changePassword\u0027, id)"},{"line_number":919,"context_line":"        except NotImplementedError:"},{"line_number":920,"context_line":"            msg \u003d _(\"Unable to set password on instance\")"},{"line_number":921,"context_line":"            raise common.raise_feature_not_supported(msg\u003dmsg)"},{"line_number":922,"context_line":"        return webob.Response(status_int\u003d202)"},{"line_number":923,"context_line":""},{"line_number":924,"context_line":"    def _validate_metadata(self, metadata):"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_75f97a4d","line":921,"updated":"2015-08-12 11:34:25.000000000","message":"this is unrelated change.","commit_id":"7f02aff87d9543bd9fa5d9271a5a0c1e501c502f"}],"nova/api/openstack/compute/limits.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"547a3c2f0a0f7bf955900635f28beca30d4aa3f3","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from nova.api.openstack.compute.legacy_v2 import limits"},{"line_number":18,"context_line":"from nova.api.openstack.compute.views import limits as limits_views"},{"line_number":19,"context_line":"from nova.api.openstack import extensions"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_f59b4a15","line":16,"updated":"2015-08-12 11:34:25.000000000","message":"an extra change","commit_id":"7f02aff87d9543bd9fa5d9271a5a0c1e501c502f"}],"nova/hacking/checks.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e14b1150b2be38a0843e079e6ac9b4adb456c81e","unresolved":false,"context_lines":[{"line_number":513,"context_line":"           \" common raise_feature_not_supported().\")"},{"line_number":514,"context_line":"    if pep8.noqa(physical_line):"},{"line_number":515,"context_line":"        return"},{"line_number":516,"context_line":"    if \"nova/api/openstack/compute/v21\" not in filename:"},{"line_number":517,"context_line":"        return"},{"line_number":518,"context_line":"    if re.match(http_not_implemented_re, logical_line):"},{"line_number":519,"context_line":"        yield(0, msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_aa4801b4","line":516,"updated":"2015-08-12 11:14:31.000000000","message":"That doesn\u0027t seem quite right any more.\n\nI guess this is trying to say, skip v2_legacy code? this looks like it might skip v2.1 code as well.","commit_id":"7f02aff87d9543bd9fa5d9271a5a0c1e501c502f"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"32abeaa035f9a8bc4f50c3aafef381741ce0f478","unresolved":false,"context_lines":[{"line_number":514,"context_line":"    if pep8.noqa(physical_line):"},{"line_number":515,"context_line":"        return"},{"line_number":516,"context_line":"    if (\"nova/api/openstack/compute/legacy_v2\" in filename or"},{"line_number":517,"context_line":"            \"nova/api/openstack/compute\" not in filename):"},{"line_number":518,"context_line":"        return"},{"line_number":519,"context_line":"    if re.match(http_not_implemented_re, logical_line):"},{"line_number":520,"context_line":"        yield(0, msg)"}],"source_content_type":"text/x-python","patch_set":5,"id":"1a4dcd0f_d68734b3","line":517,"updated":"2015-08-12 12:28:40.000000000","message":"Thats more like it, thank you :)","commit_id":"2e781db3026c8b11e626caebf6a2e0672bbf3333"}],"nova/network/security_group/neutron_driver.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e14b1150b2be38a0843e079e6ac9b4adb456c81e","unresolved":false,"context_lines":[{"line_number":540,"context_line":""},{"line_number":541,"context_line":"    def get_default_rule(self, context, id):"},{"line_number":542,"context_line":"        msg \u003d _(\"Network driver does not support this function.\")"},{"line_number":543,"context_line":"        raise common.raise_feature_not_supported(msg\u003dmsg)"},{"line_number":544,"context_line":""},{"line_number":545,"context_line":"    def get_all_default_rules(self, context):"},{"line_number":546,"context_line":"        msg \u003d _(\"Network driver does not support this function.\")"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_8aa7454f","line":543,"updated":"2015-08-12 11:14:31.000000000","message":"This feels unrelated, somehow.","commit_id":"7f02aff87d9543bd9fa5d9271a5a0c1e501c502f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"547a3c2f0a0f7bf955900635f28beca30d4aa3f3","unresolved":false,"context_lines":[{"line_number":540,"context_line":""},{"line_number":541,"context_line":"    def get_default_rule(self, context, id):"},{"line_number":542,"context_line":"        msg \u003d _(\"Network driver does not support this function.\")"},{"line_number":543,"context_line":"        raise common.raise_feature_not_supported(msg\u003dmsg)"},{"line_number":544,"context_line":""},{"line_number":545,"context_line":"    def get_all_default_rules(self, context):"},{"line_number":546,"context_line":"        msg \u003d _(\"Network driver does not support this function.\")"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_f5b02aff","line":543,"in_reply_to":"1a4dcd0f_8aa7454f","updated":"2015-08-12 11:34:25.000000000","message":"indeed. let me revert it.","commit_id":"7f02aff87d9543bd9fa5d9271a5a0c1e501c502f"}],"nova/tests/unit/api/openstack/compute/contrib/test_access_ips.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e14b1150b2be38a0843e079e6ac9b4adb456c81e","unresolved":false,"context_lines":[{"line_number":284,"context_line":"    validation_error \u003d webob.exc.HTTPBadRequest"},{"line_number":285,"context_line":""},{"line_number":286,"context_line":"    def _set_up_controller(self):"},{"line_number":287,"context_line":"        self.ext_mgr \u003d extensions.ExtensionManager()"},{"line_number":288,"context_line":"        self.ext_mgr.extensions \u003d {}"},{"line_number":289,"context_line":"        self.controller \u003d servers_v20.Controller(self.ext_mgr)"},{"line_number":290,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_6a3759ff","line":287,"updated":"2015-08-12 11:14:31.000000000","message":"Nit: I quite keeping that called extensions_v20, but its not a big deal.","commit_id":"7f02aff87d9543bd9fa5d9271a5a0c1e501c502f"}],"nova/tests/unit/api/openstack/compute/contrib/test_hypervisors.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"32abeaa035f9a8bc4f50c3aafef381741ce0f478","unresolved":false,"context_lines":[{"line_number":285,"context_line":""},{"line_number":286,"context_line":"    def test_uptime_notimplemented(self):"},{"line_number":287,"context_line":"        def fake_get_host_uptime(context, hyp):"},{"line_number":288,"context_line":"            raise common.raise_feature_not_supported()"},{"line_number":289,"context_line":""},{"line_number":290,"context_line":"        self.stubs.Set(self.controller.host_api, \u0027get_host_uptime\u0027,"},{"line_number":291,"context_line":"                       fake_get_host_uptime)"}],"source_content_type":"text/x-python","patch_set":5,"id":"1a4dcd0f_d623b4bb","line":288,"updated":"2015-08-12 12:28:40.000000000","message":"maybe missed on here?","commit_id":"2e781db3026c8b11e626caebf6a2e0672bbf3333"}]}
