)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"e6bd0ee0ff4bd638c8810b80535cd218b33d3c45","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"py3: Fix expirer container generation"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Idbc13b90a565c4e64cef9035dbcd60872576727a"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"bf51134e_2a8f21cd","line":9,"updated":"2020-06-15 15:10:59.000000000","message":"Maybe there doesn\u0027t need to be a bug?  at some point people are going to start running production deployments on py3 and we\u0027ll need to be able to track issues to versions...","commit_id":"53beecf060e7d3cc31d4783eb2568890a05a9214"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"76aabc34d869061a67a7e513fb1d6c60ffcdb95f","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"py3: Fix expirer container generation"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Idbc13b90a565c4e64cef9035dbcd60872576727a"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"bf51134e_d0cbb2a2","line":9,"in_reply_to":"bf51134e_2a8f21cd","updated":"2020-06-15 16:10:48.000000000","message":"Oh, it absolutely needs a bug, especially since I want to backport it to ussuri and train.","commit_id":"53beecf060e7d3cc31d4783eb2568890a05a9214"}],"swift/common/utils.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"e6bd0ee0ff4bd638c8810b80535cd218b33d3c45","unresolved":false,"context_lines":[{"line_number":4402,"context_line":"    \"\"\""},{"line_number":4403,"context_line":"    shard_int \u003d int(hash_path(acc, cont, obj), 16) % 100"},{"line_number":4404,"context_line":"    return normalize_delete_at_timestamp("},{"line_number":4405,"context_line":"        int(x_delete_at) // expirer_divisor * expirer_divisor - shard_int)"},{"line_number":4406,"context_line":""},{"line_number":4407,"context_line":""},{"line_number":4408,"context_line":"class _MultipartMimeFileLikeObject(object):"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_ca9e6506","line":4405,"updated":"2020-06-15 15:10:59.000000000","message":"so this was a valid timestamp, but there was no \"bucketization\" going on","commit_id":"53beecf060e7d3cc31d4783eb2568890a05a9214"}]}
