)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"273437226ed13e4d8ff690e1629e1fdda521fdce","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"af8037fe_50e0ee75","updated":"2023-05-17 17:39:35.000000000","message":"seems reasonable!","commit_id":"0a4e41701dbb5795ff4cab7a2c68a41c90bd51e7"}],"swift/common/utils/__init__.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"273437226ed13e4d8ff690e1629e1fdda521fdce","unresolved":true,"context_lines":[{"line_number":6483,"context_line":"        raise ValueError"},{"line_number":6484,"context_line":""},{"line_number":6485,"context_line":""},{"line_number":6486,"context_line":"def cap_length(value, max_length):"},{"line_number":6487,"context_line":"    if value and len(value) \u003e max_length:"},{"line_number":6488,"context_line":"        if isinstance(value, bytes):"},{"line_number":6489,"context_line":"            return value[:max_length] + b\u0027...\u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"e4eabefb_12381cc3","line":6486,"updated":"2023-05-17 17:39:35.000000000","message":"maybe max_length\u003d1024","commit_id":"0a4e41701dbb5795ff4cab7a2c68a41c90bd51e7"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"c59fec4a4995da5851df0ec686a21f5076767ddc","unresolved":true,"context_lines":[{"line_number":6483,"context_line":"        raise ValueError"},{"line_number":6484,"context_line":""},{"line_number":6485,"context_line":""},{"line_number":6486,"context_line":"def cap_length(value, max_length):"},{"line_number":6487,"context_line":"    if value and len(value) \u003e max_length:"},{"line_number":6488,"context_line":"        if isinstance(value, bytes):"},{"line_number":6489,"context_line":"            return value[:max_length] + b\u0027...\u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"905d5204_e1a7f169","line":6486,"in_reply_to":"e4eabefb_12381cc3","updated":"2023-05-17 20:46:39.000000000","message":"IDK -- seems worth having that context in the caller when you\u0027re reading it.","commit_id":"0a4e41701dbb5795ff4cab7a2c68a41c90bd51e7"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"273437226ed13e4d8ff690e1629e1fdda521fdce","unresolved":true,"context_lines":[{"line_number":6489,"context_line":"            return value[:max_length] + b\u0027...\u0027"},{"line_number":6490,"context_line":"        else:"},{"line_number":6491,"context_line":"            return value[:max_length] + \u0027...\u0027"},{"line_number":6492,"context_line":"    return value"},{"line_number":6493,"context_line":""},{"line_number":6494,"context_line":""},{"line_number":6495,"context_line":"MD5_BLOCK_READ_BYTES \u003d 4096"}],"source_content_type":"text/x-python","patch_set":3,"id":"8cd95916_35b1c15c","line":6492,"updated":"2023-05-17 17:39:35.000000000","message":"i might have tried to spell this small function slightly differently so that there\u0027s a single return, but this is pretty clear.","commit_id":"0a4e41701dbb5795ff4cab7a2c68a41c90bd51e7"}],"swift/obj/ssync_sender.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"273437226ed13e4d8ff690e1629e1fdda521fdce","unresolved":true,"context_lines":[{"line_number":354,"context_line":"                    except UnicodeDecodeError:"},{"line_number":355,"context_line":"                        pass"},{"line_number":356,"context_line":"                raise exceptions.ReplicationException("},{"line_number":357,"context_line":"                    \u0027Unexpected response: %r\u0027 % utils.cap_length(line, 1024))"},{"line_number":358,"context_line":"        while True:"},{"line_number":359,"context_line":"            with exceptions.MessageTimeout("},{"line_number":360,"context_line":"                    self.daemon.http_timeout, \u0027missing_check line wait\u0027):"}],"source_content_type":"text/x-python","patch_set":3,"id":"834d31b4_6ae18a74","line":357,"updated":"2023-05-17 17:39:35.000000000","message":"we do some similar stuff with rsync log lines in replicator - any reason you zoomed into ssync?","commit_id":"0a4e41701dbb5795ff4cab7a2c68a41c90bd51e7"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"c59fec4a4995da5851df0ec686a21f5076767ddc","unresolved":true,"context_lines":[{"line_number":354,"context_line":"                    except UnicodeDecodeError:"},{"line_number":355,"context_line":"                        pass"},{"line_number":356,"context_line":"                raise exceptions.ReplicationException("},{"line_number":357,"context_line":"                    \u0027Unexpected response: %r\u0027 % utils.cap_length(line, 1024))"},{"line_number":358,"context_line":"        while True:"},{"line_number":359,"context_line":"            with exceptions.MessageTimeout("},{"line_number":360,"context_line":"                    self.daemon.http_timeout, \u0027missing_check line wait\u0027):"}],"source_content_type":"text/x-python","patch_set":3,"id":"12b52bb0_6c456e01","line":357,"in_reply_to":"834d31b4_6ae18a74","updated":"2023-05-17 20:46:39.000000000","message":"It\u0027s been so long, I really don\u0027t remember. Looks like there\u0027s also a spot in request_helpers, exceptions, slo, ... maybe some others?","commit_id":"0a4e41701dbb5795ff4cab7a2c68a41c90bd51e7"}]}
