)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":23709,"name":"Duc Truong","email":"dkt26111@gmail.com","username":"dtruong"},"change_message_id":"3df80d84139bcd40078d7aa9c73c7e17e43e9d94","unresolved":false,"context_lines":[{"line_number":10,"context_line":"   The \u0027message\u0027 attribute has been deprecated and removed from Python3."},{"line_number":11,"context_line":"   Use six.text_type(e) instead of e.message. For more details, please check [1]:"},{"line_number":12,"context_line":"   [1] https://www.python.org/dev/peps/pep-0352/"},{"line_number":13,"context_line":" * Add hacking to prevent this from happening in the future."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: Id40000c2c453815b04a7d2fd765e19997291d8e3"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"ff346bd7_40d53a43","line":13,"range":{"start_line":13,"start_character":3,"end_line":13,"end_character":60},"updated":"2017-07-27 22:26:24.000000000","message":"The hacking changes are not present in the current patchset","commit_id":"f167f707c4d11555dbe28447f72db18b36c00736"}],"tempest/api/compute/servers/test_attach_interfaces.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"7c992db9a5c4b3d278ce47bae3dbf80192f4bcf1","unresolved":false,"context_lines":[{"line_number":195,"context_line":"        except lib_exc.BadRequest as e:"},{"line_number":196,"context_line":"            msg \u003d (\u0027Multiple possible networks found, use a Network ID to be \u0027"},{"line_number":197,"context_line":"                   \u0027more specific.\u0027)"},{"line_number":198,"context_line":"            if not CONF.compute.fixed_network_name and e.message \u003d\u003d msg:"},{"line_number":199,"context_line":"                raise"},{"line_number":200,"context_line":"        else:"},{"line_number":201,"context_line":"            ifs.append(iface)"}],"source_content_type":"text/x-python","patch_set":7,"id":"df3967d1_d705197c","side":"PARENT","line":198,"updated":"2017-07-31 05:15:56.000000000","message":"The regex doesn\u0027t match this line..","commit_id":"0252bca0d926774eab86fd88590401897eefa41b"}],"tempest/hacking/checks.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"7c992db9a5c4b3d278ce47bae3dbf80192f4bcf1","unresolved":false,"context_lines":[{"line_number":33,"context_line":"METHOD_GET_RESOURCE \u003d re.compile(r\"^\\s*def (list|show)\\_.+\")"},{"line_number":34,"context_line":"METHOD_DELETE_RESOURCE \u003d re.compile(r\"^\\s*def delete_.+\")"},{"line_number":35,"context_line":"CLASS \u003d re.compile(r\"^class .+\")"},{"line_number":36,"context_line":"UNSUPPORTED_EX_ATTRIBUTE \u003d re.compile(r\u0027\\((e|ex|exc|exception).message\\)\u0027)"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"def import_no_clients_in_api_and_scenario_tests(physical_line, filename):"}],"source_content_type":"text/x-python","patch_set":7,"id":"df3967d1_f7d6ddf1","line":36,"updated":"2017-07-31 05:15:56.000000000","message":"How about like this? Overkill?\n\n  UNSUPPORTED_EX_ATTRIBUTE \u003d re.compile(r\u0027(\\s+|\\()(e|ex|exc|exception).message(\\s+|\\))\u0027)","commit_id":"cae44872206311df624631df762911cf8477b116"},{"author":{"_account_id":25456,"name":"junboli","email":"junbo85.li@gmail.com","username":"junboli"},"change_message_id":"7b9f22f391dcab95e0cc7b72b8016775bdda92c2","unresolved":false,"context_lines":[{"line_number":33,"context_line":"METHOD_GET_RESOURCE \u003d re.compile(r\"^\\s*def (list|show)\\_.+\")"},{"line_number":34,"context_line":"METHOD_DELETE_RESOURCE \u003d re.compile(r\"^\\s*def delete_.+\")"},{"line_number":35,"context_line":"CLASS \u003d re.compile(r\"^class .+\")"},{"line_number":36,"context_line":"UNSUPPORTED_EX_ATTRIBUTE \u003d re.compile(r\u0027\\((e|ex|exc|exception).message\\)\u0027)"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"def import_no_clients_in_api_and_scenario_tests(physical_line, filename):"}],"source_content_type":"text/x-python","patch_set":7,"id":"df3967d1_575fe940","line":36,"in_reply_to":"df3967d1_f7d6ddf1","updated":"2017-07-31 05:40:27.000000000","message":"This looks much better, Thanks very much.","commit_id":"cae44872206311df624631df762911cf8477b116"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"a63c43fd5484f17b88466ea44cfa0d75948f0224","unresolved":false,"context_lines":[{"line_number":33,"context_line":"METHOD_GET_RESOURCE \u003d re.compile(r\"^\\s*def (list|show)\\_.+\")"},{"line_number":34,"context_line":"METHOD_DELETE_RESOURCE \u003d re.compile(r\"^\\s*def delete_.+\")"},{"line_number":35,"context_line":"CLASS \u003d re.compile(r\"^class .+\")"},{"line_number":36,"context_line":"EX_ATTRIBUTE \u003d re.compile(r\u0027(\\s+|\\()(e|ex|exc|exception).message(\\s+|\\))\u0027)"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"def import_no_clients_in_api_and_scenario_tests(physical_line, filename):"}],"source_content_type":"text/x-python","patch_set":9,"id":"9f436f4f_990d7239","line":36,"range":{"start_line":36,"start_character":0,"end_line":36,"end_character":74},"updated":"2017-08-09 10:55:46.000000000","message":"This checks only relies on the name of the variable used to store the exception... so it is still possible to use .message if the name is different. \nAl least the risk for false negatives is rather low, so it should be fine.","commit_id":"bc2ae8629c3e8eaa72112c8146339320045ba948"}],"tempest/tests/lib/common/test_api_version_utils.py":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"cb54fe942a5a4a312db2a8c8cef95b1450150205","unresolved":false,"context_lines":[{"line_number":31,"context_line":"                                                           cfg_max_version)"},{"line_number":32,"context_line":"        except testtools.TestCase.skipException as e:"},{"line_number":33,"context_line":"            if not expected_skip:"},{"line_number":34,"context_line":"                raise testtools.TestCase.failureException(six.text.type(e))"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    def test_version_min_in_range(self):"},{"line_number":37,"context_line":"        self._test_version(\u00272.2\u0027, \u00272.10\u0027, \u00272.1\u0027, \u00272.7\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff346bd7_141b4a81","line":34,"range":{"start_line":34,"start_character":62,"end_line":34,"end_character":71},"updated":"2017-07-26 05:01:00.000000000","message":"Typo. Should be \"text_type\".","commit_id":"41556388d1bb43ca5e90467d45962607a11d4a2a"}]}
