)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"d2d1f6fc4b1bb743872797ca3267d3ab8a9e5629","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Alistair Coles \u003calistairncoles@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-05-14 14:40:00 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"sq: timestamps: add Timestamp.version property"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Id36a681f512b0eb7ee70a4b645cace107038c199"},{"line_number":10,"context_line":"Signed-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"d5831f93_ffb59e30","line":7,"updated":"2026-05-14 15:33:47.000000000","message":"i think this is a GREAT idea!","commit_id":"a20f20027d5529d242fceed9c6be632ff3aa89c4"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"d2d1f6fc4b1bb743872797ca3267d3ab8a9e5629","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0890f8bb_18f13a1d","updated":"2026-05-14 15:33:47.000000000","message":"i worry this might just be to satisfy *me* - i\u0027m not sure if ANY other people actually think this is helpful","commit_id":"a20f20027d5529d242fceed9c6be632ff3aa89c4"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"c8e6bb6f3b835b19a15019450f7e1e84cb75b76c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"2b706d78_4242378d","in_reply_to":"0890f8bb_18f13a1d","updated":"2026-05-15 08:39:30.000000000","message":"\u003e i worry this might just be to satisfy me\n\npatches don\u0027t get merged until reviewers are satisfied ;-)","commit_id":"a20f20027d5529d242fceed9c6be632ff3aa89c4"}],"swift/common/utils/timestamp.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"d2d1f6fc4b1bb743872797ca3267d3ab8a9e5629","unresolved":true,"context_lines":[{"line_number":466,"context_line":"        elif self.hex_part \u003c 0x3000000000000000:"},{"line_number":467,"context_line":"            return 2"},{"line_number":468,"context_line":"        else:"},{"line_number":469,"context_line":"            return None"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"    @property"},{"line_number":472,"context_line":"    def _offset(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"df39375d_6ba8da9a","line":469,"updated":"2026-05-14 15:33:47.000000000","message":"\u003e None if a parsed timestamp has an unrecognised version.\n\nSeems not terrible!  Or even ValueError - it\u0027s really hard to say what\u0027s going to be most useful thing for the code to do here; forward compat is a tricky problem!","commit_id":"a20f20027d5529d242fceed9c6be632ff3aa89c4"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"d2d1f6fc4b1bb743872797ca3267d3ab8a9e5629","unresolved":true,"context_lines":[{"line_number":492,"context_line":"            max_offset \u003d 0x1fffffffffffffff"},{"line_number":493,"context_line":"        elif self.version \u003d\u003d 2:"},{"line_number":494,"context_line":"            max_offset \u003d 0xffffff"},{"line_number":495,"context_line":"        else:"},{"line_number":496,"context_line":"            # we don\u0027t know how many hex digits have been allocated to offset"},{"line_number":497,"context_line":"            # in a future version of this class so it is not safe to modify it"},{"line_number":498,"context_line":"            raise ValueError(\u0027Cannot modify offset in an unrecognised hex \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"b8e1c0af_c7e423b6","line":495,"updated":"2026-05-14 15:33:47.000000000","message":"heh,\n\n```\n@property\ndef max_offset(self):\n    ...\n    \n```\n\n😀","commit_id":"a20f20027d5529d242fceed9c6be632ff3aa89c4"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"d2d1f6fc4b1bb743872797ca3267d3ab8a9e5629","unresolved":true,"context_lines":[{"line_number":509,"context_line":"        This is here for backwards compatibility only. Callers should not"},{"line_number":510,"context_line":"        attach any meaning to the absolute value of offset."},{"line_number":511,"context_line":"        \"\"\""},{"line_number":512,"context_line":"        if self.version is None:"},{"line_number":513,"context_line":"            # we don\u0027t know how many hex digits have been allocated to offset"},{"line_number":514,"context_line":"            # in a future version of this class so it is not safe to return it"},{"line_number":515,"context_line":"            raise AttributeError(\u0027Cannot access offset in an unrecognised \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"4649f285_315408ab","line":512,"updated":"2026-05-14 15:33:47.000000000","message":"ah; well I see we *use* `version is None` - in this context I think this looks BETTER than\n\n```\ntry:\n    self.version\nexcept ValueError:\n    # we know *exactly* what this ValueError means\n    ...\n```","commit_id":"a20f20027d5529d242fceed9c6be632ff3aa89c4"}]}
