)]}'
{"README.rst":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"4031424f9823e8ae50eafa384fe782035081c264","unresolved":false,"context_lines":[{"line_number":108,"context_line":"                            and name."},{"line_number":109,"context_line":"        endpoints           Discover endpoints that get returned from the"},{"line_number":110,"context_line":"                            authenticate services"},{"line_number":111,"context_line":"        evacuate\t\t\tEvacuate a server from failed host"},{"line_number":112,"context_line":"        flavor-create       Create a new flavor"},{"line_number":113,"context_line":"        flavor-delete       Delete a specific flavor"},{"line_number":114,"context_line":"        flavor-list         Print a list of available \u0027flavors\u0027 (sizes of"}],"source_content_type":"text/x-rst","patch_set":2,"id":"AAAAM3%2F%2FwSM%3D","line":111,"updated":"2013-01-07 16:10:26.000000000","message":"Please convert these tabs into spaces.","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"},{"author":{"_account_id":1782,"name":"Kravchenko Pavel","email":"kpavel@il.ibm.com","username":"kravchenko-pavel"},"change_message_id":"bfb4a26faab645a9b56b912612ee7c81b9a76060","unresolved":false,"context_lines":[{"line_number":108,"context_line":"                            and name."},{"line_number":109,"context_line":"        endpoints           Discover endpoints that get returned from the"},{"line_number":110,"context_line":"                            authenticate services"},{"line_number":111,"context_line":"        evacuate\t\t\tEvacuate a server from failed host"},{"line_number":112,"context_line":"        flavor-create       Create a new flavor"},{"line_number":113,"context_line":"        flavor-delete       Delete a specific flavor"},{"line_number":114,"context_line":"        flavor-list         Print a list of available \u0027flavors\u0027 (sizes of"}],"source_content_type":"text/x-rst","patch_set":2,"id":"AAAAM3%2F%2FwNg%3D","line":111,"in_reply_to":"AAAAM3%2F%2FwSM%3D","updated":"2013-01-07 16:48:17.000000000","message":"Done","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"}],"novaclient/v1_1/shell.py":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"4031424f9823e8ae50eafa384fe782035081c264","unresolved":false,"context_lines":[{"line_number":2708,"context_line":"@utils.arg(\u0027--password\u0027,"},{"line_number":2709,"context_line":"    dest\u003d\u0027password\u0027,"},{"line_number":2710,"context_line":"    metavar\u003d\u0027\u003cpassword\u003e\u0027,"},{"line_number":2711,"context_line":"    default\u003dFalse,"},{"line_number":2712,"context_line":"    help\u003d\"Set the provided password on the evacuated instance. Not applicable \""},{"line_number":2713,"context_line":"            \"with on-shared-storage flag\")"},{"line_number":2714,"context_line":"@utils.arg(\u0027--on-shared-storage\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FwSA%3D","line":2711,"updated":"2013-01-07 16:10:26.000000000","message":"Why not default to None?","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"},{"author":{"_account_id":1782,"name":"Kravchenko Pavel","email":"kpavel@il.ibm.com","username":"kravchenko-pavel"},"change_message_id":"bfb4a26faab645a9b56b912612ee7c81b9a76060","unresolved":false,"context_lines":[{"line_number":2708,"context_line":"@utils.arg(\u0027--password\u0027,"},{"line_number":2709,"context_line":"    dest\u003d\u0027password\u0027,"},{"line_number":2710,"context_line":"    metavar\u003d\u0027\u003cpassword\u003e\u0027,"},{"line_number":2711,"context_line":"    default\u003dFalse,"},{"line_number":2712,"context_line":"    help\u003d\"Set the provided password on the evacuated instance. Not applicable \""},{"line_number":2713,"context_line":"            \"with on-shared-storage flag\")"},{"line_number":2714,"context_line":"@utils.arg(\u0027--on-shared-storage\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FwOQ%3D","line":2711,"in_reply_to":"AAAAM3%2F%2FwSA%3D","updated":"2013-01-07 16:48:17.000000000","message":"Done","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"},{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"4031424f9823e8ae50eafa384fe782035081c264","unresolved":false,"context_lines":[{"line_number":2723,"context_line":"    if args.password is not False:"},{"line_number":2724,"context_line":"        _password \u003d args.password"},{"line_number":2725,"context_line":"    else:"},{"line_number":2726,"context_line":"        _password \u003d None"},{"line_number":2727,"context_line":""},{"line_number":2728,"context_line":"    res \u003d server.evacuate(args.host, args.on_shared_storage, _password)[0]"},{"line_number":2729,"context_line":"    if type(res) is dict:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FwRs%3D","line":2726,"updated":"2013-01-07 16:10:26.000000000","message":"If you set the default for --password to None, then this \u0027if\u0027 block simplifies down to:\n\n    _password \u003d args.password\n\nAlso, I don\u0027t understand why you\u0027re using a variable named \"_password\" here; the scope is this single function, and we would traditionally just use \"password\".","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"},{"author":{"_account_id":1782,"name":"Kravchenko Pavel","email":"kpavel@il.ibm.com","username":"kravchenko-pavel"},"change_message_id":"bfb4a26faab645a9b56b912612ee7c81b9a76060","unresolved":false,"context_lines":[{"line_number":2723,"context_line":"    if args.password is not False:"},{"line_number":2724,"context_line":"        _password \u003d args.password"},{"line_number":2725,"context_line":"    else:"},{"line_number":2726,"context_line":"        _password \u003d None"},{"line_number":2727,"context_line":""},{"line_number":2728,"context_line":"    res \u003d server.evacuate(args.host, args.on_shared_storage, _password)[0]"},{"line_number":2729,"context_line":"    if type(res) is dict:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FwOM%3D","line":2726,"in_reply_to":"AAAAM3%2F%2FwRs%3D","updated":"2013-01-07 16:48:17.000000000","message":"Done","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"}],"tests/v1_1/fakes.py":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"4031424f9823e8ae50eafa384fe782035081c264","unresolved":false,"context_lines":[{"line_number":493,"context_line":"            keys \u003d body[action].keys()"},{"line_number":494,"context_line":"            if \u0027adminPass\u0027 in keys:"},{"line_number":495,"context_line":"                keys.remove(\u0027adminPass\u0027)"},{"line_number":496,"context_line":"            assert keys \u003d\u003d [\u0027host\u0027, \u0027onSharedStorage\u0027]"},{"line_number":497,"context_line":"        else:"},{"line_number":498,"context_line":"            raise AssertionError(\"Unexpected server action: %s\" % action)"},{"line_number":499,"context_line":"        return (resp, _headers, _body)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FwRY%3D","line":496,"updated":"2013-01-07 16:10:26.000000000","message":"Testing dictionary keys this way is very iffy.  See the os-migrateLive test above for the proper way to compare the list of keys.","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"},{"author":{"_account_id":1782,"name":"Kravchenko Pavel","email":"kpavel@il.ibm.com","username":"kravchenko-pavel"},"change_message_id":"bfb4a26faab645a9b56b912612ee7c81b9a76060","unresolved":false,"context_lines":[{"line_number":493,"context_line":"            keys \u003d body[action].keys()"},{"line_number":494,"context_line":"            if \u0027adminPass\u0027 in keys:"},{"line_number":495,"context_line":"                keys.remove(\u0027adminPass\u0027)"},{"line_number":496,"context_line":"            assert keys \u003d\u003d [\u0027host\u0027, \u0027onSharedStorage\u0027]"},{"line_number":497,"context_line":"        else:"},{"line_number":498,"context_line":"            raise AssertionError(\"Unexpected server action: %s\" % action)"},{"line_number":499,"context_line":"        return (resp, _headers, _body)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FwNU%3D","line":496,"in_reply_to":"AAAAM3%2F%2FwRY%3D","updated":"2013-01-07 16:48:17.000000000","message":"Done","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"}],"tests/v1_1/test_shell.py":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"4031424f9823e8ae50eafa384fe782035081c264","unresolved":false,"context_lines":[{"line_number":796,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/action\u0027,"},{"line_number":797,"context_line":"                           {\u0027evacuate\u0027: {\u0027host\u0027: \u0027new_host\u0027,"},{"line_number":798,"context_line":"                                         \u0027onSharedStorage\u0027: False}})"},{"line_number":799,"context_line":"        self.run_command(\u0027evacuate sample-server new_host \\"},{"line_number":800,"context_line":"                            --password NewAdminPass\u0027)"},{"line_number":801,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/action\u0027,"},{"line_number":802,"context_line":"                           {\u0027evacuate\u0027: {\u0027host\u0027: \u0027new_host\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FwRA%3D","line":799,"updated":"2013-01-07 16:10:26.000000000","message":"Eliminate the backslash and use implicit concatenation instead.  This should look like:\n\n    self.run_command(\u0027evacuate sample-server new_host \u0027\n                     \u0027--password NewAdminPass\u0027)","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"},{"author":{"_account_id":1782,"name":"Kravchenko Pavel","email":"kpavel@il.ibm.com","username":"kravchenko-pavel"},"change_message_id":"bfb4a26faab645a9b56b912612ee7c81b9a76060","unresolved":false,"context_lines":[{"line_number":796,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/action\u0027,"},{"line_number":797,"context_line":"                           {\u0027evacuate\u0027: {\u0027host\u0027: \u0027new_host\u0027,"},{"line_number":798,"context_line":"                                         \u0027onSharedStorage\u0027: False}})"},{"line_number":799,"context_line":"        self.run_command(\u0027evacuate sample-server new_host \\"},{"line_number":800,"context_line":"                            --password NewAdminPass\u0027)"},{"line_number":801,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/action\u0027,"},{"line_number":802,"context_line":"                           {\u0027evacuate\u0027: {\u0027host\u0027: \u0027new_host\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FwM8%3D","line":799,"in_reply_to":"AAAAM3%2F%2FwRA%3D","updated":"2013-01-07 16:48:17.000000000","message":"Done","commit_id":"77a29c4b1efb0d5e72eabc53285b9a5773e9d0e1"}]}
