)]}'
{"id":"openstack%2Fpython-ironicclient~981228","triplet_id":"openstack%2Fpython-ironicclient~master~I0390adb9ed116e47a2e7b863b93bf0367b8bc704","project":"openstack/python-ironicclient","branch":"master","topic":"pyproject","attention_set":{},"removed_from_attention_set":{"15334":{"account":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"last_update":"2026-04-08 09:41:47.000000000","reason":"Change was abandoned"}},"hashtags":[],"change_id":"I0390adb9ed116e47a2e7b863b93bf0367b8bc704","subject":"Run mypy from tox","status":"ABANDONED","created":"2026-03-19 10:31:37.000000000","updated":"2026-04-08 09:41:47.000000000","total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"848bdee5728e81327a430f1e7db2f8e6387c6277","_number":981228,"virtual_id_number":981228,"owner":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2026-03-19 11:54:46.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":"","value":1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_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":{"all":[{"_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":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Do Not Backport"," 0":"Backport Review Needed","+1":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-03-19 10:44:45.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":"115eb1391ac422cf1a330fe08f9f807a08295a46","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-19 10:31:37.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"b44ea4e6458c20be9dc1820d73aae4453c60fdfa","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-19 10:44:45.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/1cab5fc249dc49b088e15286e899d927\n\n- requirements-check https://zuul.opendev.org/t/openstack/build/e71f9ef76d8f4755b2111cfc150bb3ce : SUCCESS in 2m 50s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/94134443442948d4b4492c5bbd503d65 : SUCCESS in 5m 44s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d3397539fb1e4a10a35738a75ab3f5f6 : SUCCESS in 3m 19s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/c3d592ce2f7a400985b41d9825790414 : SUCCESS in 3m 28s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/085039cbfa954164a50ecc41e7797643 : SUCCESS in 3m 19s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/678278bc67594233a5cf3dbf50a06dc8 : SUCCESS in 7m 36s (non-voting)\n- openstackclient-check-plugins https://zuul.opendev.org/t/openstack/build/36cd9e70396d45f0a9dd797e374002b9 : FAILURE in 6m 52s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/6e84b15f8a7e49dbaff5a9ee49dccaf4 : FAILURE in 3m 12s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/14d08bdd3f7f40d8ae28e5ea59ce80f3 : SUCCESS in 3m 57s\n- ironicclient-tox-codespell https://zuul.opendev.org/t/openstack/build/075c31110b4f47768e143ae16b0dbf91 : FAILURE in 3m 11s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"233ad04328af765b6838eaada5e501f872604d9e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-19 11:40:33.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified-1\n","accounts_in_message":[],"_revision_number":2},{"id":"9b9f48d52ca204cb8382ed77bfbe61b335c6467b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-19 11:54:46.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b8e2dc24d17a43b78218a5376269d2b5\n\n- requirements-check https://zuul.opendev.org/t/openstack/build/5ecc451ed94242b6982de226d82bcfb1 : SUCCESS in 1m 59s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/0a791d7302ad41918c5770c3e85024d0 : SUCCESS in 4m 00s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8482cd548e9b4840b50c9dd11aa21d41 : SUCCESS in 3m 09s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/0c1814854c024b899413b77a03dbfa00 : SUCCESS in 3m 17s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/a6db8ccb504941ed804bb2b0f8df4b6f : SUCCESS in 3m 31s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/80fb19822c774e4ba73457b861ca8229 : SUCCESS in 4m 08s (non-voting)\n- openstackclient-check-plugins https://zuul.opendev.org/t/openstack/build/32fa81c1170949d59f839494adb27991 : SUCCESS in 5m 38s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e6df136f9d34445288a4fba8a21c0bf4 : SUCCESS in 8m 05s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/39f1c5789a4b470590f6be8416cb9c70 : SUCCESS in 3m 06s\n- ironicclient-tox-codespell https://zuul.opendev.org/t/openstack/build/250c484307d04756a1ebc627e11c0fe7 : FAILURE in 2m 08s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"848bdee5728e81327a430f1e7db2f8e6387c6277","tag":"autogenerated:gerrit:abandon","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-04-08 09:41:47.000000000","message":"Abandoned\n\nDone elsewhere","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"c6e626f3ef3a25dd58826babd336125c9daea8b4","revisions":{"f05365f61847f09572e2242ef0209421df96cc3b":{"kind":"REWORK","_number":1,"created":"2026-03-19 10:31:37.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/28/981228/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-ironicclient","ref":"refs/changes/28/981228/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-ironicclient refs/changes/28/981228/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-ironicclient refs/changes/28/981228/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-ironicclient refs/changes/28/981228/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-ironicclient refs/changes/28/981228/1"}}},"commit":{"parents":[{"commit":"cfd57b503e90bd7dde3e8f81133a204159cd57f7","subject":"Migrate coverage configuration to pyproject","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-ironicclient/commit/cfd57b503e90bd7dde3e8f81133a204159cd57f7"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-19 10:24:46.000000000","tz":60},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-19 10:31:08.000000000","tz":60},"subject":"Run mypy from tox","message":"Run mypy from tox\n\nFor mypy (or any type checker) to work best, it needs access to all the\ndependencies of the package under test. Running mypy via pre-commit\nwould therefore require us to duplicate our dependency list in multiple\nplaces and to use strict lower bounds since pre-commit does not have\nconstraints support. Instead, run mypy via tox as we now do for other\nprojects. This allows us to take advantage of tox\u0027s dependency\nmanagement infrastructure, to ensure we always get the latest and\ngreatest version of a package allowed by upper-constraints, and ensures\nmypy is actually run in the gate.\n\nNote that while we\u0027re here, we slightly reshuffle tox.ini to gather\nrelated targets together (docs, pdf-docs, and releasenotes; pep8,\nmypy and the flake8 configuration).\n\nChange-Id: I0390adb9ed116e47a2e7b863b93bf0367b8bc704\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-ironicclient/commit/f05365f61847f09572e2242ef0209421df96cc3b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-ironicclient/commit/f05365f61847f09572e2242ef0209421df96cc3b"}]},"branch":"refs/heads/master"},"c6e626f3ef3a25dd58826babd336125c9daea8b4":{"kind":"REWORK","_number":2,"created":"2026-03-19 11:40:33.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/28/981228/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-ironicclient","ref":"refs/changes/28/981228/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-ironicclient refs/changes/28/981228/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-ironicclient refs/changes/28/981228/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-ironicclient refs/changes/28/981228/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-ironicclient refs/changes/28/981228/2"}}},"commit":{"parents":[{"commit":"3ddee608eaf9f31c0b4fecf950e372c0574663b2","subject":"Migrate coverage configuration to pyproject","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-ironicclient/commit/3ddee608eaf9f31c0b4fecf950e372c0574663b2"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-19 10:24:46.000000000","tz":60},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-19 11:29:47.000000000","tz":60},"subject":"Run mypy from tox","message":"Run mypy from tox\n\nFor mypy (or any type checker) to work best, it needs access to all the\ndependencies of the package under test. Running mypy via pre-commit\nwould therefore require us to duplicate our dependency list in multiple\nplaces and to use strict lower bounds since pre-commit does not have\nconstraints support. Instead, run mypy via tox as we now do for other\nprojects. This allows us to take advantage of tox\u0027s dependency\nmanagement infrastructure, to ensure we always get the latest and\ngreatest version of a package allowed by upper-constraints, and ensures\nmypy is actually run in the gate.\n\nNote that while we\u0027re here, we slightly reshuffle tox.ini to gather\nrelated targets together (docs, pdf-docs, and releasenotes; pep8,\nmypy and the flake8 configuration).\n\nChange-Id: I0390adb9ed116e47a2e7b863b93bf0367b8bc704\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-ironicclient/commit/c6e626f3ef3a25dd58826babd336125c9daea8b4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-ironicclient/commit/c6e626f3ef3a25dd58826babd336125c9daea8b4"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","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":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{}}}]}
