)]}'
{"id":"openstack%2Fswift~968180","triplet_id":"openstack%2Fswift~master~Ia7c619fe563ab89ff5b1beb03219e763a8798cc9","project":"openstack/swift","branch":"master","topic":"p-timestamp-test-cleanup","attention_set":{},"removed_from_attention_set":{"7847":{"account":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"last_update":"2025-11-24 22:52:42.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Ia7c619fe563ab89ff5b1beb03219e763a8798cc9","subject":"swob: add a date_header_format helper function","status":"MERGED","created":"2025-11-24 12:37:34.000000000","updated":"2025-11-24 22:53:34.000000000","submitted":"2025-11-24 22:52:42.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":6,"unresolved_comment_count":5,"has_review_started":true,"submission_id":"968180-p-timestamp-test-cleanup","meta_rev_id":"9e8d98181c3860d3ba5c9f48d6f4b60833080cdd","_number":968180,"virtual_id_number":968180,"owner":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2025-11-24 22:52:41.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2025-11-24 21:33:44.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2025-11-24 21:33:44.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-11-24 12:47:56.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"CC"},{"updated":"2025-11-24 13:52:49.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2025-11-24 21:33:44.000000000","updated_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"reviewer":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"state":"REVIEWER"}],"messages":[{"id":"ce94d2885c4ad3f6feafea6516be12cdccd7a77e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2025-11-24 12:37:34.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"cf0196f2903e83bad7b0b1ecdc0985c0d16b2d39","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-24 12:47:56.000000000","message":"Patch Set 1:\n\nBuild failed (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/34a1a22e9d954e86a30c6a7ca9cf8640\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/4e19082958034dd99f11cceec88261b2 : NODE_FAILURE Node(set) request d9db2f43a7184eefa405d0729069e2f4 failed in 0s","accounts_in_message":[],"_revision_number":1},{"id":"2dd183d7464c4f19b718422937fab88406cdd0ea","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-24 13:52:49.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/8b3d09ec8fd44c6995a23fb65c6d1276\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/5d5373d58b9241bfa9624e49b623693c : SUCCESS in 10m 28s\n- grenade https://zuul.opendev.org/t/openstack/build/d6f0a0aa31b14849bc98f40fb467974f : SUCCESS in 1h 06m 29s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/c86f89e83524466187792b60ae2833ef : SUCCESS in 33m 28s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/296f8b0061124899bfb603352c35d6fc : SUCCESS in 31m 41s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/5a88fb1cfd764e47b5d77a2fb346cbcf : SUCCESS in 36m 11s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/eb131155e8904a3e81c0b4400dcd3eb2 : SUCCESS in 18m 04s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/0f4cc2273bb747de867ab9af5c4aead4 : SUCCESS in 20m 34s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/5835b9cd42364f7ea9b9754fdc26a55a : SUCCESS in 21m 20s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/da663df142eb4a4ba3a8ae86ff038fc3 : SUCCESS in 10m 22s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/bf4158fe26be46758caefbe502fc1ac9 : SUCCESS in 17m 29s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/6ac35b3e58cc4c9fa5c32a1782e5274e : SUCCESS in 18m 45s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/e621fb5da8f4423bb6aed12ab269de54 : SUCCESS in 27m 34s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/8f51d2a4506d4170a81df71b5f1f706f : SUCCESS in 19m 27s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/2e616936797f4f0396f28131d708faec : SUCCESS in 15m 58s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/a9a1c15ecfa44ddbae098ac70a07057c : SUCCESS in 12m 14s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/d62f1431934849f6be7f3f656714e012 : SUCCESS in 18m 01s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/5246732832d846daa99813137f0a8839 : SUCCESS in 6m 30s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/963bb7fce5ca4d7b90ca4283a13897c6 : SUCCESS in 11m 48s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/5ad98380c8204c35a59a3b89f130c635 : SUCCESS in 11m 35s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/295c50988eea4ba2b2e7be36e9b01f85 : SUCCESS in 57m 46s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/0037a17297f545af8849e947087022d3 : SUCCESS in 34m 36s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/e2ee675575a94017baf69d2f1f1017a9 : SUCCESS in 52m 05s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/7542b8feb2cd41789146fb94fe9c450a : SUCCESS in 31m 59s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c596c042cf914a8caf48912a38f2a230 : SUCCESS in 3m 44s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/92c7fc08dabe403c96f97cb1fd8726e5 : SUCCESS in 18m 12s\n- tempest-integrated-object-storage-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/3208b008e09c4c51a98d3e0c92ad4f0e : SUCCESS in 58m 05s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/85eb4807a21a412ca016fceca1f00aa1 : SUCCESS in 1h 03m 03s","accounts_in_message":[],"_revision_number":1},{"id":"c5d704af2c01ffe1d47d0320abc7aa2d652c7362","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2025-11-24 14:32:42.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":2},{"id":"d1f05d9654fce81da8b84503b0f74fbb546d13ba","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-24 15:24:28.000000000","message":"Patch Set 2:\n\nBuild failed (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/02b087beb4ca498d9aa7f78c6bc2c8a0\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/a9ca82bbaa564a44b616f0059e0ffb19 : NODE_FAILURE Node(set) request 23d7972d6fd54c008c7d1d4bba2c8f50 failed in 0s","accounts_in_message":[],"_revision_number":2},{"id":"477b9a520301b73753147da0cf25302035be8e13","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-24 15:56:59.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e486cb73a11242229581b421d370e20c\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e5a1178f8d4f499d8a4eb241e45a42f7 : SUCCESS in 7m 44s\n- grenade https://zuul.opendev.org/t/openstack/build/b3159a80c1da469086fa014141100905 : SUCCESS in 1h 00m 52s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/9107b3293e4f48f997018ea5cab21763 : SUCCESS in 49m 24s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/ec1f702d37d04693969f3a6148d9da5a : SUCCESS in 46m 52s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/caea548bdbbe4029b002bdfbca0e92c5 : SUCCESS in 1h 12m 26s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/5daeeedf42da4d1ba7a46b01c4f06004 : SUCCESS in 19m 26s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/9cb297b3286944de853cf9afaaebcb24 : SUCCESS in 10m 31s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/c9c61093074e471a8b03e91424a537f9 : SUCCESS in 19m 37s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/452ab7fa2afa4623a191a3aac12d96c8 : SUCCESS in 8m 32s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/fb372513e2fa44febab0122faec1bc1a : SUCCESS in 24m 38s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/0e0acbb589ea4daaaa3336851630511f : SUCCESS in 8m 19s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/596fc6c4c31e47ea81c5ff70d250c113 : SUCCESS in 29m 25s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/3aa321a043e4415cbd6872bc1ae46677 : SUCCESS in 29m 41s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/4522e8e40d364b8ab7339d9caa050898 : SUCCESS in 14m 16s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/640d8e3704f446ce8b133951f0f4a348 : SUCCESS in 14m 39s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/42da4ea32519457fb8af6a276717bceb : SUCCESS in 15m 48s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/729f4e5762c6487cb6ae206afe272fb1 : SUCCESS in 3m 55s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/c442529eab654c11927bdf9b9d867d78 : SUCCESS in 11m 38s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/afc71ac5ae1f4e51bd9c2065de9205d2 : SUCCESS in 10m 47s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/d05ef7b421f242ea8b64050c61983f80 : SUCCESS in 34m 12s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/fb1f45e96b50449fa34ee561bb97aad9 : SUCCESS in 53m 20s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/32acef7788a74e48b9cfefd2b4e58a70 : SUCCESS in 46m 38s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/9c825cb125b7494d9ae85c39f4e69846 : SUCCESS in 26m 47s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c1c4d48e108148d59afd212405c38eaa : SUCCESS in 2m 43s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/d46b508076534aa7a64728e51778b7fb : SUCCESS in 19m 24s\n- tempest-integrated-object-storage-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/fad406cf45bd431294fc706d716a70e2 : SUCCESS in 49m 59s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/79390aa07bc2420abe838eb2c8448e7f : SUCCESS in 59m 44s","accounts_in_message":[],"_revision_number":2},{"id":"6260d75ffaf71af4c1353059107435d00fc7bc1f","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2025-11-24 21:33:44.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1\n\n(6 comments)","accounts_in_message":[],"_revision_number":2},{"id":"bbfc26b10bd1f9d487c054422923e20df56464f6","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-24 21:34:23.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"293c324c72d9ec4ad03216ee81584c66b3ca42cb","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-24 22:52:41.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/894ed7f513b64c078fdb5065958fcec1\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/535aa21f3bd1464c8972d45b933fac6d : SUCCESS in 12m 06s\n- grenade https://zuul.opendev.org/t/openstack/build/3da240b87dd44a3b81130ae85f4e471f : SUCCESS in 44m 15s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/c40871b0e552430a8fc04ba4d7c31156 : SUCCESS in 58m 30s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/23c36b633c28428fb6df32675162c2e2 : SUCCESS in 32m 15s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/4b7837f842cc40279439fec8393b6d91 : SUCCESS in 1h 06m 56s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/35a8bc4170a04cf68f98013346966956 : SUCCESS in 5m 49s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/87f8eaff18cb471a81fbb88b8543dd0d : SUCCESS in 22m 50s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/c506fb531fda425082acd12df167e116 : SUCCESS in 20m 32s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/63c8c20692de4ae79e1bea9a2ee010dc : SUCCESS in 29m 04s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/0fcfd9cb31ea42a5be4a4dbfdd24650a : SUCCESS in 16m 04s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/df60a62e8f1f4954b42111a62b5e02ab : SUCCESS in 13m 46s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/cf426fe796094ba7bc9a96a4a0244c81 : SUCCESS in 12m 48s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/2bb7132bad0c4a418bfca1727341089e : SUCCESS in 18m 24s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/d13fa65662ff4d679421a9f2ed04ef7a : SUCCESS in 6m 20s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/186e63b5297c4f71879e4c2c12ebbb65 : SUCCESS in 8m 17s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/f8b0cf276207426598199bf611afdffd : SUCCESS in 55m 16s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/7bc124d07ad54e28bd100ef3c18b7be7 : SUCCESS in 50m 49s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/83defeda01714b71a3bc3c9c14db93dd : SUCCESS in 43m 16s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/5501346825eb44c790719556079d5e3f : SUCCESS in 21m 12s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/df9c24ac330941ceb31fed9c123cf952 : SUCCESS in 3m 45s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/34a5a7b2126546b6a2b1b667f4f62a76 : SUCCESS in 18m 15s\n- tempest-integrated-object-storage-ubuntu-jammy https://zuul.opendev.org/t/openstack/build/b21611ff4e8643ebb0e46f05a806264f : SUCCESS in 42m 27s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/dea4262596954fa19f415813734474bb : SUCCESS in 54m 56s","accounts_in_message":[],"_revision_number":2},{"id":"b9260ba3aa4c46c507a582671430fbda9a4fd634","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-24 22:52:42.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"9e8d98181c3860d3ba5c9f48d6f4b60833080cdd","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-24 22:53:34.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/cf6e848f53ff4cfa86ea1c4f59df63de\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c9f64e4663d94e5f86c8cd84e3b24fb9 : SUCCESS in 41s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/ebb37a332eb94067914f8317c885edfe : SUCCESS in 40s (non-voting)","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"96e7db0b3ebf81fe49167e52a3f559aca3f2a66d","revisions":{"681bbcf34ba9810ee2e422d8b499d909a6375eb7":{"kind":"REWORK","_number":1,"created":"2025-11-24 12:37:34.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/80/968180/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/80/968180/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/80/968180/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/80/968180/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/80/968180/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/80/968180/1"}}},"commit":{"parents":[{"commit":"676e68fc0f563f8971cb97e0b862518fbb08d7c3","subject":"Merge \"trivial: tests: add failure context to flakey assertion\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/676e68fc0f563f8971cb97e0b862518fbb08d7c3"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2025-11-24 11:17:34.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2025-11-24 12:16:50.000000000","tz":0},"subject":"swob: add a date_header_format helper function","message":"swob: add a date_header_format helper function\n\nThere\u0027s many places where a Last-Modified header value is constructed\nfrom a time value. This patch replaces the duplicate code with a\nhelper function that returns the correctly formatted header for a\ngiven number of seconds.\n\nChange-Id: Ia7c619fe563ab89ff5b1beb03219e763a8798cc9\nSigned-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/681bbcf34ba9810ee2e422d8b499d909a6375eb7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/681bbcf34ba9810ee2e422d8b499d909a6375eb7"}]},"branch":"refs/heads/master"},"96e7db0b3ebf81fe49167e52a3f559aca3f2a66d":{"kind":"REWORK","_number":2,"created":"2025-11-24 14:32:42.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/80/968180/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/80/968180/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/80/968180/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/80/968180/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/80/968180/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/80/968180/2"}}},"commit":{"parents":[{"commit":"676e68fc0f563f8971cb97e0b862518fbb08d7c3","subject":"Merge \"trivial: tests: add failure context to flakey assertion\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/676e68fc0f563f8971cb97e0b862518fbb08d7c3"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2025-11-24 11:17:34.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2025-11-24 14:32:25.000000000","tz":0},"subject":"swob: add a date_header_format helper function","message":"swob: add a date_header_format helper function\n\nThere\u0027s many places where a Last-Modified header value is constructed\nfrom a time value. This patch replaces the duplicate code with a\nhelper function that returns the correctly formatted header for a\ngiven number of seconds.\n\nChange-Id: Ia7c619fe563ab89ff5b1beb03219e763a8798cc9\nSigned-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/96e7db0b3ebf81fe49167e52a3f559aca3f2a66d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/96e7db0b3ebf81fe49167e52a3f559aca3f2a66d"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{}}}]}
