)]}'
{"nova/image/glance.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d3bf112af2a9a7092a6340aecd83a7ee78b28e18","unresolved":false,"context_lines":[{"line_number":849,"context_line":"        elif name \u003d\u003d \u0027size\u0027 or name \u003d\u003d \u0027deleted\u0027:"},{"line_number":850,"context_line":"            continue"},{"line_number":851,"context_line":"        elif name in (\u0027kernel_id\u0027, \u0027ramdisk_id\u0027) and value.lower() in ("},{"line_number":852,"context_line":"                \u0027none\u0027, \u0027\u0027):"},{"line_number":853,"context_line":"            output[name] \u003d None"},{"line_number":854,"context_line":"        else:"},{"line_number":855,"context_line":"            output[name] \u003d value"}],"source_content_type":"text/x-python","patch_set":1,"id":"7aa08908_593f6687","line":852,"range":{"start_line":852,"start_character":24,"end_line":852,"end_character":26},"updated":"2016-06-15 14:59:40.000000000","message":"Could we have something like \u0027 \u0027 or \u0027    \u0027? Would a trim on the value be necessary?\n\nWhat if value is None?","commit_id":"14ecec0cc7e98c6420487f791dd1d2d33a69046f"},{"author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"change_message_id":"cf268f018c80dd8dfe4fd7d5545f400308321bb7","unresolved":false,"context_lines":[{"line_number":849,"context_line":"        elif name \u003d\u003d \u0027size\u0027 or name \u003d\u003d \u0027deleted\u0027:"},{"line_number":850,"context_line":"            continue"},{"line_number":851,"context_line":"        elif name in (\u0027kernel_id\u0027, \u0027ramdisk_id\u0027) and value.lower() in ("},{"line_number":852,"context_line":"                \u0027none\u0027, \u0027\u0027):"},{"line_number":853,"context_line":"            output[name] \u003d None"},{"line_number":854,"context_line":"        else:"},{"line_number":855,"context_line":"            output[name] \u003d value"}],"source_content_type":"text/x-python","patch_set":1,"id":"7aa08908_792062b1","line":852,"range":{"start_line":852,"start_character":24,"end_line":852,"end_character":26},"in_reply_to":"7aa08908_593f6687","updated":"2016-06-15 15:28:14.000000000","message":"Matt, good point! I\u0027ll update the patch. Moreover - kernel_id and ramdisk_id are custom properties and should be converted in \u0027properties\u0027 section.","commit_id":"14ecec0cc7e98c6420487f791dd1d2d33a69046f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b78dda2b4eb401be2ae1b6ee31c396de6146cb3d","unresolved":false,"context_lines":[{"line_number":842,"context_line":"        if name \u003d\u003d \u0027properties\u0027:"},{"line_number":843,"context_line":"            for prop_name, prop_value in six.iteritems(value):"},{"line_number":844,"context_line":"                if prop_name in (\u0027kernel_id\u0027, \u0027ramdisk_id\u0027) and \\"},{"line_number":845,"context_line":"                                prop_value.strip().lower() in (\u0027none\u0027, \u0027\u0027):"},{"line_number":846,"context_line":"                    output[prop_name] \u003d None"},{"line_number":847,"context_line":"                else:"},{"line_number":848,"context_line":"                    output[prop_name] \u003d None if prop_value is None \\"}],"source_content_type":"text/x-python","patch_set":2,"id":"7aa08908_927a4076","line":845,"range":{"start_line":845,"start_character":32,"end_line":845,"end_character":42},"updated":"2016-06-15 16:37:45.000000000","message":"Can this be None? If so, we\u0027ll have an AttributeError.","commit_id":"6f44df744b1ce0c295a3be58530e7abbe1d5cd48"},{"author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"change_message_id":"c474ad555883d78c0455209ac21f4ba53c50e327","unresolved":false,"context_lines":[{"line_number":842,"context_line":"        if name \u003d\u003d \u0027properties\u0027:"},{"line_number":843,"context_line":"            for prop_name, prop_value in six.iteritems(value):"},{"line_number":844,"context_line":"                if prop_name in (\u0027kernel_id\u0027, \u0027ramdisk_id\u0027) and \\"},{"line_number":845,"context_line":"                                prop_value.strip().lower() in (\u0027none\u0027, \u0027\u0027):"},{"line_number":846,"context_line":"                    output[prop_name] \u003d None"},{"line_number":847,"context_line":"                else:"},{"line_number":848,"context_line":"                    output[prop_name] \u003d None if prop_value is None \\"}],"source_content_type":"text/x-python","patch_set":2,"id":"7aa08908_359ed6b8","line":845,"range":{"start_line":845,"start_character":32,"end_line":845,"end_character":42},"in_reply_to":"7aa08908_927a4076","updated":"2016-06-15 16:59:26.000000000","message":"Done","commit_id":"6f44df744b1ce0c295a3be58530e7abbe1d5cd48"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d093f5966d8d51bdd6cf8c2aaeda9a1780ad0774","unresolved":false,"context_lines":[{"line_number":852,"context_line":"            output[name] \u003d None"},{"line_number":853,"context_line":"        else:"},{"line_number":854,"context_line":"            output[name] \u003d value"},{"line_number":855,"context_line":""},{"line_number":856,"context_line":"    return output"},{"line_number":857,"context_line":""},{"line_number":858,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7aa08908_d83869d7","side":"PARENT","line":855,"updated":"2016-06-15 17:16:15.000000000","message":"unrelated whitespace change","commit_id":"a7de498628d3cadd38f2b7a2387c7b073c950aa8"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"fd947554be935434e9d91ad0a2a7ced04cc15df3","unresolved":false,"context_lines":[{"line_number":846,"context_line":"                                prop_value.strip().lower() in (\u0027none\u0027, \u0027\u0027):"},{"line_number":847,"context_line":"                    output[prop_name] \u003d None"},{"line_number":848,"context_line":"                else:"},{"line_number":849,"context_line":"                    output[prop_name] \u003d str(prop_value)\\"},{"line_number":850,"context_line":"                        if prop_value is not None else None"},{"line_number":851,"context_line":"        elif name in (\u0027min_ram\u0027, \u0027min_disk\u0027):"},{"line_number":852,"context_line":"            output[name] \u003d int(value)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7aa08908_58fd9907","line":849,"range":{"start_line":849,"start_character":40,"end_line":849,"end_character":43},"updated":"2016-06-15 17:15:02.000000000","message":"Hmm, can these be unicode? If so, we should use six.text_type.","commit_id":"fed26e3676684bf4ed30ad5ade6c10545707615a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d093f5966d8d51bdd6cf8c2aaeda9a1780ad0774","unresolved":false,"context_lines":[{"line_number":852,"context_line":"            output[name] \u003d int(value)"},{"line_number":853,"context_line":"        elif name \u003d\u003d \u0027is_public\u0027:"},{"line_number":854,"context_line":"            output[\u0027visibility\u0027] \u003d \u0027public\u0027 if value else \u0027private\u0027"},{"line_number":855,"context_line":"        elif name in (\u0027size\u0027, \u0027deleted\u0027):"},{"line_number":856,"context_line":"            continue"},{"line_number":857,"context_line":"        else:"},{"line_number":858,"context_line":"            output[name] \u003d value"}],"source_content_type":"text/x-python","patch_set":3,"id":"7aa08908_38508d0a","line":855,"updated":"2016-06-15 17:16:15.000000000","message":"This is unrelated (not wrong, just unrelated).","commit_id":"fed26e3676684bf4ed30ad5ade6c10545707615a"}]}
