)]}'
{"nova/virt/disk/api.py":[{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"cad0af9869fc98efd69a1f75dec433c0b4ebd4f8","unresolved":false,"context_lines":[{"line_number":490,"context_line":"        \u0027metadata\u0027: _inject_metadata_into_fs,"},{"line_number":491,"context_line":"        \u0027admin_password\u0027: _inject_admin_password_into_fs,"},{"line_number":492,"context_line":"        \u0027files\u0027: _inject_files_into_fs,"},{"line_number":493,"context_line":"    }"},{"line_number":494,"context_line":"    status \u003d True"},{"line_number":495,"context_line":"    for inject, inject_val in items.items():"},{"line_number":496,"context_line":"        if inject_val:"}],"source_content_type":"text/x-python","patch_set":5,"id":"5aef4532_d3491cb9","line":493,"updated":"2016-03-09 10:23:17.000000000","message":"It fixes grep! This confused the hell out of me first time I looked at this code.\n\nThis one might be better as a list of 3-tuples, i.e.:\n\n[(\u0027key\u0027, key, _inject_key_info_fs), (\u0027net\u0027, net, _inject_net_info_fs), ...]\n\nHowever, this is fine.","commit_id":"282a8159c098844b6e9f96a3540bf988f081c744"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"5134bd594d510402ce1906357a3479ef0505d6a6","unresolved":false,"context_lines":[{"line_number":490,"context_line":"        \u0027metadata\u0027: _inject_metadata_into_fs,"},{"line_number":491,"context_line":"        \u0027admin_password\u0027: _inject_admin_password_into_fs,"},{"line_number":492,"context_line":"        \u0027files\u0027: _inject_files_into_fs,"},{"line_number":493,"context_line":"    }"},{"line_number":494,"context_line":"    status \u003d True"},{"line_number":495,"context_line":"    for inject, inject_val in items.items():"},{"line_number":496,"context_line":"        if inject_val:"}],"source_content_type":"text/x-python","patch_set":5,"id":"1aa78d24_ef20c79d","line":493,"in_reply_to":"5aef4532_d3491cb9","updated":"2016-07-05 09:08:13.000000000","message":"+1 on all of that.","commit_id":"282a8159c098844b6e9f96a3540bf988f081c744"}],"nova/virt/xenapi/fake.py":[{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"cad0af9869fc98efd69a1f75dec433c0b4ebd4f8","unresolved":false,"context_lines":[{"line_number":1011,"context_line":"               _create_object(cls, params[1]))"},{"line_number":1012,"context_line":""},{"line_number":1013,"context_line":"        # Call hook to provide any fixups needed (ex. creating backrefs)"},{"line_number":1014,"context_line":"        after_hook \u003d \u0027after_%s_create\u0027 % cls"},{"line_number":1015,"context_line":"        try:"},{"line_number":1016,"context_line":"            func \u003d _after_create_functions[after_hook]"},{"line_number":1017,"context_line":"        except KeyError:"}],"source_content_type":"text/x-python","patch_set":5,"id":"5aef4532_56eb3a78","line":1014,"updated":"2016-03-09 10:23:17.000000000","message":"This is less of a clear-cut win. We\u0027re still constructing function names by string manipulation, it\u0027s just that now they\u0027re in a different dict.\n\nI\u0027m neutral on this one, not quite -1.","commit_id":"282a8159c098844b6e9f96a3540bf988f081c744"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"5134bd594d510402ce1906357a3479ef0505d6a6","unresolved":false,"context_lines":[{"line_number":1011,"context_line":"               _create_object(cls, params[1]))"},{"line_number":1012,"context_line":""},{"line_number":1013,"context_line":"        # Call hook to provide any fixups needed (ex. creating backrefs)"},{"line_number":1014,"context_line":"        after_hook \u003d \u0027after_%s_create\u0027 % cls"},{"line_number":1015,"context_line":"        try:"},{"line_number":1016,"context_line":"            func \u003d _after_create_functions[after_hook]"},{"line_number":1017,"context_line":"        except KeyError:"}],"source_content_type":"text/x-python","patch_set":5,"id":"1aa78d24_2f976f91","line":1014,"in_reply_to":"5aef4532_56eb3a78","updated":"2016-07-05 09:08:13.000000000","message":"yeah, this is still a little messy, all though it is a little more explicit at least.","commit_id":"282a8159c098844b6e9f96a3540bf988f081c744"}]}
