)]}'
{"tempest/lib/cmd/check_uuid.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"00a2d12cf21ee56200ecf072adca24f04f57f1f3","unresolved":false,"context_lines":[{"line_number":22,"context_line":"import sys"},{"line_number":23,"context_line":"import unittest"},{"line_number":24,"context_line":"import uuid"},{"line_number":25,"context_line":"from contextlib import contextmanager"},{"line_number":26,"context_line":"from importlib import import_module"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_92930001","line":25,"updated":"2020-08-12 15:02:45.000000000","message":"pep8: H306: imports not in alphabetical order (uuid, contextlib.contextmanager)","commit_id":"ea2d5d1ca0319d52e70d0c13aba0dd59ffcd2f8b"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"00a2d12cf21ee56200ecf072adca24f04f57f1f3","unresolved":false,"context_lines":[{"line_number":192,"context_line":""},{"line_number":193,"context_line":"    @contextmanager"},{"line_number":194,"context_line":"    def ignore_site_packages_paths(self):"},{"line_number":195,"context_line":"        \"\"\"Context manager to make sure that only stdlib imports"},{"line_number":196,"context_line":"        are part of the sys.path"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"        Source:"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_7298ec1a","line":195,"updated":"2020-08-12 15:02:45.000000000","message":"pep8: H405: multi line docstring summary not separated with an empty line","commit_id":"ea2d5d1ca0319d52e70d0c13aba0dd59ffcd2f8b"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"00a2d12cf21ee56200ecf072adca24f04f57f1f3","unresolved":false,"context_lines":[{"line_number":193,"context_line":"    @contextmanager"},{"line_number":194,"context_line":"    def ignore_site_packages_paths(self):"},{"line_number":195,"context_line":"        \"\"\"Context manager to make sure that only stdlib imports"},{"line_number":196,"context_line":"        are part of the sys.path"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"        Source:"},{"line_number":199,"context_line":"            - StackOverflow: https://stackoverflow.com/questions/22195382/"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_d29d780b","line":196,"updated":"2020-08-12 15:02:45.000000000","message":"pep8: H405: multi line docstring summary not separated with an empty line","commit_id":"ea2d5d1ca0319d52e70d0c13aba0dd59ffcd2f8b"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"00a2d12cf21ee56200ecf072adca24f04f57f1f3","unresolved":false,"context_lines":[{"line_number":194,"context_line":"    def ignore_site_packages_paths(self):"},{"line_number":195,"context_line":"        \"\"\"Context manager to make sure that only stdlib imports"},{"line_number":196,"context_line":"        are part of the sys.path"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"        Source:"},{"line_number":199,"context_line":"            - StackOverflow: https://stackoverflow.com/questions/22195382/"},{"line_number":200,"context_line":"            - Author: https://stackoverflow.com/users/485844/"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_b2a2844a","line":197,"updated":"2020-08-12 15:02:45.000000000","message":"pep8: H405: multi line docstring summary not separated with an empty line","commit_id":"ea2d5d1ca0319d52e70d0c13aba0dd59ffcd2f8b"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"00a2d12cf21ee56200ecf072adca24f04f57f1f3","unresolved":false,"context_lines":[{"line_number":195,"context_line":"        \"\"\"Context manager to make sure that only stdlib imports"},{"line_number":196,"context_line":"        are part of the sys.path"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"        Source:"},{"line_number":199,"context_line":"            - StackOverflow: https://stackoverflow.com/questions/22195382/"},{"line_number":200,"context_line":"            - Author: https://stackoverflow.com/users/485844/"},{"line_number":201,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_1287f0b8","line":198,"updated":"2020-08-12 15:02:45.000000000","message":"pep8: H405: multi line docstring summary not separated with an empty line","commit_id":"ea2d5d1ca0319d52e70d0c13aba0dd59ffcd2f8b"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"00a2d12cf21ee56200ecf072adca24f04f57f1f3","unresolved":false,"context_lines":[{"line_number":196,"context_line":"        are part of the sys.path"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"        Source:"},{"line_number":199,"context_line":"            - StackOverflow: https://stackoverflow.com/questions/22195382/"},{"line_number":200,"context_line":"            - Author: https://stackoverflow.com/users/485844/"},{"line_number":201,"context_line":"        \"\"\""},{"line_number":202,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_f2835ca8","line":199,"updated":"2020-08-12 15:02:45.000000000","message":"pep8: H405: multi line docstring summary not separated with an empty line","commit_id":"ea2d5d1ca0319d52e70d0c13aba0dd59ffcd2f8b"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"00a2d12cf21ee56200ecf072adca24f04f57f1f3","unresolved":false,"context_lines":[{"line_number":197,"context_line":""},{"line_number":198,"context_line":"        Source:"},{"line_number":199,"context_line":"            - StackOverflow: https://stackoverflow.com/questions/22195382/"},{"line_number":200,"context_line":"            - Author: https://stackoverflow.com/users/485844/"},{"line_number":201,"context_line":"        \"\"\""},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"        paths \u003d sys.path"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_529168f1","line":200,"updated":"2020-08-12 15:02:45.000000000","message":"pep8: H405: multi line docstring summary not separated with an empty line","commit_id":"ea2d5d1ca0319d52e70d0c13aba0dd59ffcd2f8b"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"00a2d12cf21ee56200ecf072adca24f04f57f1f3","unresolved":false,"context_lines":[{"line_number":198,"context_line":"        Source:"},{"line_number":199,"context_line":"            - StackOverflow: https://stackoverflow.com/questions/22195382/"},{"line_number":200,"context_line":"            - Author: https://stackoverflow.com/users/485844/"},{"line_number":201,"context_line":"        \"\"\""},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"        paths \u003d sys.path"},{"line_number":204,"context_line":"        # remove all third-party paths"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_328e74d0","line":201,"updated":"2020-08-12 15:02:45.000000000","message":"pep8: H405: multi line docstring summary not separated with an empty line","commit_id":"ea2d5d1ca0319d52e70d0c13aba0dd59ffcd2f8b"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"9f4c9c0363d1f0f21c13ce8f0cf36db88a705371","unresolved":false,"context_lines":[{"line_number":260,"context_line":"        grouped_imports \u003d {}"},{"line_number":261,"context_line":"        first_import_line \u003d import_list[0].lineno"},{"line_number":262,"context_line":"        for idx, import_line in enumerate(import_list, first_import_line):"},{"line_number":263,"context_line":"            group_no \u003d import_line.lineno - idx"},{"line_number":264,"context_line":"            group \u003d grouped_imports.get(group_no, [])"},{"line_number":265,"context_line":"            group.append(import_line)"},{"line_number":266,"context_line":"            grouped_imports[group_no] \u003d group"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_7a80d5c0","line":263,"range":{"start_line":263,"start_character":12,"end_line":263,"end_character":47},"updated":"2020-08-27 23:01:46.000000000","message":"what happens if there are more lines than just one between import lines? (not sure if that\u0027s allowed by pep8 though)","commit_id":"74e7e3b97c77d5b025e2fee1504aded1aaaab3a4"},{"author":{"_account_id":30674,"name":"Lukas Piwowarski","email":"lpiwowar@redhat.com","username":"lukas-piwowarski"},"change_message_id":"72a0375aef5fe2697d26906840139fec31c99c8d","unresolved":false,"context_lines":[{"line_number":260,"context_line":"        grouped_imports \u003d {}"},{"line_number":261,"context_line":"        first_import_line \u003d import_list[0].lineno"},{"line_number":262,"context_line":"        for idx, import_line in enumerate(import_list, first_import_line):"},{"line_number":263,"context_line":"            group_no \u003d import_line.lineno - idx"},{"line_number":264,"context_line":"            group \u003d grouped_imports.get(group_no, [])"},{"line_number":265,"context_line":"            group.append(import_line)"},{"line_number":266,"context_line":"            grouped_imports[group_no] \u003d group"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_ebf7f958","line":263,"range":{"start_line":263,"start_character":12,"end_line":263,"end_character":47},"in_reply_to":"9f560f44_7a80d5c0","updated":"2020-08-28 07:16:47.000000000","message":"I think this case should be alright. It would only put the imports into group with different group_no. The main goal of this section of code is to make sure that imports that are separated with space are grouped together. In line 280 the code goes through every group and the name of the group (group_no) should make no difference.\n\nPep8 says: \"You should put a blank line between each group of imports.\"","commit_id":"74e7e3b97c77d5b025e2fee1504aded1aaaab3a4"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"9f4c9c0363d1f0f21c13ce8f0cf36db88a705371","unresolved":false,"context_lines":[{"line_number":279,"context_line":"        package_name \u003d self.package.__name__.split(\".\")[0]"},{"line_number":280,"context_line":"        for key in grouped_imports:"},{"line_number":281,"context_line":"            module \u003d self._import_name(grouped_imports[key][0]).split(\".\")[0]"},{"line_number":282,"context_line":"            if module.startswith(package_name):"},{"line_number":283,"context_line":"                pep8_groups[\u00273rd_group\u0027] \u003d grouped_imports[key]"},{"line_number":284,"context_line":"            elif self.is_std_lib(module):"},{"line_number":285,"context_line":"                pep8_groups[\u00271st_group\u0027] \u003d grouped_imports[key]"},{"line_number":286,"context_line":"            else:"},{"line_number":287,"context_line":"                pep8_groups[\u00272nd_group\u0027] \u003d grouped_imports[key]"},{"line_number":288,"context_line":""},{"line_number":289,"context_line":"        for node in pep8_groups.get(\u00272nd_group\u0027, []):"},{"line_number":290,"context_line":"            if self._import_name(node) \u003c DECORATOR_IMPORT:"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_fad7c5ed","line":287,"range":{"start_line":282,"start_character":12,"end_line":287,"end_character":63},"updated":"2020-08-27 23:01:46.000000000","message":"this counts on the fact, that len(grouped_imports) \u003c 4 and every group is different - can happen a situation when two items of grouped_imports dict belong to the same pep8_group (let\u0027s say 1st)?\nIf yes, than maybe there should be an append?\nf.e.: pep8_groups[\u00273rd_group\u0027].append(grouped_imports[key])","commit_id":"74e7e3b97c77d5b025e2fee1504aded1aaaab3a4"},{"author":{"_account_id":30674,"name":"Lukas Piwowarski","email":"lpiwowar@redhat.com","username":"lukas-piwowarski"},"change_message_id":"72a0375aef5fe2697d26906840139fec31c99c8d","unresolved":false,"context_lines":[{"line_number":279,"context_line":"        package_name \u003d self.package.__name__.split(\".\")[0]"},{"line_number":280,"context_line":"        for key in grouped_imports:"},{"line_number":281,"context_line":"            module \u003d self._import_name(grouped_imports[key][0]).split(\".\")[0]"},{"line_number":282,"context_line":"            if module.startswith(package_name):"},{"line_number":283,"context_line":"                pep8_groups[\u00273rd_group\u0027] \u003d grouped_imports[key]"},{"line_number":284,"context_line":"            elif self.is_std_lib(module):"},{"line_number":285,"context_line":"                pep8_groups[\u00271st_group\u0027] \u003d grouped_imports[key]"},{"line_number":286,"context_line":"            else:"},{"line_number":287,"context_line":"                pep8_groups[\u00272nd_group\u0027] \u003d grouped_imports[key]"},{"line_number":288,"context_line":""},{"line_number":289,"context_line":"        for node in pep8_groups.get(\u00272nd_group\u0027, []):"},{"line_number":290,"context_line":"            if self._import_name(node) \u003c DECORATOR_IMPORT:"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_8b38fdee","line":287,"range":{"start_line":282,"start_character":12,"end_line":287,"end_character":63},"in_reply_to":"9f560f44_fad7c5ed","updated":"2020-08-28 07:16:47.000000000","message":"This could be better in some cases! I gonna fix it.","commit_id":"74e7e3b97c77d5b025e2fee1504aded1aaaab3a4"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"a2eff7c9c1977c42a1cc0bd23a078eeb92dd025e","unresolved":false,"context_lines":[{"line_number":23,"context_line":"import sys"},{"line_number":24,"context_line":"import unittest"},{"line_number":25,"context_line":"import uuid"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"from oslo_utils import uuidutils"},{"line_number":29,"context_line":"import six.moves.urllib.parse as urlparse"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_077322b3","line":26,"range":{"start_line":26,"start_character":0,"end_line":26,"end_character":0},"updated":"2020-08-31 10:18:05.000000000","message":"are here really needed two empty lines?","commit_id":"98f7828109e1f5528778ca895bb44dc63f108473"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"a2eff7c9c1977c42a1cc0bd23a078eeb92dd025e","unresolved":false,"context_lines":[{"line_number":258,"context_line":"        grouped_imports \u003d {}"},{"line_number":259,"context_line":"        first_import_line \u003d import_list[0].lineno"},{"line_number":260,"context_line":"        for idx, import_line in enumerate(import_list, first_import_line):"},{"line_number":261,"context_line":"            group_no \u003d import_line.lineno - idx"},{"line_number":262,"context_line":"            group \u003d grouped_imports.get(group_no, [])"},{"line_number":263,"context_line":"            group.append(import_line)"},{"line_number":264,"context_line":"            grouped_imports[group_no] \u003d group"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_e7e6ee4a","line":261,"range":{"start_line":261,"start_character":12,"end_line":261,"end_character":47},"updated":"2020-08-31 10:18:05.000000000","message":"i like this, it\u0027s clever","commit_id":"98f7828109e1f5528778ca895bb44dc63f108473"}]}
