)]}'
{"placement/objects/allocation_candidate.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba685f21de0f4be786395d3f394672541f31cd20","unresolved":false,"context_lines":[{"line_number":493,"context_line":"                        string trait names associated with that provider"},{"line_number":494,"context_line":"    \"\"\""},{"line_number":495,"context_line":"    # Filter resource providers by those we haven\u0027t seen yet."},{"line_number":496,"context_line":"    root_ids \u003d set(root_ids) - set(rw_ctx.summaries_by_id)"},{"line_number":497,"context_line":"    if not root_ids:"},{"line_number":498,"context_line":"        return"},{"line_number":499,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_d2655ce2","line":496,"range":{"start_line":496,"start_character":4,"end_line":496,"end_character":12},"updated":"2019-08-19 18:49:16.000000000","message":"This is side-effecty (you\u0027re modifying an input variable).\n\nThat happens to be okay right now because this method is the last thing called with that variable in both cases. But seems dangerous, so I would recommend using a new var.","commit_id":"552c03d9b6925d0aa77e4883afd87af9a28bc6f5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba685f21de0f4be786395d3f394672541f31cd20","unresolved":false,"context_lines":[{"line_number":493,"context_line":"                        string trait names associated with that provider"},{"line_number":494,"context_line":"    \"\"\""},{"line_number":495,"context_line":"    # Filter resource providers by those we haven\u0027t seen yet."},{"line_number":496,"context_line":"    root_ids \u003d set(root_ids) - set(rw_ctx.summaries_by_id)"},{"line_number":497,"context_line":"    if not root_ids:"},{"line_number":498,"context_line":"        return"},{"line_number":499,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_723268f4","line":496,"range":{"start_line":496,"start_character":15,"end_line":496,"end_character":28},"updated":"2019-08-19 18:49:16.000000000","message":"afaict root_ids is already a set() from both callers.","commit_id":"552c03d9b6925d0aa77e4883afd87af9a28bc6f5"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"a37651f14864ef5a010c48683992784ace1fdd0b","unresolved":false,"context_lines":[{"line_number":493,"context_line":"                        string trait names associated with that provider"},{"line_number":494,"context_line":"    \"\"\""},{"line_number":495,"context_line":"    # Filter resource providers by those we haven\u0027t seen yet."},{"line_number":496,"context_line":"    root_ids \u003d set(root_ids) - set(rw_ctx.summaries_by_id)"},{"line_number":497,"context_line":"    if not root_ids:"},{"line_number":498,"context_line":"        return"},{"line_number":499,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_f41ddd0e","line":496,"range":{"start_line":496,"start_character":15,"end_line":496,"end_character":28},"in_reply_to":"7faddb67_723268f4","updated":"2019-08-20 06:17:06.000000000","message":"Done","commit_id":"552c03d9b6925d0aa77e4883afd87af9a28bc6f5"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"a37651f14864ef5a010c48683992784ace1fdd0b","unresolved":false,"context_lines":[{"line_number":493,"context_line":"                        string trait names associated with that provider"},{"line_number":494,"context_line":"    \"\"\""},{"line_number":495,"context_line":"    # Filter resource providers by those we haven\u0027t seen yet."},{"line_number":496,"context_line":"    root_ids \u003d set(root_ids) - set(rw_ctx.summaries_by_id)"},{"line_number":497,"context_line":"    if not root_ids:"},{"line_number":498,"context_line":"        return"},{"line_number":499,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_9418291e","line":496,"range":{"start_line":496,"start_character":4,"end_line":496,"end_character":12},"in_reply_to":"7faddb67_d2655ce2","updated":"2019-08-20 06:17:06.000000000","message":"Done","commit_id":"552c03d9b6925d0aa77e4883afd87af9a28bc6f5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"ba685f21de0f4be786395d3f394672541f31cd20","unresolved":false,"context_lines":[{"line_number":895,"context_line":"        parent_uuid, parent_uuid_by_rp_uuid, ancestors\u003dancestors)"},{"line_number":896,"context_line":""},{"line_number":897,"context_line":""},{"line_number":898,"context_line":"def _provider_ids_from_rp_ids(context, root_ids):"},{"line_number":899,"context_line":"    \"\"\"Given an iterable of internal resource provider IDs, returns a dict,"},{"line_number":900,"context_line":"    keyed by internal provider Id, of sqla objects describing those providers."},{"line_number":901,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_52d72c24","line":898,"range":{"start_line":898,"start_character":23,"end_line":898,"end_character":29},"updated":"2019-08-19 18:49:16.000000000","message":"...from_root_ids would be a better name now","commit_id":"552c03d9b6925d0aa77e4883afd87af9a28bc6f5"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"a37651f14864ef5a010c48683992784ace1fdd0b","unresolved":false,"context_lines":[{"line_number":895,"context_line":"        parent_uuid, parent_uuid_by_rp_uuid, ancestors\u003dancestors)"},{"line_number":896,"context_line":""},{"line_number":897,"context_line":""},{"line_number":898,"context_line":"def _provider_ids_from_rp_ids(context, root_ids):"},{"line_number":899,"context_line":"    \"\"\"Given an iterable of internal resource provider IDs, returns a dict,"},{"line_number":900,"context_line":"    keyed by internal provider Id, of sqla objects describing those providers."},{"line_number":901,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_54d4f11f","line":898,"range":{"start_line":898,"start_character":23,"end_line":898,"end_character":29},"in_reply_to":"7faddb67_52d72c24","updated":"2019-08-20 06:17:06.000000000","message":"Done","commit_id":"552c03d9b6925d0aa77e4883afd87af9a28bc6f5"}]}
