)]}'
{"test/unit/__init__.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"1686ab2a61adaf87fbb006b49c6d1cdbc6d2c403","unresolved":false,"context_lines":[{"line_number":620,"context_line":"            print(\u0027WARNING: unable to format log message %r %% %r\u0027 % ("},{"line_number":621,"context_line":"                record.msg, record.args))"},{"line_number":622,"context_line":"            raise"},{"line_number":623,"context_line":"        self.lines_dict[record.levelname.lower()].append(line)"},{"line_number":624,"context_line":"        if record.exc_info:"},{"line_number":625,"context_line":"            self.lines_dict[record.levelname.lower()].append("},{"line_number":626,"context_line":"                \u0027[traceback for %s]\u0027 % (record.exc_info[1], ))"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f287b81_d20e48e4","line":623,"range":{"start_line":623,"start_character":57,"end_line":623,"end_character":61},"updated":"2017-08-23 07:48:27.000000000","message":"Maybe I should be tweaking this instead?","commit_id":"a1d0201e037bb042448607e555478fadd29aaf1d"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"cdd381fe0f8518ed19a90e10743d6787615f8c35","unresolved":false,"context_lines":[{"line_number":543,"context_line":"        captured \u003d dict(kwargs)"},{"line_number":544,"context_line":"        if \u0027exc_info\u0027 in kwargs and \\"},{"line_number":545,"context_line":"                not isinstance(kwargs[\u0027exc_info\u0027], tuple):"},{"line_number":546,"context_line":"            captured[\u0027exc_info\u0027] \u003d sys.exc_info()"},{"line_number":547,"context_line":"        self.log_dict[store_name].append((tuple(cargs), captured))"},{"line_number":548,"context_line":"        super(FakeLogger, self)._log(level, msg, *args, **kwargs)"},{"line_number":549,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7f287b81_29b84b74","line":546,"updated":"2017-08-24 18:14:02.000000000","message":"I think originally it was assumed any assertions around the traceback would come from the lower_level log_dict?","commit_id":"bbd4e478b7401f83f9e8b18be068203c02ad0369"},{"author":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"change_message_id":"2cf0d6f37bb8b21cdc8fb81c42b3f3a84ca1e8c0","unresolved":false,"context_lines":[{"line_number":623,"context_line":"        self.lines_dict[record.levelname.lower()].append(line)"},{"line_number":624,"context_line":"        if record.exc_info:"},{"line_number":625,"context_line":"            self.lines_dict[record.levelname.lower()].append("},{"line_number":626,"context_line":"                \u0027[traceback for %s]\u0027 % (record.exc_info[1], ))"},{"line_number":627,"context_line":""},{"line_number":628,"context_line":"    def handle(self, record):"},{"line_number":629,"context_line":"        self._handle(record)"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f287b81_c486bb66","line":626,"updated":"2017-08-30 21:10:04.000000000","message":"Should this look like stdlib logging module\u0027s tracebacks?","commit_id":"bbd4e478b7401f83f9e8b18be068203c02ad0369"}],"test/unit/obj/test_expirer.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"1686ab2a61adaf87fbb006b49c6d1cdbc6d2c403","unresolved":false,"context_lines":[{"line_number":659,"context_line":"            \u0027Exception while deleting container %d failed to delete \u0027"},{"line_number":660,"context_line":"            \u0027container: \u0027 % (cts + 1,),"},{"line_number":661,"context_line":"            \u0027[traceback for failed to delete container]\u0027,"},{"line_number":662,"context_line":"        ]))"},{"line_number":663,"context_line":"        self.assertEqual(x.logger.get_lines_for_level(\u0027info\u0027), ["},{"line_number":664,"context_line":"            \u0027Pass beginning; 1 possible containers; 2 possible objects\u0027,"},{"line_number":665,"context_line":"            \u0027Pass completed in 0s; 0 objects expired\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f287b81_12d3b03a","line":662,"updated":"2017-08-23 07:48:27.000000000","message":"... because it definitely starts to feel weird around here...","commit_id":"a1d0201e037bb042448607e555478fadd29aaf1d"}],"test/unit/obj/test_replicator.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"1686ab2a61adaf87fbb006b49c6d1cdbc6d2c403","unresolved":false,"context_lines":[{"line_number":1798,"context_line":"                expected.append(error % node)"},{"line_number":1799,"context_line":"            # ... and finally it will exception out"},{"line_number":1800,"context_line":"            expected.append(expect)"},{"line_number":1801,"context_line":"            expected.append(\u0027[traceback for ]\u0027)"},{"line_number":1802,"context_line":"            self.assertEqual(expected, error_lines)"},{"line_number":1803,"context_line":"            self.assertEqual(len(self.replicator.partition_times), 1)"},{"line_number":1804,"context_line":"            self.assertEqual(mock_http.call_count, len(ring._devs) - 1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f287b81_32ed8cef","line":1801,"updated":"2017-08-23 07:48:27.000000000","message":"Looks like we rely on a StopIteration to make it bomb out? Doesn\u0027t str() well...","commit_id":"a1d0201e037bb042448607e555478fadd29aaf1d"}],"test/unit/obj/test_ssync_sender.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"1686ab2a61adaf87fbb006b49c6d1cdbc6d2c403","unresolved":false,"context_lines":[{"line_number":137,"context_line":"        job \u003d dict(partition\u003d\u00279\u0027, policy\u003dPOLICIES.legacy)"},{"line_number":138,"context_line":"        self.sender \u003d ssync_sender.Sender(self.daemon, node, job, None)"},{"line_number":139,"context_line":"        self.sender.suffixes \u003d [\u0027abc\u0027]"},{"line_number":140,"context_line":"        self.sender.connect \u003d \u0027cause exception\u0027"},{"line_number":141,"context_line":"        success, candidates \u003d self.sender()"},{"line_number":142,"context_line":"        self.assertFalse(success)"},{"line_number":143,"context_line":"        self.assertEqual(candidates, {})"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f287b81_72cc3489","line":140,"updated":"2017-08-23 07:48:27.000000000","message":"I don\u0027t really like this pattern.","commit_id":"a1d0201e037bb042448607e555478fadd29aaf1d"}]}
