)]}'
{"manilaclient/tests/unit/v2/test_shell.py":[{"author":{"_account_id":15100,"name":"zhongjun","email":"jun.zhongjun2@gmail.com","username":"zhongjun2"},"change_message_id":"263b62400ac36634d9348bf666dcf184be58cba6","unresolved":false,"context_lines":[{"line_number":2501,"context_line":"        all_replicas \u003d []"},{"line_number":2502,"context_line":"        existing_replicas \u003d []"},{"line_number":2503,"context_line":"        for counter in range(replica_count):"},{"line_number":2504,"context_line":"            replica \u003d \u0027fake-replica-\u0027 + str(counter)"},{"line_number":2505,"context_line":"            if not counter + 1 \u003c\u003d replica_errors:"},{"line_number":2506,"context_line":"                existing_replicas.append(replica)"},{"line_number":2507,"context_line":"            all_replicas.append(replica)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f4b6375_1e30fa9e","line":2504,"range":{"start_line":2504,"start_character":40,"end_line":2504,"end_character":44},"updated":"2017-10-24 07:04:12.000000000","message":"Py 2/3 incompatible approach. Should be \"six.text_type\".","commit_id":"cc1028effd4032b273ba958e80e971c805279582"},{"author":{"_account_id":23512,"name":"Alexander Pugachev","email":"alexander.pugachev@workday.com","username":"alexander.pugachev"},"change_message_id":"ec5fe0dd9e88d8104d20a4619b31c2b806753abe","unresolved":false,"context_lines":[{"line_number":2501,"context_line":"        all_replicas \u003d []"},{"line_number":2502,"context_line":"        existing_replicas \u003d []"},{"line_number":2503,"context_line":"        for counter in range(replica_count):"},{"line_number":2504,"context_line":"            replica \u003d \u0027fake-replica-\u0027 + str(counter)"},{"line_number":2505,"context_line":"            if not counter + 1 \u003c\u003d replica_errors:"},{"line_number":2506,"context_line":"                existing_replicas.append(replica)"},{"line_number":2507,"context_line":"            all_replicas.append(replica)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f4b6375_a0de5f6a","line":2504,"range":{"start_line":2504,"start_character":40,"end_line":2504,"end_character":44},"in_reply_to":"3f4b6375_1e30fa9e","updated":"2017-10-24 08:18:10.000000000","message":"Done","commit_id":"cc1028effd4032b273ba958e80e971c805279582"},{"author":{"_account_id":15100,"name":"zhongjun","email":"jun.zhongjun2@gmail.com","username":"zhongjun2"},"change_message_id":"263b62400ac36634d9348bf666dcf184be58cba6","unresolved":false,"context_lines":[{"line_number":2502,"context_line":"        existing_replicas \u003d []"},{"line_number":2503,"context_line":"        for counter in range(replica_count):"},{"line_number":2504,"context_line":"            replica \u003d \u0027fake-replica-\u0027 + str(counter)"},{"line_number":2505,"context_line":"            if not counter + 1 \u003c\u003d replica_errors:"},{"line_number":2506,"context_line":"                existing_replicas.append(replica)"},{"line_number":2507,"context_line":"            all_replicas.append(replica)"},{"line_number":2508,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3f4b6375_1e8c7a34","line":2505,"range":{"start_line":2505,"start_character":12,"end_line":2505,"end_character":49},"updated":"2017-10-24 07:04:12.000000000","message":"if not counter \u003c replica_errors:   ?","commit_id":"cc1028effd4032b273ba958e80e971c805279582"},{"author":{"_account_id":23512,"name":"Alexander Pugachev","email":"alexander.pugachev@workday.com","username":"alexander.pugachev"},"change_message_id":"ec5fe0dd9e88d8104d20a4619b31c2b806753abe","unresolved":false,"context_lines":[{"line_number":2502,"context_line":"        existing_replicas \u003d []"},{"line_number":2503,"context_line":"        for counter in range(replica_count):"},{"line_number":2504,"context_line":"            replica \u003d \u0027fake-replica-\u0027 + str(counter)"},{"line_number":2505,"context_line":"            if not counter + 1 \u003c\u003d replica_errors:"},{"line_number":2506,"context_line":"                existing_replicas.append(replica)"},{"line_number":2507,"context_line":"            all_replicas.append(replica)"},{"line_number":2508,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3f4b6375_008bf36d","line":2505,"range":{"start_line":2505,"start_character":12,"end_line":2505,"end_character":49},"in_reply_to":"3f4b6375_1e8c7a34","updated":"2017-10-24 08:18:10.000000000","message":"Good point.","commit_id":"cc1028effd4032b273ba958e80e971c805279582"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f5d92b46c68398264b25aca6cf210aca60b4898e","unresolved":false,"context_lines":[{"line_number":2489,"context_line":"    @mock.patch.object(shell_v2, \u0027_find_share_replica\u0027, mock.Mock())"},{"line_number":2490,"context_line":"    def test_share_replica_delete_errors(self, replica_count, replica_errors):"},{"line_number":2491,"context_line":""},{"line_number":2492,"context_line":"        class FindWithErrors(object):"},{"line_number":2493,"context_line":"            def __init__(self, existing_replicas):"},{"line_number":2494,"context_line":"                self.existing_replicas \u003d existing_replicas"},{"line_number":2495,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_222d3e46","line":2492,"range":{"start_line":2492,"start_character":14,"end_line":2492,"end_character":28},"updated":"2017-10-30 11:57:36.000000000","message":"This class is stub, so, would be good to see something related to it in the name.","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"},{"author":{"_account_id":23512,"name":"Alexander Pugachev","email":"alexander.pugachev@workday.com","username":"alexander.pugachev"},"change_message_id":"feaad123dad7296407b64ba097c8d7a9d91cfbf0","unresolved":false,"context_lines":[{"line_number":2489,"context_line":"    @mock.patch.object(shell_v2, \u0027_find_share_replica\u0027, mock.Mock())"},{"line_number":2490,"context_line":"    def test_share_replica_delete_errors(self, replica_count, replica_errors):"},{"line_number":2491,"context_line":""},{"line_number":2492,"context_line":"        class FindWithErrors(object):"},{"line_number":2493,"context_line":"            def __init__(self, existing_replicas):"},{"line_number":2494,"context_line":"                self.existing_replicas \u003d existing_replicas"},{"line_number":2495,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_798cd634","line":2492,"range":{"start_line":2492,"start_character":14,"end_line":2492,"end_character":28},"in_reply_to":"3f4b6375_222d3e46","updated":"2017-11-01 01:50:02.000000000","message":"Done","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f5d92b46c68398264b25aca6cf210aca60b4898e","unresolved":false,"context_lines":[{"line_number":2495,"context_line":""},{"line_number":2496,"context_line":"            def __call__(self, cs, replica):"},{"line_number":2497,"context_line":"                if replica not in self.existing_replicas:"},{"line_number":2498,"context_line":"                    raise Exception"},{"line_number":2499,"context_line":"                return type(\u0027FakeShareReplica\u0027, (object,), {\u0027id\u0027: replica})"},{"line_number":2500,"context_line":""},{"line_number":2501,"context_line":"        all_replicas \u003d []"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_026482b8","line":2498,"range":{"start_line":2498,"start_character":20,"end_line":2498,"end_character":35},"updated":"2017-10-30 11:57:36.000000000","message":"Better to raise specific exceptions.\nIn current case, it could be some new exception that inherits built-in \"Exception\".","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"},{"author":{"_account_id":23512,"name":"Alexander Pugachev","email":"alexander.pugachev@workday.com","username":"alexander.pugachev"},"change_message_id":"feaad123dad7296407b64ba097c8d7a9d91cfbf0","unresolved":false,"context_lines":[{"line_number":2495,"context_line":""},{"line_number":2496,"context_line":"            def __call__(self, cs, replica):"},{"line_number":2497,"context_line":"                if replica not in self.existing_replicas:"},{"line_number":2498,"context_line":"                    raise Exception"},{"line_number":2499,"context_line":"                return type(\u0027FakeShareReplica\u0027, (object,), {\u0027id\u0027: replica})"},{"line_number":2500,"context_line":""},{"line_number":2501,"context_line":"        all_replicas \u003d []"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_59835a05","line":2498,"range":{"start_line":2498,"start_character":20,"end_line":2498,"end_character":35},"in_reply_to":"3f4b6375_026482b8","updated":"2017-11-01 01:50:02.000000000","message":"Done","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f5d92b46c68398264b25aca6cf210aca60b4898e","unresolved":false,"context_lines":[{"line_number":2496,"context_line":"            def __call__(self, cs, replica):"},{"line_number":2497,"context_line":"                if replica not in self.existing_replicas:"},{"line_number":2498,"context_line":"                    raise Exception"},{"line_number":2499,"context_line":"                return type(\u0027FakeShareReplica\u0027, (object,), {\u0027id\u0027: replica})"},{"line_number":2500,"context_line":""},{"line_number":2501,"context_line":"        all_replicas \u003d []"},{"line_number":2502,"context_line":"        existing_replicas \u003d []"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_826f5291","line":2499,"range":{"start_line":2499,"start_character":55,"end_line":2499,"end_character":57},"updated":"2017-10-30 11:57:36.000000000","message":"Absence of a space here violates some of pep8 rules. Strange that it does not fail here.","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"},{"author":{"_account_id":23512,"name":"Alexander Pugachev","email":"alexander.pugachev@workday.com","username":"alexander.pugachev"},"change_message_id":"feaad123dad7296407b64ba097c8d7a9d91cfbf0","unresolved":false,"context_lines":[{"line_number":2496,"context_line":"            def __call__(self, cs, replica):"},{"line_number":2497,"context_line":"                if replica not in self.existing_replicas:"},{"line_number":2498,"context_line":"                    raise Exception"},{"line_number":2499,"context_line":"                return type(\u0027FakeShareReplica\u0027, (object,), {\u0027id\u0027: replica})"},{"line_number":2500,"context_line":""},{"line_number":2501,"context_line":"        all_replicas \u003d []"},{"line_number":2502,"context_line":"        existing_replicas \u003d []"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_f9ca0644","line":2499,"range":{"start_line":2499,"start_character":55,"end_line":2499,"end_character":57},"in_reply_to":"3f4b6375_826f5291","updated":"2017-11-01 01:50:02.000000000","message":"I checked - it is not entirely true. In fact, PEP8 forbids an extra space a trailing comma and a following close parenthesis: https://www.python.org/dev/peps/pep-0008/#whitespace-in-expressions-and-statements\n\nPlease, see under \"Between a trailing comma and a following close parenthesis\".","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f5d92b46c68398264b25aca6cf210aca60b4898e","unresolved":false,"context_lines":[{"line_number":2501,"context_line":"        all_replicas \u003d []"},{"line_number":2502,"context_line":"        existing_replicas \u003d []"},{"line_number":2503,"context_line":"        for counter in range(replica_count):"},{"line_number":2504,"context_line":"            replica \u003d \u0027fake-replica-\u0027 + six.text_type(counter)"},{"line_number":2505,"context_line":"            if not counter \u003c replica_errors:"},{"line_number":2506,"context_line":"                existing_replicas.append(replica)"},{"line_number":2507,"context_line":"            all_replicas.append(replica)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_c2442a1e","line":2504,"range":{"start_line":2504,"start_character":22,"end_line":2504,"end_character":62},"updated":"2017-10-30 11:57:36.000000000","message":"\"\"\"\n\u0027fake-replica-%d\u0027 % counter\n\"\"\"","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"},{"author":{"_account_id":23512,"name":"Alexander Pugachev","email":"alexander.pugachev@workday.com","username":"alexander.pugachev"},"change_message_id":"feaad123dad7296407b64ba097c8d7a9d91cfbf0","unresolved":false,"context_lines":[{"line_number":2501,"context_line":"        all_replicas \u003d []"},{"line_number":2502,"context_line":"        existing_replicas \u003d []"},{"line_number":2503,"context_line":"        for counter in range(replica_count):"},{"line_number":2504,"context_line":"            replica \u003d \u0027fake-replica-\u0027 + six.text_type(counter)"},{"line_number":2505,"context_line":"            if not counter \u003c replica_errors:"},{"line_number":2506,"context_line":"                existing_replicas.append(replica)"},{"line_number":2507,"context_line":"            all_replicas.append(replica)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_d9d98a22","line":2504,"range":{"start_line":2504,"start_character":22,"end_line":2504,"end_character":62},"in_reply_to":"3f4b6375_c2442a1e","updated":"2017-11-01 01:50:02.000000000","message":"Done","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f5d92b46c68398264b25aca6cf210aca60b4898e","unresolved":false,"context_lines":[{"line_number":2502,"context_line":"        existing_replicas \u003d []"},{"line_number":2503,"context_line":"        for counter in range(replica_count):"},{"line_number":2504,"context_line":"            replica \u003d \u0027fake-replica-\u0027 + six.text_type(counter)"},{"line_number":2505,"context_line":"            if not counter \u003c replica_errors:"},{"line_number":2506,"context_line":"                existing_replicas.append(replica)"},{"line_number":2507,"context_line":"            all_replicas.append(replica)"},{"line_number":2508,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_a2c48e93","line":2505,"range":{"start_line":2505,"start_character":12,"end_line":2505,"end_character":44},"updated":"2017-10-30 11:57:36.000000000","message":"Inversion looks strange here. Following should have been used in current case.\n\n\"\"\"if counter \u003e\u003d replica_errors:\"\"\"","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"},{"author":{"_account_id":23512,"name":"Alexander Pugachev","email":"alexander.pugachev@workday.com","username":"alexander.pugachev"},"change_message_id":"feaad123dad7296407b64ba097c8d7a9d91cfbf0","unresolved":false,"context_lines":[{"line_number":2502,"context_line":"        existing_replicas \u003d []"},{"line_number":2503,"context_line":"        for counter in range(replica_count):"},{"line_number":2504,"context_line":"            replica \u003d \u0027fake-replica-\u0027 + six.text_type(counter)"},{"line_number":2505,"context_line":"            if not counter \u003c replica_errors:"},{"line_number":2506,"context_line":"                existing_replicas.append(replica)"},{"line_number":2507,"context_line":"            all_replicas.append(replica)"},{"line_number":2508,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4b6375_79085690","line":2505,"range":{"start_line":2505,"start_character":12,"end_line":2505,"end_character":44},"in_reply_to":"3f4b6375_a2c48e93","updated":"2017-11-01 01:50:02.000000000","message":"Indeed, it is a weird inversion. Thank you.","commit_id":"075c580e2e10e5308e2f0a11c76e64bcd03b4793"}]}
