)]}'
{"nova/cmd/manage.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"54a187b07259e0c091c14e6d5dbcdbece214b7f8","unresolved":false,"context_lines":[{"line_number":770,"context_line":"    def lower_case_metadata(self):"},{"line_number":771,"context_line":"        \"\"\"Lower case all the metadata keys.\"\"\""},{"line_number":772,"context_line":"        contxt \u003d context.get_admin_context()"},{"line_number":773,"context_line":"        print(\"Lowercaserizing aggregate metadata\")"},{"line_number":774,"context_line":"        db.aggregate_metadata_lower(contxt)"},{"line_number":775,"context_line":"        print(\"Lowercaserizing instance_metadata\")"},{"line_number":776,"context_line":"        db.instance_metadata_lower(contxt)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_1285a558","line":773,"range":{"start_line":773,"start_character":15,"end_line":773,"end_character":30},"updated":"2016-06-15 20:39:43.000000000","message":"We don\u0027t want to actually put this in the real output do we? I realize it\u0027s cute and all but...","commit_id":"b02b805b0ab6a70b449668a7d6b71897f4a00b93"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"2329bb0e3957da0e941d47afa53b5ff3db91545c","unresolved":false,"context_lines":[{"line_number":770,"context_line":"    def lower_case_metadata(self):"},{"line_number":771,"context_line":"        \"\"\"Lower case all the metadata keys.\"\"\""},{"line_number":772,"context_line":"        contxt \u003d context.get_admin_context()"},{"line_number":773,"context_line":"        print(\"Lowercaserizing aggregate metadata\")"},{"line_number":774,"context_line":"        db.aggregate_metadata_lower(contxt)"},{"line_number":775,"context_line":"        print(\"Lowercaserizing instance_metadata\")"},{"line_number":776,"context_line":"        db.instance_metadata_lower(contxt)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_f29d7967","line":773,"range":{"start_line":773,"start_character":15,"end_line":773,"end_character":30},"in_reply_to":"7aa08908_1285a558","updated":"2016-06-15 20:49:52.000000000","message":"tsk, tsk, no sense of whimsy\n\nDone","commit_id":"b02b805b0ab6a70b449668a7d6b71897f4a00b93"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"84150c79f8c206c40d33b102152665e46ac5df42","unresolved":false,"context_lines":[{"line_number":793,"context_line":"        aggregate_obj.migrate_aggregates,"},{"line_number":794,"context_line":"        aggregate_obj.migrate_aggregate_reset_autoincrement,"},{"line_number":795,"context_line":"        instance_group_obj.migrate_instance_groups_to_api_db,"},{"line_number":796,"context_line":"    )"},{"line_number":797,"context_line":""},{"line_number":798,"context_line":"    def __init__(self):"},{"line_number":799,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa6399be_4e64d3e4","line":796,"updated":"2016-10-17 15:11:40.000000000","message":"Put your thing in a function and put it in here.","commit_id":"30d7d4b087237cc52364a61621f9dfc04a8402db"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"c14857a7b1d68d9629a7a4f9ca03c9d0b09ea7c8","unresolved":false,"context_lines":[{"line_number":793,"context_line":"        aggregate_obj.migrate_aggregates,"},{"line_number":794,"context_line":"        aggregate_obj.migrate_aggregate_reset_autoincrement,"},{"line_number":795,"context_line":"        instance_group_obj.migrate_instance_groups_to_api_db,"},{"line_number":796,"context_line":"    )"},{"line_number":797,"context_line":""},{"line_number":798,"context_line":"    def __init__(self):"},{"line_number":799,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa6399be_d42eb4f9","line":796,"in_reply_to":"fa6399be_4e64d3e4","updated":"2016-10-17 15:57:23.000000000","message":"You can put all three in here instead of wrapping them in one if you want.","commit_id":"30d7d4b087237cc52364a61621f9dfc04a8402db"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"84150c79f8c206c40d33b102152665e46ac5df42","unresolved":false,"context_lines":[{"line_number":881,"context_line":"        # NOTE(danms): Return nonzero if we archived something"},{"line_number":882,"context_line":"        return int(bool(table_to_rows_archived))"},{"line_number":883,"context_line":""},{"line_number":884,"context_line":"    def lower_case_metadata(self):"},{"line_number":885,"context_line":"        \"\"\"Lower case all the metadata keys.\"\"\""},{"line_number":886,"context_line":"        contxt \u003d context.get_admin_context()"},{"line_number":887,"context_line":"        print(_(\"Converting aggregate metadata keys to lowercase\"))"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa6399be_8e30abea","line":884,"updated":"2016-10-17 15:11:40.000000000","message":"This should be an online DB migration I think, not a new command.","commit_id":"30d7d4b087237cc52364a61621f9dfc04a8402db"}]}
