)]}'
{"lower-constraints.txt":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"0ff71a4579badccdfdccf56d996c8fbb44f7efd2","unresolved":true,"context_lines":[{"line_number":13,"context_line":"gabbi\u003d\u003d1.35.0"},{"line_number":14,"context_line":"gitdb2\u003d\u003d2.0.3"},{"line_number":15,"context_line":"GitPython\u003d\u003d2.1.8"},{"line_number":16,"context_line":"hacking\u003d\u003d4.0.0"},{"line_number":17,"context_line":"iso8601\u003d\u003d0.1.11"},{"line_number":18,"context_line":"Jinja2\u003d\u003d2.10"},{"line_number":19,"context_line":"jsonpath-rw\u003d\u003d1.4.0"}],"source_content_type":"text/plain","patch_set":7,"id":"e9277767_bbafaafe","line":16,"updated":"2020-12-15 08:25:13.000000000","message":"what is the reasoning behind removing flake8 but keeping hacking in the lower-constratins? As far as I understand both only used during testing.","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"eee4256919a8b25b505cdb312d1648935226f674","unresolved":true,"context_lines":[{"line_number":13,"context_line":"gabbi\u003d\u003d1.35.0"},{"line_number":14,"context_line":"gitdb2\u003d\u003d2.0.3"},{"line_number":15,"context_line":"GitPython\u003d\u003d2.1.8"},{"line_number":16,"context_line":"hacking\u003d\u003d4.0.0"},{"line_number":17,"context_line":"iso8601\u003d\u003d0.1.11"},{"line_number":18,"context_line":"Jinja2\u003d\u003d2.10"},{"line_number":19,"context_line":"jsonpath-rw\u003d\u003d1.4.0"}],"source_content_type":"text/plain","patch_set":7,"id":"5f627731_1257da4d","line":16,"in_reply_to":"e9277767_bbafaafe","updated":"2020-12-15 14:50:14.000000000","message":"flake8 version is handle by hacking only[1] so we do not need to keep it here. That give us clear and single place to maintain the compatible version.\n\n[1] https://github.com/openstack/hacking/blob/4069b0c4f50177dbcaa188aff0de67b4d316a873/lower-constraints.txt#L9","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"}],"placement/conf/database.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"0ff71a4579badccdfdccf56d996c8fbb44f7efd2","unresolved":true,"context_lines":[{"line_number":63,"context_line":"    cfg.StrOpt(\u0027connection_parameters\u0027,"},{"line_number":64,"context_line":"               default\u003d\u0027\u0027,"},{"line_number":65,"context_line":"               help\u003d\u0027\u0027),"},{"line_number":66,"context_line":"    cfg.BoolOpt(\u0027sqlite_synchronous\u0027,"},{"line_number":67,"context_line":"                default\u003dTrue,"},{"line_number":68,"context_line":"                help\u003d\u0027\u0027),"},{"line_number":69,"context_line":"    cfg.StrOpt(\u0027slave_connection\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"ec0aeacb_32504676","line":66,"range":{"start_line":66,"start_character":15,"end_line":66,"end_character":17},"updated":"2020-12-15 08:25:13.000000000","message":"I would wrap the line here for each opt as it would remove the varying size of visual indent due to \"BoolOpt\" is one char longer then \"StrOpt\" and \"IntOpt\".","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"eee4256919a8b25b505cdb312d1648935226f674","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    cfg.StrOpt(\u0027connection_parameters\u0027,"},{"line_number":64,"context_line":"               default\u003d\u0027\u0027,"},{"line_number":65,"context_line":"               help\u003d\u0027\u0027),"},{"line_number":66,"context_line":"    cfg.BoolOpt(\u0027sqlite_synchronous\u0027,"},{"line_number":67,"context_line":"                default\u003dTrue,"},{"line_number":68,"context_line":"                help\u003d\u0027\u0027),"},{"line_number":69,"context_line":"    cfg.StrOpt(\u0027slave_connection\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"ab521358_4e12a241","line":66,"range":{"start_line":66,"start_character":15,"end_line":66,"end_character":17},"in_reply_to":"ec0aeacb_32504676","updated":"2020-12-15 14:50:14.000000000","message":"Done","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"2353ad766123d24dc0106968abbf3addbea22e31","unresolved":true,"context_lines":[{"line_number":34,"context_line":"                # texts here if needed."},{"line_number":35,"context_line":"                alt_db_opt.help \u003d db_opt.help + alt_db_opt.help"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"# NOTE(markus_z): We cannot simply do:"},{"line_number":39,"context_line":"# conf.register_opts(oslo_db_options.database_opts, \u0027placement_database\u0027)"},{"line_number":40,"context_line":"# If we reuse a db config option for two different groups (\"placement_database\""}],"source_content_type":"text/x-python","patch_set":9,"id":"05eb2fcb_df987129","line":37,"updated":"2020-12-15 16:49:57.000000000","message":"this change and below are unrelated to W50x flake8 rules, but you need to modify all the code if you don\u0027t want to ignore the same rules than nova, which I think we shouldn\u0027t be doing.","commit_id":"a0acd219378db6b156d4c14dfaf0cf947ab14e60"}],"placement/handlers/util.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"0ff71a4579badccdfdccf56d996c8fbb44f7efd2","unresolved":true,"context_lines":[{"line_number":24,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"def ensure_consumer(ctx, consumer_uuid, project_id, user_id, # noqa"},{"line_number":28,"context_line":"                    consumer_generation, want_version):"},{"line_number":29,"context_line":"    \"\"\"Ensures there are records in the consumers, projects and users table for"},{"line_number":30,"context_line":"    the supplied external identifiers."}],"source_content_type":"text/x-python","patch_set":7,"id":"e84c8a69_4f6f4272","line":27,"range":{"start_line":27,"start_character":61,"end_line":27,"end_character":67},"updated":"2020-12-15 08:25:13.000000000","message":"I would rater update the max complexity in tox.ini to 19 than to individually ignore complex functions","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"eee4256919a8b25b505cdb312d1648935226f674","unresolved":false,"context_lines":[{"line_number":24,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"def ensure_consumer(ctx, consumer_uuid, project_id, user_id, # noqa"},{"line_number":28,"context_line":"                    consumer_generation, want_version):"},{"line_number":29,"context_line":"    \"\"\"Ensures there are records in the consumers, projects and users table for"},{"line_number":30,"context_line":"    the supplied external identifiers."}],"source_content_type":"text/x-python","patch_set":7,"id":"aa1358b1_d0ce2247","line":27,"range":{"start_line":27,"start_character":61,"end_line":27,"end_character":67},"in_reply_to":"e84c8a69_4f6f4272","updated":"2020-12-15 14:50:14.000000000","message":"Done","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"}],"placement/objects/allocation.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"0ff71a4579badccdfdccf56d996c8fbb44f7efd2","unresolved":true,"context_lines":[{"line_number":203,"context_line":"        step_size \u003d usage[\u0027step_size\u0027]"},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"        # check min_unit, max_unit, step_size"},{"line_number":206,"context_line":"        if (amount_needed \u003c min_unit or amount_needed \u003e max_unit or ("},{"line_number":207,"context_line":"                amount_needed % step_size !\u003d 0)):"},{"line_number":208,"context_line":"            LOG.warning("},{"line_number":209,"context_line":"                \"Allocation for %(rc)s on resource provider %(rp)s \""}],"source_content_type":"text/x-python","patch_set":7,"id":"6d146710_b30c15f6","line":206,"updated":"2020-12-15 08:25:13.000000000","message":"We have to choose one rule from W503 (Line break occurred before a binary operator) and W504 (Line break occurred after a binary operator) as they are contradicting. Nova turns off W504. I personally would move the most relevant information, the operator, to the beginning of the line but that would be the opposite what nova does.","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"eee4256919a8b25b505cdb312d1648935226f674","unresolved":true,"context_lines":[{"line_number":203,"context_line":"        step_size \u003d usage[\u0027step_size\u0027]"},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"        # check min_unit, max_unit, step_size"},{"line_number":206,"context_line":"        if (amount_needed \u003c min_unit or amount_needed \u003e max_unit or ("},{"line_number":207,"context_line":"                amount_needed % step_size !\u003d 0)):"},{"line_number":208,"context_line":"            LOG.warning("},{"line_number":209,"context_line":"                \"Allocation for %(rc)s on resource provider %(rp)s \""}],"source_content_type":"text/x-python","patch_set":7,"id":"c52ab2e2_984702a8","line":206,"in_reply_to":"6d146710_b30c15f6","updated":"2020-12-15 14:50:14.000000000","message":"I am fixing both W503 and W504 with the \u0027(\u0027 as you see it is passing both rules without ignoring.","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a8455a95ba0d8caac51a780b0123f4832a85aa01","unresolved":true,"context_lines":[{"line_number":203,"context_line":"        step_size \u003d usage[\u0027step_size\u0027]"},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"        # check min_unit, max_unit, step_size"},{"line_number":206,"context_line":"        if (amount_needed \u003c min_unit or amount_needed \u003e max_unit or ("},{"line_number":207,"context_line":"                amount_needed % step_size !\u003d 0)):"},{"line_number":208,"context_line":"            LOG.warning("},{"line_number":209,"context_line":"                \"Allocation for %(rc)s on resource provider %(rp)s \""}],"source_content_type":"text/x-python","patch_set":7,"id":"fa962b2b_76af8da6","line":206,"in_reply_to":"c52ab2e2_984702a8","updated":"2020-12-15 15:26:37.000000000","message":"yeah but I think we should not adopt this style. Why is it better to have the last piece of or wrapped in () but not the other or before it? It is more like satisfying the rule (which I still contradicting most of the cases) than to following a good style.","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"}],"requirements.txt":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"0ff71a4579badccdfdccf56d996c8fbb44f7efd2","unresolved":true,"context_lines":[{"line_number":8,"context_line":"Routes\u003e\u003d2.3.1 # MIT"},{"line_number":9,"context_line":"WebOb\u003e\u003d1.8.2 # MIT"},{"line_number":10,"context_line":"jsonschema\u003e\u003d3.2.0 # MIT"},{"line_number":11,"context_line":"requests\u003e\u003d2.23.0 # Apache-2.0"},{"line_number":12,"context_line":"setuptools!\u003d24.0.0,!\u003d34.0.0,!\u003d34.0.1,!\u003d34.0.2,!\u003d34.0.3,!\u003d34.1.0,!\u003d34.1.1,!\u003d34.2.0,!\u003d34.3.0,!\u003d34.3.1,!\u003d34.3.2,!\u003d36.2.0,\u003e\u003d21.0.0 # PSF/ZPL"},{"line_number":13,"context_line":"oslo.concurrency\u003e\u003d3.26.0 # Apache-2.0"},{"line_number":14,"context_line":"oslo.config\u003e\u003d6.7.0 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":7,"id":"bbce5f8c_e9c9a5f5","line":11,"updated":"2020-12-15 08:25:13.000000000","message":"is there a particular reason why this is set to 2.23? from the commit message we need \u003e\u003d2.18 in the global-requirements we only ignore some specific version, in pypi there is 2.25 as well.","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"eee4256919a8b25b505cdb312d1648935226f674","unresolved":true,"context_lines":[{"line_number":8,"context_line":"Routes\u003e\u003d2.3.1 # MIT"},{"line_number":9,"context_line":"WebOb\u003e\u003d1.8.2 # MIT"},{"line_number":10,"context_line":"jsonschema\u003e\u003d3.2.0 # MIT"},{"line_number":11,"context_line":"requests\u003e\u003d2.23.0 # Apache-2.0"},{"line_number":12,"context_line":"setuptools!\u003d24.0.0,!\u003d34.0.0,!\u003d34.0.1,!\u003d34.0.2,!\u003d34.0.3,!\u003d34.1.0,!\u003d34.1.1,!\u003d34.2.0,!\u003d34.3.0,!\u003d34.3.1,!\u003d34.3.2,!\u003d36.2.0,\u003e\u003d21.0.0 # PSF/ZPL"},{"line_number":13,"context_line":"oslo.concurrency\u003e\u003d3.26.0 # Apache-2.0"},{"line_number":14,"context_line":"oslo.config\u003e\u003d6.7.0 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":7,"id":"b7b4ad0e_bbb67115","line":11,"in_reply_to":"bbce5f8c_e9c9a5f5","updated":"2020-12-15 14:50:14.000000000","message":"l-c test failed on PS5 with 2.18 - https://zuul.opendev.org/t/openstack/build/dff1943c9c544a74830a445862dd2523\n\nyeah 2.24 is ignored in g-r [1], let\u0027s make it 2.25. I will update it on commit msg.\n\n[1] https://github.com/openstack/requirements/blob/42e95166ffe584a722697048c6a674be03caad02/global-requirements.txt#L298","commit_id":"997a1f1ad2dbb6f5927d3a4affd3a8a9e66bc72c"}],"tox.ini":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"2353ad766123d24dc0106968abbf3addbea22e31","unresolved":true,"context_lines":[{"line_number":156,"context_line":"# H405 is a good guideline, but sometimes multiline doc strings just don\u0027t have"},{"line_number":157,"context_line":"# a natural summary line. Rejecting code for this reason is wrong."},{"line_number":158,"context_line":"# W504 skipped since you must choose either W503 or W504 (they conflict)"},{"line_number":159,"context_line":"ignore \u003d H405, W504"},{"line_number":160,"context_line":"exclude \u003d  .venv,.git,.tox,dist,*lib/python*,*egg,build,releasenotes"},{"line_number":161,"context_line":"# To get a list of functions that have a complexity of 19 or more, set"},{"line_number":162,"context_line":"# max-complexity to 19 and run \u0027tox -epep8\u0027."}],"source_content_type":"text/x-properties","patch_set":9,"id":"3d653c67_b379b67b","line":159,"updated":"2020-12-15 16:49:57.000000000","message":"I\u0027d rather prefer you to support the same ignore list than nova, to make it consistent.","commit_id":"a0acd219378db6b156d4c14dfaf0cf947ab14e60"}]}
