)]}'
{"id":"openstack%2Foslo.limit~979554","triplet_id":"openstack%2Foslo.limit~master~I8cb612ebf8ab0e23002bd7d7289656d651cdbdc2","project":"openstack/oslo.limit","branch":"master","topic":"linter-sync","hashtags":[],"change_id":"I8cb612ebf8ab0e23002bd7d7289656d651cdbdc2","subject":"ruff: Configure hacking as external linter","status":"MERGED","created":"2026-03-09 12:16:46.000000000","updated":"2026-03-09 15:09:05.000000000","submitted":"2026-03-09 15:07:40.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"979554-linter-sync","meta_rev_id":"8958daabaa8ca11e4788104dd3165a35dd7c87c2","_number":979554,"virtual_id_number":979554,"owner":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-03-09 15:07:39.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"all":[{"value":2,"date":"2026-03-09 12:48:04.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"all":[{"value":1,"date":"2026-03-09 12:48:04.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do Not Backport","-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport","+2":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-03-09 13:16:14.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"}],"messages":[{"id":"dfc16905396558558efe9ec38ada10706a67fcc1","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-09 12:16:46.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"f397de2300f36274d810031515f9f6394a3ebd3f","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-09 12:48:04.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"8a64a3e38d13630e0fc5cc4d80e5347d0cc2cdbc","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-09 13:16:14.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b50cdb9b138a49258ee43f59d5f77a29\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/9e563c65e6e64906b1469b692fcbba2b : SUCCESS in 2m 36s\n- requirements-check https://zuul.opendev.org/t/openstack/build/acccd35623834547b528ef1b04905d30 : SUCCESS in 2m 19s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/d9e05fb5211d4b9ba8931dd8033de19d : SUCCESS in 3m 39s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/76db4bd75859441fbe655e2229ea58e1 : SUCCESS in 56m 59s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/94945b91fdc2403a8a224917e219c2a8 : SUCCESS in 3m 47s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/f7c6e687ecf94395850ecde554e8bf31 : SUCCESS in 2m 56s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/77a329714490490699bb9cf857ecb118 : SUCCESS in 3m 23s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/b972da1259d84b18a61b129a39d56245 : SUCCESS in 4m 10s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/395d4fa75a314796bdcd7e4de989a2f2 : SUCCESS in 2m 38s\n- oslo-limit-functional-devstack https://zuul.opendev.org/t/openstack/build/4be25296359c4138aeb16289caa6abb4 : SUCCESS in 21m 05s","accounts_in_message":[],"_revision_number":1},{"id":"38dc7ca33ab23780863c56a4c73920853a897232","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-09 13:16:36.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"1dd9d2eda8869fd5aca347f10bf2d71540a36b85","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-09 15:07:39.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/9e6cd5b383f34bce87fa22bacca0245b\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/79eebb5afe464c3aa4bd8ffe5c48c55f : SUCCESS in 3m 17s\n- requirements-check https://zuul.opendev.org/t/openstack/build/3281a137df75473d9a18d950e1708a44 : SUCCESS in 2m 26s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/822f914497ac4b7499c6291881a0c70d : SUCCESS in 1h 46m 05s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/2f7bbd40904a43da86fd86a21c5fefa6 : SUCCESS in 4m 16s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/06766e2c91c0406ea38fb9bf1cc59d97 : SUCCESS in 3m 29s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/cb87a64be00d4ff3a3597b603c15b7a4 : SUCCESS in 4m 06s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8d9d743c3dda4e61b1833eb469bb8b03 : SUCCESS in 7m 19s\n- oslo-limit-functional-devstack https://zuul.opendev.org/t/openstack/build/27bff1f0a6e34dd68c1701a17091cea2 : SUCCESS in 15m 52s","accounts_in_message":[],"_revision_number":1},{"id":"3a51aad717dc9400f2d20a3be702dd8c1c77367b","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-09 15:07:40.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"8958daabaa8ca11e4788104dd3165a35dd7c87c2","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-09 15:09:05.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/54066a2b0c8e4d8ba6a0a1b0084cf101\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/498587d9363c4cea8a80a7cc6803028d : SUCCESS in 57s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"8cc6b0a0e18531af98006d590e08d20628abe444","revisions":{"8cc6b0a0e18531af98006d590e08d20628abe444":{"kind":"REWORK","_number":1,"created":"2026-03-09 12:16:46.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/54/979554/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.limit","ref":"refs/changes/54/979554/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.limit refs/changes/54/979554/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.limit refs/changes/54/979554/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.limit refs/changes/54/979554/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.limit refs/changes/54/979554/1"}}},"commit":{"parents":[{"commit":"e860d36bdf6ccd45ec46c96db01f877f87bcce93","subject":"Update master for stable/2026.1","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.limit/commit/e860d36bdf6ccd45ec46c96db01f877f87bcce93"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-09 12:15:43.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-09 12:15:43.000000000","tz":0},"subject":"ruff: Configure hacking as external linter","message":"ruff: Configure hacking as external linter\n\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\nChange-Id: I8cb612ebf8ab0e23002bd7d7289656d651cdbdc2\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.limit/commit/8cc6b0a0e18531af98006d590e08d20628abe444"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.limit/commit/8cc6b0a0e18531af98006d590e08d20628abe444"}]},"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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}},{"label":"Backport-Candidate","status":"MAY"}]}],"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":"Backport-Candidate","description":"Backport candidate status","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"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":{}}}]}
