)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"91b2d42b0c7d9aa42ceae6f01a297af741eaf7f2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"6adf6d04_12041d5c","updated":"2025-12-08 13:56:58.000000000","message":"A couple of comments inline","commit_id":"0cc2a8827772c4973acce0ce9259e2559753243a"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"abb1d4d2bf5d594bad0cd744c4588e666caaf424","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"a878ee6e_eef6d685","updated":"2025-12-08 15:46:51.000000000","message":"Thank you for review Cyril, made changes to address your comments.","commit_id":"32793690f876806438717664cb932cd7ea9b7c3f"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"c6f20364b6a5e86556037d04a877f7e964bb2032","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"49f1152e_b38ac0e5","updated":"2025-12-12 16:11:59.000000000","message":"The nit seems like opinion/style to me, either is fine with me. We can revise afterwards if necessary but I\u0027ll +W this to get it moving.","commit_id":"32793690f876806438717664cb932cd7ea9b7c3f"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"70ea72f980a12d2e1f41b424bb0f7c0a3d417920","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"af8f4a7f_f205c671","updated":"2025-12-12 14:24:47.000000000","message":"Wow, can\u0027t argue with adding 206 lines of tests!\nNit noted inline.  Cyril, if you think it\u0027s a nit not worth addressing, go ahead and +W the patch with your +2, that\u0027s fine by me.","commit_id":"32793690f876806438717664cb932cd7ea9b7c3f"}],"glance/async_/flows/plugins/image_decompression.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"70ea72f980a12d2e1f41b424bb0f7c0a3d417920","unresolved":true,"context_lines":[{"line_number":142,"context_line":"                LOG.info(\"Updated image %(image_id)s size to %(size)d after \""},{"line_number":143,"context_line":"                         \"decompression\","},{"line_number":144,"context_line":"                         {\u0027image_id\u0027: self.image_id,"},{"line_number":145,"context_line":"                          \u0027size\u0027: decompressed_size})"},{"line_number":146,"context_line":"                break"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        return \"file://%s\" % src_path"}],"source_content_type":"text/x-python","patch_set":2,"id":"c86be76d_910f7914","line":145,"range":{"start_line":145,"start_character":34,"end_line":145,"end_character":51},"updated":"2025-12-12 14:24:47.000000000","message":"nit: i\u0027d use image.size here given that we\u0027ve already executed lines 140-141","commit_id":"32793690f876806438717664cb932cd7ea9b7c3f"}],"glance/tests/unit/async_/flows/plugins/test_image_decompression.py":[{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"91b2d42b0c7d9aa42ceae6f01a297af741eaf7f2","unresolved":true,"context_lines":[{"line_number":78,"context_line":"        # Verify the result is the file path"},{"line_number":79,"context_line":"        self.assertEqual(file_path, result)"},{"line_number":80,"context_line":"        # Verify the file was decompressed (original file replaced)"},{"line_number":81,"context_line":"        self.assertTrue(os.path.exists(compressed_file))"},{"line_number":82,"context_line":"        # Verify compressed size is different from decompressed size"},{"line_number":83,"context_line":"        self.assertNotEqual(compressed_size, os.path.getsize(compressed_file))"},{"line_number":84,"context_line":"        self.assertEqual(10000, os.path.getsize(compressed_file))"}],"source_content_type":"text/x-python","patch_set":1,"id":"366c1546_23edd50a","line":81,"range":{"start_line":81,"start_character":24,"end_line":81,"end_character":38},"updated":"2025-12-08 13:56:58.000000000","message":"OK this is really weird because the decompressed file has the same name (test.gz) as the compressed file. What really allows us to verify the original file was replaced is the updated size.\n\nSo basically, the last 3 assertions in this test should be together, with a single comment that reminds the reader that the filename does not change after decompression.","commit_id":"0cc2a8827772c4973acce0ce9259e2559753243a"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"abb1d4d2bf5d594bad0cd744c4588e666caaf424","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        # Verify the result is the file path"},{"line_number":79,"context_line":"        self.assertEqual(file_path, result)"},{"line_number":80,"context_line":"        # Verify the file was decompressed (original file replaced)"},{"line_number":81,"context_line":"        self.assertTrue(os.path.exists(compressed_file))"},{"line_number":82,"context_line":"        # Verify compressed size is different from decompressed size"},{"line_number":83,"context_line":"        self.assertNotEqual(compressed_size, os.path.getsize(compressed_file))"},{"line_number":84,"context_line":"        self.assertEqual(10000, os.path.getsize(compressed_file))"}],"source_content_type":"text/x-python","patch_set":1,"id":"00418a34_03eeff21","line":81,"range":{"start_line":81,"start_character":24,"end_line":81,"end_character":38},"in_reply_to":"366c1546_23edd50a","updated":"2025-12-08 15:46:51.000000000","message":"Removed file existence assert as it is of no use and modified the comment.","commit_id":"0cc2a8827772c4973acce0ce9259e2559753243a"},{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"91b2d42b0c7d9aa42ceae6f01a297af741eaf7f2","unresolved":true,"context_lines":[{"line_number":133,"context_line":"        # Verify the result is the file path"},{"line_number":134,"context_line":"        self.assertEqual(file_path, result)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"    def test_decompress_updates_size_after_gzip_decompression(self):"},{"line_number":137,"context_line":"        \"\"\"Test that size update happens after successful decompression.\"\"\""},{"line_number":138,"context_line":"        # Create a gzipped file"},{"line_number":139,"context_line":"        original_content \u003d b\u0027x\u0027 * 20000  # 20KB uncompressed"}],"source_content_type":"text/x-python","patch_set":1,"id":"890bc2d8_f0d2bc55","line":136,"range":{"start_line":136,"start_character":8,"end_line":136,"end_character":61},"updated":"2025-12-08 13:56:58.000000000","message":"This tests looks a lot like test_decompress_gzip_updates_image_size (with slightly fewer assertions). Is that on purpose?","commit_id":"0cc2a8827772c4973acce0ce9259e2559753243a"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"abb1d4d2bf5d594bad0cd744c4588e666caaf424","unresolved":false,"context_lines":[{"line_number":133,"context_line":"        # Verify the result is the file path"},{"line_number":134,"context_line":"        self.assertEqual(file_path, result)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"    def test_decompress_updates_size_after_gzip_decompression(self):"},{"line_number":137,"context_line":"        \"\"\"Test that size update happens after successful decompression.\"\"\""},{"line_number":138,"context_line":"        # Create a gzipped file"},{"line_number":139,"context_line":"        original_content \u003d b\u0027x\u0027 * 20000  # 20KB uncompressed"}],"source_content_type":"text/x-python","patch_set":1,"id":"815762e9_dc2a5d49","line":136,"range":{"start_line":136,"start_character":8,"end_line":136,"end_character":61},"in_reply_to":"890bc2d8_f0d2bc55","updated":"2025-12-08 15:46:51.000000000","message":"Ack, removed the redundant test.","commit_id":"0cc2a8827772c4973acce0ce9259e2559753243a"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"c6f20364b6a5e86556037d04a877f7e964bb2032","unresolved":true,"context_lines":[{"line_number":130,"context_line":"        self.assertEqual(file_path, result)"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"    @mock.patch(\u0027glance.async_.flows.plugins.image_decompression.LOG\u0027)"},{"line_number":133,"context_line":"    def test_decompress_logs_size_update(self, mock_log):"},{"line_number":134,"context_line":"        \"\"\"Test that size update is logged.\"\"\""},{"line_number":135,"context_line":"        # Create a gzipped file"},{"line_number":136,"context_line":"        original_content \u003d b\u0027x\u0027 * 5000"}],"source_content_type":"text/x-python","patch_set":2,"id":"ee0973a6_c5833e31","line":133,"updated":"2025-12-12 16:11:59.000000000","message":"Feels like this could probably be rolled into one of the other tests, but ++ for covering it regardless :)","commit_id":"32793690f876806438717664cb932cd7ea9b7c3f"}]}
