)]}'
{"nova/api/openstack/compute/__init__.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"ad2d23c82ff2878bc36430595c84e281f283d68c","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"# NOTE(oomichi): Now v3 API tests use APIRouterV3. After moving all v3"},{"line_number":167,"context_line":"# API extensions to v2.1 API, we can remove this class."},{"line_number":168,"context_line":"class APIRouterV3(nova.api.openstack.APIRouterV21):"},{"line_number":169,"context_line":"    \"\"\"Routes requests on the OpenStack API to the appropriate controller"},{"line_number":170,"context_line":"    and method."},{"line_number":171,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_8359c600","line":168,"updated":"2015-08-28 06:47:24.000000000","message":"I\u0027m think why we not remove this directly","commit_id":"e1ad26560c45b9083a18c70e808fd7776017661f"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"4a73208726f32b34b9131941826fa38a3d9565c4","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"# NOTE(oomichi): Now v3 API tests use APIRouterV3. After moving all v3"},{"line_number":167,"context_line":"# API extensions to v2.1 API, we can remove this class."},{"line_number":168,"context_line":"class APIRouterV3(nova.api.openstack.APIRouterV21):"},{"line_number":169,"context_line":"    \"\"\"Routes requests on the OpenStack API to the appropriate controller"},{"line_number":170,"context_line":"    and method."},{"line_number":171,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_3c5446fd","line":168,"in_reply_to":"da20952f_8359c600","updated":"2015-08-31 08:44:00.000000000","message":"So I think we actually need this because it was in the default config for kilo, sadly.\n\nSo given the rules, this has to stay for one more release :(","commit_id":"e1ad26560c45b9083a18c70e808fd7776017661f"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"af6b036f4eb099105c6c07b2efdf4ee4f4cda8d5","unresolved":false,"context_lines":[{"line_number":171,"context_line":"    \"\"\""},{"line_number":172,"context_line":"    def __init__(self, init_only\u003dNone):"},{"line_number":173,"context_line":"        LOG.warning(_LW("},{"line_number":174,"context_line":"            \"Deprecated: The v3 API was deprecated. The v2.1 API replace it \""},{"line_number":175,"context_line":"            \"as the Nova New API, please refer Nova api-paste.ini for how to \""},{"line_number":176,"context_line":"            \"configure v2.1 API.\"))"},{"line_number":177,"context_line":"        self._loaded_extension_info \u003d extension_info.LoadedExtensionInfo()"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_377bf829","line":174,"updated":"2015-08-31 13:10:13.000000000","message":"replace \u003d\u003e replaces","commit_id":"e1ad26560c45b9083a18c70e808fd7776017661f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"bc15658578cbe574cf3e55d35f70f661a6aae765","unresolved":false,"context_lines":[{"line_number":171,"context_line":"    \"\"\""},{"line_number":172,"context_line":"    def __init__(self, init_only\u003dNone):"},{"line_number":173,"context_line":"        LOG.warning(_LW("},{"line_number":174,"context_line":"            \"Deprecated: The v3 API was deprecated. The v2.1 API replace it \""},{"line_number":175,"context_line":"            \"as the Nova New API, please refer Nova api-paste.ini for how to \""},{"line_number":176,"context_line":"            \"configure v2.1 API.\"))"},{"line_number":177,"context_line":"        self._loaded_extension_info \u003d extension_info.LoadedExtensionInfo()"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_4053406b","line":174,"in_reply_to":"da20952f_377bf829","updated":"2015-08-31 14:09:29.000000000","message":"Done","commit_id":"e1ad26560c45b9083a18c70e808fd7776017661f"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"af6b036f4eb099105c6c07b2efdf4ee4f4cda8d5","unresolved":false,"context_lines":[{"line_number":172,"context_line":"    def __init__(self, init_only\u003dNone):"},{"line_number":173,"context_line":"        LOG.warning(_LW("},{"line_number":174,"context_line":"            \"Deprecated: The v3 API was deprecated. The v2.1 API replace it \""},{"line_number":175,"context_line":"            \"as the Nova New API, please refer Nova api-paste.ini for how to \""},{"line_number":176,"context_line":"            \"configure v2.1 API.\"))"},{"line_number":177,"context_line":"        self._loaded_extension_info \u003d extension_info.LoadedExtensionInfo()"},{"line_number":178,"context_line":"        super(APIRouterV3, self).__init__(init_only, v3mode\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_f7a7c0a4","line":175,"updated":"2015-08-31 13:10:13.000000000","message":"Nova New API - this does not really make sense to me. This is just the Nova API","commit_id":"e1ad26560c45b9083a18c70e808fd7776017661f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"bc15658578cbe574cf3e55d35f70f661a6aae765","unresolved":false,"context_lines":[{"line_number":172,"context_line":"    def __init__(self, init_only\u003dNone):"},{"line_number":173,"context_line":"        LOG.warning(_LW("},{"line_number":174,"context_line":"            \"Deprecated: The v3 API was deprecated. The v2.1 API replace it \""},{"line_number":175,"context_line":"            \"as the Nova New API, please refer Nova api-paste.ini for how to \""},{"line_number":176,"context_line":"            \"configure v2.1 API.\"))"},{"line_number":177,"context_line":"        self._loaded_extension_info \u003d extension_info.LoadedExtensionInfo()"},{"line_number":178,"context_line":"        super(APIRouterV3, self).__init__(init_only, v3mode\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_a0f1fc6c","line":175,"in_reply_to":"da20952f_f7a7c0a4","updated":"2015-08-31 14:09:29.000000000","message":"Actually I want to distinguish v2.1 and v2....","commit_id":"e1ad26560c45b9083a18c70e808fd7776017661f"}]}
