)]}'
{"swift/common/request_helpers.py":[{"author":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"change_message_id":"2b7b4e2d6b9e0f384b6115b7f3e7f990c76ee7c0","unresolved":false,"context_lines":[{"line_number":441,"context_line":"        \u0027X-Object-ETag\u0027: original object m5sum"},{"line_number":442,"context_line":"    }"},{"line_number":443,"context_line":"    \"\"\""},{"line_number":444,"context_line":"    trailer_magic \u003d \u0027\\xfb\\xc5\\xd6\\xee\u0027"},{"line_number":445,"context_line":"    num_obj_size_bytes \u003d 24"},{"line_number":446,"context_line":"    num_etag_bytes \u003d 32"},{"line_number":447,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_8ec0c12c","line":444,"updated":"2014-08-07 21:58:06.000000000","message":"Can we use a random value each time? Using a fixed magic string feels like it\u0027s asking for curious users to come along and upload objects composed entirely of that fixed string in hopes of making Swift do something weird.","commit_id":"fd83dfdf8eb4bfb73eb0c0c9bccd88e6e2e0976c"},{"author":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"change_message_id":"2b7b4e2d6b9e0f384b6115b7f3e7f990c76ee7c0","unresolved":false,"context_lines":[{"line_number":445,"context_line":"    num_obj_size_bytes \u003d 24"},{"line_number":446,"context_line":"    num_etag_bytes \u003d 32"},{"line_number":447,"context_line":""},{"line_number":448,"context_line":"    trailer_size_bytes \u003d 0"},{"line_number":449,"context_line":""},{"line_number":450,"context_line":"    def __init__(self, payload_etag, orig_object_size, orig_object_etag):"},{"line_number":451,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_ced9d929","line":448,"updated":"2014-08-07 21:58:06.000000000","message":"use None; it\u0027s clearer IMO","commit_id":"fd83dfdf8eb4bfb73eb0c0c9bccd88e6e2e0976c"}],"swift/obj/server.py":[{"author":{"_account_id":5189,"name":"Yuan Zhou","email":"dunk007@gmail.com","username":"yuan-zhou"},"change_message_id":"1dcdc9eeb4d19298efc4492cfd56957b1a18990c","unresolved":false,"context_lines":[{"line_number":606,"context_line":"                    key.lower() in self.allowed_headers:"},{"line_number":607,"context_line":"                response.headers[key] \u003d value"},{"line_number":608,"context_line":"        if \u0027X-Object-Content-Length\u0027 in metadata:"},{"line_number":609,"context_line":"            response.etag \u003d metadata[\u0027X-Object-Content-Length\u0027]"},{"line_number":610,"context_line":"        else:"},{"line_number":611,"context_line":"            response.etag \u003d metadata[\u0027ETag\u0027]"},{"line_number":612,"context_line":"        if \u0027X-Object-ETag\u0027 in metadata:"}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_1bde023d","line":609,"updated":"2014-08-14 07:58:27.000000000","message":"should be response.content_length?","commit_id":"fd83dfdf8eb4bfb73eb0c0c9bccd88e6e2e0976c"}]}
