)]}'
{"nova/virt/disk/api.py":[{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"0bc3c7b1bbd60085e78b8b8caaa11692794ef6a8","unresolved":false,"context_lines":[{"line_number":368,"context_line":"    status \u003d True"},{"line_number":369,"context_line":"    params \u003d {\u0027key\u0027: key, \u0027net\u0027: net, \u0027metadata\u0027: metadata,"},{"line_number":370,"context_line":"              \u0027admin_password\u0027: admin_password, \u0027files\u0027: files}"},{"line_number":371,"context_line":"    for inject in params.keys():"},{"line_number":372,"context_line":"        inject_func \u003d globals()[\u0027_inject_%s_into_fs\u0027 % inject]"},{"line_number":373,"context_line":"        if params[inject]:"},{"line_number":374,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2FSPQ%3D","line":371,"updated":"2013-07-05 07:06:31.000000000","message":"nit: use \n\nfor key, value in params.iteritems():\n   ...","commit_id":"e0eb5389c697b6f5f76283e599c0281c881c4a2b"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"653fb05f56f1c6c3c450ec8d207318db3b391a71","unresolved":false,"context_lines":[{"line_number":296,"context_line":"        # If a mandatory item is passed to this function,"},{"line_number":297,"context_line":"        # then reraise the exception to indicate the error."},{"line_number":298,"context_line":"        for inject in mandatory:"},{"line_number":299,"context_line":"            inject_val \u003d locals()[inject]"},{"line_number":300,"context_line":"            if inject_val:"},{"line_number":301,"context_line":"                raise"},{"line_number":302,"context_line":"        LOG.warn(_(\u0027Ignoring error injecting data into image \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAP3%2F%2F4%2FE%3D","side":"PARENT","line":299,"updated":"2013-07-09 17:51:00.000000000","message":"this also concerns me reasonable change but, hard to verify.","commit_id":"2253bc41a278592ab270dd17298451b0b29ef277"},{"author":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"change_message_id":"d31cca55980dacee1571d80eb2699655bd883feb","unresolved":false,"context_lines":[{"line_number":296,"context_line":"        # If a mandatory item is passed to this function,"},{"line_number":297,"context_line":"        # then reraise the exception to indicate the error."},{"line_number":298,"context_line":"        for inject in mandatory:"},{"line_number":299,"context_line":"            inject_val \u003d locals()[inject]"},{"line_number":300,"context_line":"            if inject_val:"},{"line_number":301,"context_line":"                raise"},{"line_number":302,"context_line":"        LOG.warn(_(\u0027Ignoring error injecting data into image \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAP3%2F%2FrtU%3D","side":"PARENT","line":299,"in_reply_to":"AAAAP3%2F%2F4%2FE%3D","updated":"2013-07-13 05:51:05.000000000","message":"I think this one is questionable\n\nbug #1171936 is just about string formatting. This code isn\u0027t doing string formatting.","commit_id":"2253bc41a278592ab270dd17298451b0b29ef277"},{"author":{"_account_id":6072,"name":"Eugene Nikanorov","email":"enikanorov@mirantis.com","username":"enikanorov"},"change_message_id":"64373c399841ff918fb298fb18a4664e39f42341","unresolved":false,"context_lines":[{"line_number":296,"context_line":"        # If a mandatory item is passed to this function,"},{"line_number":297,"context_line":"        # then reraise the exception to indicate the error."},{"line_number":298,"context_line":"        for inject in mandatory:"},{"line_number":299,"context_line":"            inject_val \u003d locals()[inject]"},{"line_number":300,"context_line":"            if inject_val:"},{"line_number":301,"context_line":"                raise"},{"line_number":302,"context_line":"        LOG.warn(_(\u0027Ignoring error injecting data into image \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAP3%2F%2Frro%3D","side":"PARENT","line":299,"in_reply_to":"AAAAP3%2F%2FrtU%3D","updated":"2013-07-13 06:12:07.000000000","message":"This usage has same problems as with string formatting and needs to be fixed","commit_id":"2253bc41a278592ab270dd17298451b0b29ef277"},{"author":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"change_message_id":"d31cca55980dacee1571d80eb2699655bd883feb","unresolved":false,"context_lines":[{"line_number":369,"context_line":"        inject_func \u003d globals()[\u0027_inject_%s_into_fs\u0027 % inject]"},{"line_number":370,"context_line":"        if inject_val:"},{"line_number":371,"context_line":"            try:"},{"line_number":372,"context_line":"                inject_func(inject_val, fs)"},{"line_number":373,"context_line":"            except Exception as e:"},{"line_number":374,"context_line":"                if inject in mandatory:"},{"line_number":375,"context_line":"                    raise"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAP3%2F%2FrtQ%3D","side":"PARENT","line":372,"updated":"2013-07-13 05:51:05.000000000","message":"Ditto here, this code isn\u0027t using locals() for string formatting ... so I think it\u0027s out of scope for this patch","commit_id":"2253bc41a278592ab270dd17298451b0b29ef277"},{"author":{"_account_id":6072,"name":"Eugene Nikanorov","email":"enikanorov@mirantis.com","username":"enikanorov"},"change_message_id":"64373c399841ff918fb298fb18a4664e39f42341","unresolved":false,"context_lines":[{"line_number":369,"context_line":"        inject_func \u003d globals()[\u0027_inject_%s_into_fs\u0027 % inject]"},{"line_number":370,"context_line":"        if inject_val:"},{"line_number":371,"context_line":"            try:"},{"line_number":372,"context_line":"                inject_func(inject_val, fs)"},{"line_number":373,"context_line":"            except Exception as e:"},{"line_number":374,"context_line":"                if inject in mandatory:"},{"line_number":375,"context_line":"                    raise"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAP3%2F%2Frrk%3D","side":"PARENT","line":372,"in_reply_to":"AAAAP3%2F%2FrtQ%3D","updated":"2013-07-13 06:12:07.000000000","message":"ditto","commit_id":"2253bc41a278592ab270dd17298451b0b29ef277"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"653fb05f56f1c6c3c450ec8d207318db3b391a71","unresolved":false,"context_lines":[{"line_number":93,"context_line":""},{"line_number":94,"context_line":"def mkfs(os_type, fs_label, target):"},{"line_number":95,"context_line":"    mkfs_command \u003d (_MKFS_COMMAND.get(os_type, _DEFAULT_MKFS_COMMAND) or"},{"line_number":96,"context_line":"                    \u0027\u0027) % {\u0027fs_label\u0027: fs_label, \u0027target\u0027: target}"},{"line_number":97,"context_line":"    if mkfs_command:"},{"line_number":98,"context_line":"        utils.execute(*mkfs_command.split(), run_as_root\u003dTrue)"},{"line_number":99,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAP3%2F%2F4%2Fc%3D","line":96,"updated":"2013-07-09 17:51:00.000000000","message":"can you explain this one","commit_id":"0b47be61ceac8712b25682507204eb2ea382d1db"},{"author":{"_account_id":6072,"name":"Eugene Nikanorov","email":"enikanorov@mirantis.com","username":"enikanorov"},"change_message_id":"b2d6d857b671d098819a5bb4ed6b87ea1184a395","unresolved":false,"context_lines":[{"line_number":93,"context_line":""},{"line_number":94,"context_line":"def mkfs(os_type, fs_label, target):"},{"line_number":95,"context_line":"    mkfs_command \u003d (_MKFS_COMMAND.get(os_type, _DEFAULT_MKFS_COMMAND) or"},{"line_number":96,"context_line":"                    \u0027\u0027) % {\u0027fs_label\u0027: fs_label, \u0027target\u0027: target}"},{"line_number":97,"context_line":"    if mkfs_command:"},{"line_number":98,"context_line":"        utils.execute(*mkfs_command.split(), run_as_root\u003dTrue)"},{"line_number":99,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAP3%2F%2F48k%3D","line":96,"in_reply_to":"AAAAP3%2F%2F4%2Fc%3D","updated":"2013-07-09 17:58:09.000000000","message":"Check lines 66-69 where string is defined","commit_id":"0b47be61ceac8712b25682507204eb2ea382d1db"}]}
