)]}'
{"nova/api/metadata/vendordata_dynamic.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"5cb5ad2f09271c85a69592857348b1d9f7b1bcb5","unresolved":false,"context_lines":[{"line_number":68,"context_line":"            if verify and CONF.api.vendordata_dynamic_ssl_certfile:"},{"line_number":69,"context_line":"                verify \u003d CONF.api.vendordata_dynamic_ssl_certfile"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"            timeout \u003d (CONF.api.vendordata_dynamic_connect_timeout,"},{"line_number":72,"context_line":"                       CONF.api.vendordata_dynamic_read_timeout)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"            res \u003d requests.request(\u0027POST\u0027, url, data\u003djsonutils.dumps(body),"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_327df9e7","line":71,"range":{"start_line":71,"start_character":32,"end_line":71,"end_character":42},"updated":"2016-11-08 16:43:41.000000000","message":"I wonder if we should have a vendordata config option group altogether?","commit_id":"07792f9ac34e6ebddc0640dc9152566f3927e627"}],"nova/api/openstack/compute/quota_sets.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"5cb5ad2f09271c85a69592857348b1d9f7b1bcb5","unresolved":false,"context_lines":[{"line_number":143,"context_line":""},{"line_number":144,"context_line":"        quota_set \u003d body[\u0027quota_set\u0027]"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"        # NOTE(alex_xu): The CONF.api.enable_network_quota was deprecated"},{"line_number":147,"context_line":"        # due to it is only used by nova-network, and nova-network will be"},{"line_number":148,"context_line":"        # deprecated also. So when CONF.enable_newtork_quota is removed,"},{"line_number":149,"context_line":"        # the networks quota will disappeare also."},{"line_number":150,"context_line":"        if not CONF.api.enable_network_quota and \u0027networks\u0027 in quota_set:"},{"line_number":151,"context_line":"            raise webob.exc.HTTPBadRequest("},{"line_number":152,"context_line":"                explanation\u003d_(\u0027The networks quota is disabled\u0027))"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_9255e551","line":149,"range":{"start_line":146,"start_character":0,"end_line":149,"end_character":50},"updated":"2016-11-08 16:43:41.000000000","message":"This is a warning sign that this option shouldn\u0027t move.","commit_id":"07792f9ac34e6ebddc0640dc9152566f3927e627"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"96673d31929392af6dc5954183bc9f0e71f1ca44","unresolved":false,"context_lines":[{"line_number":146,"context_line":"        # NOTE(alex_xu): The CONF.enable_network_quota was deprecated"},{"line_number":147,"context_line":"        # due to it is only used by nova-network, and nova-network will be"},{"line_number":148,"context_line":"        # deprecated also. So when CONF.enable_newtork_quota is removed,"},{"line_number":149,"context_line":"        # the networks quota will disappeare also."},{"line_number":150,"context_line":"        if not CONF.enable_network_quota and \u0027networks\u0027 in quota_set:"},{"line_number":151,"context_line":"            raise webob.exc.HTTPBadRequest("},{"line_number":152,"context_line":"                explanation\u003d_(\u0027The networks quota is disabled\u0027))"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a74a57a_13705aa3","line":149,"updated":"2016-11-29 12:30:44.000000000","message":"Nit: This feels like a needless whitespace change.","commit_id":"b7b282ed084c74b36369ed915c92103c1595c7fb"}],"nova/conf/api.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"5cb5ad2f09271c85a69592857348b1d9f7b1bcb5","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"auth_opts \u003d ["},{"line_number":23,"context_line":"    cfg.StrOpt(\"auth_strategy\","},{"line_number":24,"context_line":"            default\u003d\"keystone\","},{"line_number":25,"context_line":"            choices\u003d(\"keystone\", \"noauth2\"),"},{"line_number":26,"context_line":"            deprecated_group\u003d\"default\","},{"line_number":27,"context_line":"            help\u003d\"\"\""},{"line_number":28,"context_line":"This determines the strategy to use for authentication: keystone or noauth2."},{"line_number":29,"context_line":"\u0027noauth2\u0027 is designed for testing only, as it does no actual credential"},{"line_number":30,"context_line":"checking. \u0027noauth2\u0027 provides administrative credentials only if \u0027admin\u0027 is"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_12ef1588","line":27,"range":{"start_line":24,"start_character":0,"end_line":27,"end_character":20},"updated":"2016-11-08 16:43:41.000000000","message":"can you fix the indentation of these in a precursor patch?","commit_id":"07792f9ac34e6ebddc0640dc9152566f3927e627"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"5cb5ad2f09271c85a69592857348b1d9f7b1bcb5","unresolved":false,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Any string that represents zero or more versions, separated by spaces."},{"line_number":70,"context_line":"\"\"\"),"},{"line_number":71,"context_line":"    cfg.StrOpt(\"vendordata_driver\","},{"line_number":72,"context_line":"            default\u003d\"nova.api.metadata.vendordata_json.JsonFileVendorData\","},{"line_number":73,"context_line":"            deprecated_for_removal\u003dTrue,"},{"line_number":74,"context_line":"            deprecated_since\u003d\"13.0.0\","},{"line_number":75,"context_line":"            deprecated_group\u003d\"default\","},{"line_number":76,"context_line":"            help\u003d\"\"\""},{"line_number":77,"context_line":"When returning instance metadata, this is the class that is used"},{"line_number":78,"context_line":"for getting vendor metadata when that class isn\u0027t specified in the individual"},{"line_number":79,"context_line":"request. The value should be the full dot-separated path to the class to use."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Possible values:"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"* Any valid dot-separated class path that can be imported."},{"line_number":84,"context_line":"\"\"\"),"},{"line_number":85,"context_line":"    cfg.ListOpt(\u0027vendordata_providers\u0027,"},{"line_number":86,"context_line":"                default\u003d[],"},{"line_number":87,"context_line":"                deprecated_group\u003d\"default\","}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_72d5b1b7","line":84,"range":{"start_line":71,"start_character":0,"end_line":84,"end_character":5},"updated":"2016-11-08 16:43:41.000000000","message":"this should be removed - not moved","commit_id":"07792f9ac34e6ebddc0640dc9152566f3927e627"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"5cb5ad2f09271c85a69592857348b1d9f7b1bcb5","unresolved":false,"context_lines":[{"line_number":297,"context_line":"        help\u003d\"The full path to the fping binary.\")"},{"line_number":298,"context_line":"]"},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"os_network_opts \u003d ["},{"line_number":301,"context_line":"    cfg.BoolOpt(\"enable_network_quota\","},{"line_number":302,"context_line":"            deprecated_for_removal\u003dTrue,"},{"line_number":303,"context_line":"            deprecated_since\u003d\"14.0.0\","},{"line_number":304,"context_line":"            deprecated_reason\u003d\"\"\""},{"line_number":305,"context_line":"CRUD operations on tenant networks are only available when using nova-network"},{"line_number":306,"context_line":"and nova-network is itself deprecated.\"\"\","},{"line_number":307,"context_line":"            default\u003dFalse,"},{"line_number":308,"context_line":"            deprecated_group\u003d\"default\","},{"line_number":309,"context_line":"            help\u003d\"\"\""},{"line_number":310,"context_line":"This option is used to enable or disable quota checking for tenant networks."},{"line_number":311,"context_line":""},{"line_number":312,"context_line":"Related options:"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"* quota_networks"},{"line_number":315,"context_line":"\"\"\"),"},{"line_number":316,"context_line":"    cfg.BoolOpt(\"use_neutron_default_nets\","},{"line_number":317,"context_line":"            default\u003dFalse,"},{"line_number":318,"context_line":"            deprecated_group\u003d\"default\","}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_b2fe6936","line":315,"range":{"start_line":300,"start_character":0,"end_line":315,"end_character":5},"updated":"2016-11-08 16:43:41.000000000","message":"this is deprecated - don\u0027t move it","commit_id":"07792f9ac34e6ebddc0640dc9152566f3927e627"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"5cb5ad2f09271c85a69592857348b1d9f7b1bcb5","unresolved":false,"context_lines":[{"line_number":335,"context_line":""},{"line_number":336,"context_line":"* use_neutron_default_nets"},{"line_number":337,"context_line":"\"\"\"),"},{"line_number":338,"context_line":"    cfg.IntOpt(\"quota_networks\","},{"line_number":339,"context_line":"            deprecated_for_removal\u003dTrue,"},{"line_number":340,"context_line":"            deprecated_since\u003d\"14.0.0\","},{"line_number":341,"context_line":"            deprecated_reason\u003d\"\"\""},{"line_number":342,"context_line":"CRUD operations on tenant networks are only available when using nova-network"},{"line_number":343,"context_line":"and nova-network is itself deprecated.\"\"\","},{"line_number":344,"context_line":"            default\u003d3,"},{"line_number":345,"context_line":"            min\u003d0,"},{"line_number":346,"context_line":"            deprecated_group\u003d\"default\","},{"line_number":347,"context_line":"            help\u003d\"\"\""},{"line_number":348,"context_line":"This option controls the number of private networks that can be created per"},{"line_number":349,"context_line":"project (or per tenant)."},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"Related options:"},{"line_number":352,"context_line":""},{"line_number":353,"context_line":"* enable_network_quota"},{"line_number":354,"context_line":"\"\"\"),"},{"line_number":355,"context_line":"]"},{"line_number":356,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_129635f0","line":353,"range":{"start_line":338,"start_character":0,"end_line":353,"end_character":10},"updated":"2016-11-08 16:43:41.000000000","message":"likewise","commit_id":"07792f9ac34e6ebddc0640dc9152566f3927e627"},{"author":{"_account_id":19590,"name":"Sarafraj Singh","email":"Sarafraj.Singh@intel.com","username":"sarafrajsingh"},"change_message_id":"1b13f3d16aaec23921a6a161b62aea2e86bb6dae","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from oslo_config import cfg"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"api_group \u003d cfg.OptGroup(\u0027api\u0027, title\u003d\u0027API options\u0027, help\u003d\"\"\""},{"line_number":19,"context_line":"Options under this group are used to define Nova API."},{"line_number":20,"context_line":"\"\"\")"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"auth_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":10,"id":"7a77a97e_ff56c1d0","line":19,"range":{"start_line":18,"start_character":26,"end_line":19,"end_character":53},"updated":"2016-11-16 19:46:07.000000000","message":"This indentation is wrong, but is fixed in depends on patch","commit_id":"26d5c2940d6862d9ab3e072c207b21778ffe91ad"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"2760aa82115f6062c950b5ac860791fc9318dc47","unresolved":false,"context_lines":[{"line_number":201,"context_line":"]"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"osapi_opts \u003d ["},{"line_number":204,"context_line":"    cfg.IntOpt(\"osapi_max_limit\","},{"line_number":205,"context_line":"            default\u003d1000,"},{"line_number":206,"context_line":"            min\u003d0,"},{"line_number":207,"context_line":"            deprecated_group\u003d\"default\","}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_931e8e5d","line":204,"range":{"start_line":204,"start_character":16,"end_line":204,"end_character":21},"updated":"2016-11-25 18:39:45.000000000","message":"we should drop the api prefix on these options I guess, using deprecated_name","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"7795f33b542f0ac09215ec4cceedffedf65a26f1","unresolved":false,"context_lines":[{"line_number":201,"context_line":"]"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"osapi_opts \u003d ["},{"line_number":204,"context_line":"    cfg.IntOpt(\"osapi_max_limit\","},{"line_number":205,"context_line":"            default\u003d1000,"},{"line_number":206,"context_line":"            min\u003d0,"},{"line_number":207,"context_line":"            deprecated_group\u003d\"default\","}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_5c8a431c","line":204,"range":{"start_line":204,"start_character":16,"end_line":204,"end_character":21},"in_reply_to":"5a74a57a_931e8e5d","updated":"2016-11-25 22:31:26.000000000","message":"Done","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"2760aa82115f6062c950b5ac860791fc9318dc47","unresolved":false,"context_lines":[{"line_number":249,"context_line":"# is not likely to be changed, I\u0027m copy/pasting it here."},{"line_number":250,"context_line":"BUILDING \u003d \"building\"  # VM only exists in DB"},{"line_number":251,"context_line":"osapi_hide_opts \u003d ["},{"line_number":252,"context_line":"    cfg.ListOpt(\"osapi_hide_server_address_states\","},{"line_number":253,"context_line":"        default\u003d[BUILDING],"},{"line_number":254,"context_line":"        deprecated_group\u003d\"default\","},{"line_number":255,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_b371caaa","line":252,"range":{"start_line":252,"start_character":17,"end_line":252,"end_character":22},"updated":"2016-11-25 18:39:45.000000000","message":"As above","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"7795f33b542f0ac09215ec4cceedffedf65a26f1","unresolved":false,"context_lines":[{"line_number":249,"context_line":"# is not likely to be changed, I\u0027m copy/pasting it here."},{"line_number":250,"context_line":"BUILDING \u003d \"building\"  # VM only exists in DB"},{"line_number":251,"context_line":"osapi_hide_opts \u003d ["},{"line_number":252,"context_line":"    cfg.ListOpt(\"osapi_hide_server_address_states\","},{"line_number":253,"context_line":"        default\u003d[BUILDING],"},{"line_number":254,"context_line":"        deprecated_group\u003d\"default\","},{"line_number":255,"context_line":"        help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_bc851708","line":252,"range":{"start_line":252,"start_character":17,"end_line":252,"end_character":22},"in_reply_to":"5a74a57a_b371caaa","updated":"2016-11-25 22:31:26.000000000","message":"Done","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"2760aa82115f6062c950b5ac860791fc9318dc47","unresolved":false,"context_lines":[{"line_number":309,"context_line":"]"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"enable_inst_pw_opts \u003d ["},{"line_number":312,"context_line":"    cfg.BoolOpt(\"enable_instance_password\","},{"line_number":313,"context_line":"        default\u003dTrue,"},{"line_number":314,"context_line":"        help\u003d\"\"\""},{"line_number":315,"context_line":"Enables returning of the instance password by the relevant server API calls"}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_d30ba728","line":312,"updated":"2016-11-25 18:39:45.000000000","message":"Don\u0027t we need the deprecated group here too?","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"7795f33b542f0ac09215ec4cceedffedf65a26f1","unresolved":false,"context_lines":[{"line_number":309,"context_line":"]"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"enable_inst_pw_opts \u003d ["},{"line_number":312,"context_line":"    cfg.BoolOpt(\"enable_instance_password\","},{"line_number":313,"context_line":"        default\u003dTrue,"},{"line_number":314,"context_line":"        help\u003d\"\"\""},{"line_number":315,"context_line":"Enables returning of the instance password by the relevant server API calls"}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_dc7e5318","line":312,"in_reply_to":"5a74a57a_d30ba728","updated":"2016-11-25 22:31:26.000000000","message":"Done","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"96673d31929392af6dc5954183bc9f0e71f1ca44","unresolved":false,"context_lines":[{"line_number":312,"context_line":"\"\"\"),"},{"line_number":313,"context_line":"]"},{"line_number":314,"context_line":""},{"line_number":315,"context_line":"enable_inst_pw_opts \u003d ["},{"line_number":316,"context_line":"    cfg.BoolOpt(\"enable_instance_password\","},{"line_number":317,"context_line":"        default\u003dTrue,"},{"line_number":318,"context_line":"        deprecated_group\u003d\"default\","}],"source_content_type":"text/x-python","patch_set":15,"id":"5a74a57a_b384065e","line":315,"updated":"2016-11-29 12:30:44.000000000","message":"Nit: its tempting to do the move in a separate patch, but not going to block on that.","commit_id":"b7b282ed084c74b36369ed915c92103c1595c7fb"}],"nova/quota.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"363ad2c25ce77615ddeacd84e9419aac0c0b6863","unresolved":false,"context_lines":[{"line_number":1060,"context_line":"    @property"},{"line_number":1061,"context_line":"    def default(self):"},{"line_number":1062,"context_line":"        \"\"\"Return the default value of the quota.\"\"\""},{"line_number":1063,"context_line":"        if self.flag:"},{"line_number":1064,"context_line":"            try:"},{"line_number":1065,"context_line":"                return CONF[self.flag]"},{"line_number":1066,"context_line":"            except NoSuchOptError:"},{"line_number":1067,"context_line":"                return CONF.api[self.flag]"},{"line_number":1068,"context_line":"        else:"},{"line_number":1069,"context_line":"            return -1"},{"line_number":1070,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"7a77a97e_8b2c5a9a","line":1067,"range":{"start_line":1063,"start_character":0,"end_line":1067,"end_character":42},"updated":"2016-11-18 10:27:40.000000000","message":"I missed this first time round. What\u0027s going on here?","commit_id":"601e71093a334026da04817d8fcefe7d4ba63b59"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"15135b52d12d8c500b4267496531b66410fe3b77","unresolved":false,"context_lines":[{"line_number":1060,"context_line":"    @property"},{"line_number":1061,"context_line":"    def default(self):"},{"line_number":1062,"context_line":"        \"\"\"Return the default value of the quota.\"\"\""},{"line_number":1063,"context_line":"        if self.flag:"},{"line_number":1064,"context_line":"            try:"},{"line_number":1065,"context_line":"                return CONF[self.flag]"},{"line_number":1066,"context_line":"            except NoSuchOptError:"},{"line_number":1067,"context_line":"                return CONF.api[self.flag]"},{"line_number":1068,"context_line":"        else:"},{"line_number":1069,"context_line":"            return -1"},{"line_number":1070,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"5a74a57a_cdd5e8b9","line":1067,"range":{"start_line":1063,"start_character":0,"end_line":1067,"end_character":42},"in_reply_to":"7a77a97e_8b2c5a9a","updated":"2016-11-25 00:12:15.000000000","message":"It was a fix for unit tests, but they UTs are now fixed and this can be reverted to old code.","commit_id":"601e71093a334026da04817d8fcefe7d4ba63b59"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"a583af086266cd16dfac820796b655c3984aa2d0","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import datetime"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from oslo_config.cfg import NoSuchOptError"},{"line_number":22,"context_line":"from oslo_log import log as logging"},{"line_number":23,"context_line":"from oslo_utils import importutils"},{"line_number":24,"context_line":"from oslo_utils import timeutils"}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_53515735","line":21,"updated":"2016-11-25 18:33:32.000000000","message":"2016-11-25 00:15:42.169361 | ./nova/quota.py:21:1: F401 \u0027NoSuchOptError\u0027 imported but unused","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"7795f33b542f0ac09215ec4cceedffedf65a26f1","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import datetime"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from oslo_config.cfg import NoSuchOptError"},{"line_number":22,"context_line":"from oslo_log import log as logging"},{"line_number":23,"context_line":"from oslo_utils import importutils"},{"line_number":24,"context_line":"from oslo_utils import timeutils"}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_bca8b7dc","line":21,"in_reply_to":"5a74a57a_53515735","updated":"2016-11-25 22:31:26.000000000","message":"Done","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"a583af086266cd16dfac820796b655c3984aa2d0","unresolved":false,"context_lines":[{"line_number":1061,"context_line":"    def default(self):"},{"line_number":1062,"context_line":"        \"\"\"Return the default value of the quota.\"\"\""},{"line_number":1063,"context_line":"        return CONF[self.flag] if self.flag else -1"},{"line_number":1064,"context_line":""},{"line_number":1065,"context_line":"class ReservableResource(BaseResource):"},{"line_number":1066,"context_line":"    \"\"\"Describe a reservable resource.\"\"\""},{"line_number":1067,"context_line":"    valid_method \u003d \u0027reserve\u0027"}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_b360eb02","line":1064,"updated":"2016-11-25 18:33:32.000000000","message":"2016-11-25 00:15:42.169445 | ./nova/quota.py:1065:1: E302 expected 2 blank lines, found 1","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"7795f33b542f0ac09215ec4cceedffedf65a26f1","unresolved":false,"context_lines":[{"line_number":1061,"context_line":"    def default(self):"},{"line_number":1062,"context_line":"        \"\"\"Return the default value of the quota.\"\"\""},{"line_number":1063,"context_line":"        return CONF[self.flag] if self.flag else -1"},{"line_number":1064,"context_line":""},{"line_number":1065,"context_line":"class ReservableResource(BaseResource):"},{"line_number":1066,"context_line":"    \"\"\"Describe a reservable resource.\"\"\""},{"line_number":1067,"context_line":"    valid_method \u003d \u0027reserve\u0027"}],"source_content_type":"text/x-python","patch_set":13,"id":"5a74a57a_bc7fd764","line":1064,"in_reply_to":"5a74a57a_b360eb02","updated":"2016-11-25 22:31:26.000000000","message":"Done","commit_id":"c2b69b7088e5432f2e5b2fe1b55921644bff2655"}],"nova/tests/unit/api/openstack/compute/test_versions.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"ae0d12fcca2ed878c7db497aaf0048aed7edd6e9","unresolved":false,"context_lines":[{"line_number":345,"context_line":""},{"line_number":346,"context_line":"        self.assertEqual(expected, output)"},{"line_number":347,"context_line":""},{"line_number":348,"context_line":"    def _test_view_builder_osapi_compute_link_prefix(self,"},{"line_number":349,"context_line":"                                                     href\u003dNone):"},{"line_number":350,"context_line":"        base_url \u003d \"http://example.org/v2.1/\""},{"line_number":351,"context_line":"        if href is None:"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a74a57a_ec9e6262","line":348,"range":{"start_line":348,"start_character":27,"end_line":348,"end_character":32},"updated":"2016-11-30 12:27:18.000000000","message":"ditto","commit_id":"b7b282ed084c74b36369ed915c92103c1595c7fb"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"ae0d12fcca2ed878c7db497aaf0048aed7edd6e9","unresolved":false,"context_lines":[{"line_number":382,"context_line":"        output \u003d builder.build_version(version_data)"},{"line_number":383,"context_line":"        self.assertEqual(expected, output)"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"    def test_view_builder_with_osapi_compute_link_prefix(self):"},{"line_number":386,"context_line":"        self.flags(compute_link_prefix\u003d\u0027http://zoo.com:42\u0027, group\u003d\u0027api\u0027)"},{"line_number":387,"context_line":"        href \u003d \"http://zoo.com:42/v2.1/\""},{"line_number":388,"context_line":"        self._test_view_builder_osapi_compute_link_prefix(href)"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a74a57a_2ca05aa5","line":385,"range":{"start_line":385,"start_character":30,"end_line":385,"end_character":37},"updated":"2016-11-30 12:27:18.000000000","message":"this can be removed.","commit_id":"b7b282ed084c74b36369ed915c92103c1595c7fb"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"ae0d12fcca2ed878c7db497aaf0048aed7edd6e9","unresolved":false,"context_lines":[{"line_number":387,"context_line":"        href \u003d \"http://zoo.com:42/v2.1/\""},{"line_number":388,"context_line":"        self._test_view_builder_osapi_compute_link_prefix(href)"},{"line_number":389,"context_line":""},{"line_number":390,"context_line":"    def test_view_builder_without_osapi_compute_link_prefix(self):"},{"line_number":391,"context_line":"        self._test_view_builder_osapi_compute_link_prefix()"},{"line_number":392,"context_line":""},{"line_number":393,"context_line":"    def test_generate_href(self):"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a74a57a_4ca596b3","line":390,"range":{"start_line":390,"start_character":33,"end_line":390,"end_character":39},"updated":"2016-11-30 12:27:18.000000000","message":"ditto","commit_id":"b7b282ed084c74b36369ed915c92103c1595c7fb"}],"releasenotes/notes/add-api-config-to-api-group-af20a57a9e3e1b85.yaml":[{"author":{"_account_id":19590,"name":"Sarafraj Singh","email":"Sarafraj.Singh@intel.com","username":"sarafrajsingh"},"change_message_id":"5874d5802865e5d1b883972683f0c88f7c7748d3","unresolved":false,"context_lines":[{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    All API configuration options have been added to the \u0027api\u0027 group. They"},{"line_number":5,"context_line":"    should no longer be included in the \u0027DEFAULT\u0027 group."},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"ba5da102_d41cd815","line":5,"updated":"2016-11-04 21:11:18.000000000","message":"List all the options that are deprecated here.","commit_id":"9bc17807e3cdf866feabd44613a1d444a6a33a7c"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"922627f1a6d0afc9b59db8fe9d8969d449891d52","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    should no longer be included in the \u0027DEFAULT\u0027 group. Options affected by"},{"line_number":6,"context_line":"    this change:"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    * auth_strategy"},{"line_number":9,"context_line":"    * use_forwarded_for"},{"line_number":10,"context_line":"    * config_drive_skip_versions"},{"line_number":11,"context_line":"    * vendordata_providers"},{"line_number":12,"context_line":"    * vendordata_dynamic_targets"},{"line_number":13,"context_line":"    * vendordata_dynamic_ssl_certfile"},{"line_number":14,"context_line":"    * vendordata_dynamic_connect_timeout"},{"line_number":15,"context_line":"    * vendordata_dynamic_read_timeout"},{"line_number":16,"context_line":"    * metadata_cache_expiration"},{"line_number":17,"context_line":"    * vendordata_jsonfile_path"},{"line_number":18,"context_line":"    * osapi_max_limit"},{"line_number":19,"context_line":"    * osapi_compute_link_prefix"},{"line_number":20,"context_line":"    * osapi_glance_link_prefix"},{"line_number":21,"context_line":"    * allow_instance_snapshots"},{"line_number":22,"context_line":"    * osapi_hide_server_address_states"},{"line_number":23,"context_line":"    * fping_path"},{"line_number":24,"context_line":"    * use_neutron_default_nets"},{"line_number":25,"context_line":"    * neutron_default_tenant_id"},{"line_number":26,"context_line":"    * enable_instance_password"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"7a77a97e_eeaad5d3","line":26,"range":{"start_line":8,"start_character":0,"end_line":26,"end_character":30},"updated":"2016-11-15 16:32:04.000000000","message":"Could you format all of these as ``code``?","commit_id":"26d5c2940d6862d9ab3e072c207b21778ffe91ad"},{"author":{"_account_id":19590,"name":"Sarafraj Singh","email":"Sarafraj.Singh@intel.com","username":"sarafrajsingh"},"change_message_id":"1b13f3d16aaec23921a6a161b62aea2e86bb6dae","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    should no longer be included in the \u0027DEFAULT\u0027 group. Options affected by"},{"line_number":6,"context_line":"    this change:"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    * auth_strategy"},{"line_number":9,"context_line":"    * use_forwarded_for"},{"line_number":10,"context_line":"    * config_drive_skip_versions"},{"line_number":11,"context_line":"    * vendordata_providers"},{"line_number":12,"context_line":"    * vendordata_dynamic_targets"},{"line_number":13,"context_line":"    * vendordata_dynamic_ssl_certfile"},{"line_number":14,"context_line":"    * vendordata_dynamic_connect_timeout"},{"line_number":15,"context_line":"    * vendordata_dynamic_read_timeout"},{"line_number":16,"context_line":"    * metadata_cache_expiration"},{"line_number":17,"context_line":"    * vendordata_jsonfile_path"},{"line_number":18,"context_line":"    * osapi_max_limit"},{"line_number":19,"context_line":"    * osapi_compute_link_prefix"},{"line_number":20,"context_line":"    * osapi_glance_link_prefix"},{"line_number":21,"context_line":"    * allow_instance_snapshots"},{"line_number":22,"context_line":"    * osapi_hide_server_address_states"},{"line_number":23,"context_line":"    * fping_path"},{"line_number":24,"context_line":"    * use_neutron_default_nets"},{"line_number":25,"context_line":"    * neutron_default_tenant_id"},{"line_number":26,"context_line":"    * enable_instance_password"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"7a77a97e_3fbbd9e6","line":26,"range":{"start_line":8,"start_character":0,"end_line":26,"end_character":30},"in_reply_to":"7a77a97e_eeaad5d3","updated":"2016-11-16 19:46:07.000000000","message":"+1. That way it will be consistent with other release notes and render properly.","commit_id":"26d5c2940d6862d9ab3e072c207b21778ffe91ad"}]}
