)]}'
{"id":"openstack%2Foslo.versionedobjects~981482","triplet_id":"openstack%2Foslo.versionedobjects~master~I8e7a5e13f4810db4bced3b141a8c20a8caabf14f","project":"openstack/oslo.versionedobjects","branch":"master","topic":"typing","attention_set":{},"removed_from_attention_set":{"9708":{"account":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"last_update":"2026-04-08 12:14:18.000000000","reason":"Change was submitted"},"15334":{"account":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"last_update":"2026-04-08 10:21:46.000000000","reason":"\u003cGERRIT_ACCOUNT_15334\u003e replied on the change","reason_account":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}}},"hashtags":[],"change_id":"I8e7a5e13f4810db4bced3b141a8c20a8caabf14f","subject":"Add mypy plugin","status":"MERGED","created":"2026-03-20 11:22:33.000000000","updated":"2026-04-08 12:14:18.000000000","submitted":"2026-04-08 12:14:18.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":1,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"981482-typing","meta_rev_id":"b5f339c1a0b9dbba4083b2802851e1f2f852098f","_number":981482,"virtual_id_number":981482,"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":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-04-08 12:14:18.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}],"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":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2026-04-08 10:21:46.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}],"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":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2026-04-08 10:21:46.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"}],"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":[{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"}],"reviewers":{"REVIEWER":[{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},{"_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-20 12:50:06.000000000","updated_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"reviewer":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"state":"REVIEWER"},{"updated":"2026-03-20 13:19:07.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":"886479700e9b6a8becbf3b46a064bcd58960c663","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-20 11:22:33.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"b050f5ec52dd1a0892f3e86fefbd9527295b0493","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-20 13:19:07.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/f4bb76e2df294f9584f1bfb2113d680f\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/31265a4345554b92895bb0684eae7c75 : SUCCESS in 2m 38s\n- requirements-check https://zuul.opendev.org/t/openstack/build/7b765899946a4d5da87b067e35ff0373 : SUCCESS in 2m 07s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/1d0d49a6a8584378bb3dde0ca076ea49 : SUCCESS in 1h 33m 13s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c684baf9a740428fb3027db00c5cf782 : SUCCESS in 2m 46s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/db1a815284864804a26c4b04df8579f7 : SUCCESS in 3m 11s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/7d7663e9bcfa4780bd1dc79c2c5163d3 : SUCCESS in 3m 27s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/b458cb476e1f4e999646e71b887af8ba : SUCCESS in 5m 39s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/356af564234f4587a47dad1321f2382c : SUCCESS in 3m 21s\n- oslo.versionedobjects-src-grenade-multinode https://zuul.opendev.org/t/openstack/build/28ff5064ca884acfbde62783b3937bee : SUCCESS in 1h 03m 21s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"1e46e70acd5feed8ea78a57dca8a2c03e8988a9d","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-20 14:55:29.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":2},{"id":"69ba14645e3619c70dfe7da4cd7f691f097802e7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-20 17:48:36.000000000","message":"Patch Set 2: 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/7fb9deab06aa492faf19fa277375ba3f\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/4efb92921199416eb19fb3f283818f23 : SUCCESS in 2m 25s\n- requirements-check https://zuul.opendev.org/t/openstack/build/6e9b388f430b4d0491e489a7310f3c83 : SUCCESS in 2m 19s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/b26eaa7cfbe044f3a773d8f260183f0b : FAILURE in 1h 28m 49s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/023dde3009b9407b8a11b4a0ce6e6e2c : SUCCESS in 5m 13s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/989b3181e74b45d2be0c8a891afb4ec1 : SUCCESS in 3m 31s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/7e219b705d0947a09e90b4d5201b0e9a : SUCCESS in 3m 49s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/3e3d5e01a24941e795c69aaaddf71559 : SUCCESS in 7m 38s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c0c26585dcdc4b16a6ac246ec19c1fb6 : SUCCESS in 3m 28s\n- oslo.versionedobjects-src-grenade-multinode https://zuul.opendev.org/t/openstack/build/6e7ffeb31a294aaab461673fcd1b3336 : SUCCESS in 34m 10s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"11039c9ece6c237220d8a5be81488a1bb3791c18","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-23 16:50:33.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"dec6668d1c575deec3d9ba9af04a94edaa87a375","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-23 17:20:45.000000000","message":"Uploaded patch set 3: Patch Set 2 was rebased.\n\nOutdated Votes:\n* Verified-1\n","accounts_in_message":[],"_revision_number":3},{"id":"1be51c3f37aac106ee88992603bcde97453412fc","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-23 19:29:16.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/9833855bfa08490090dc7b43f87355d9\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/1147e4f3742343ea849eda295525c007 : SUCCESS in 3m 03s\n- requirements-check https://zuul.opendev.org/t/openstack/build/23218ce89cce47fc8591b8f2719a3cac : SUCCESS in 2m 06s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/8a125222b6c84c018883cdedd38f5840 : SUCCESS in 1h 56m 18s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/182eb3415da44fef94f140fa9381722c : SUCCESS in 3m 30s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/b6612dbaaeac42c689dad719f1b3a04f : SUCCESS in 2m 18s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/5faa5efe462047b19ce021e5260cbb15 : SUCCESS in 3m 25s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/e1eb49dc288642fc9f47bb1e8623a051 : SUCCESS in 5m 49s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/0923f992f1c74dc18ae9694a24438ab4 : SUCCESS in 5m 41s\n- oslo.versionedobjects-src-grenade-multinode https://zuul.opendev.org/t/openstack/build/2a5362b5837248d99006b2057e644309 : SUCCESS in 1h 21m 24s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"5cf82c4777fc5605e311926f929e19bc05c8e4b4","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-24 12:15:28.000000000","message":"Uploaded patch set 4: Patch Set 3 was rebased.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":4},{"id":"68cd14f14918bbd1f3aebe22b3ea8940d832bd52","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-24 14:08:36.000000000","message":"Patch Set 4: 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/85143dbd4ed34508a9e3c628f359389a\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/f5e2d3dedb954a48a00d7a5b580b006d : SUCCESS in 5m 48s\n- requirements-check https://zuul.opendev.org/t/openstack/build/a7f19fa5d5f0418cbf526ad9ca6b0ddf : SUCCESS in 2m 13s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/4a958205c15b4fe1a597935418b97004 : POST_FAILURE in 1h 41m 12s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/27bfaec72efa4e809abac52925c2b16d : SUCCESS in 4m 15s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/bb73bc974f05449db27864c745473513 : SUCCESS in 4m 17s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/67c983a653ea43b28139bcce2333de6b : SUCCESS in 3m 34s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/3e33ccb15d5d4c9fa93fc96f0951e2dd : POST_FAILURE in 5m 49s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/5e47d556fe75403faf8cff4cc0b121f4 : SUCCESS in 3m 41s\n- oslo.versionedobjects-src-grenade-multinode https://zuul.opendev.org/t/openstack/build/39df14e705c94557b46b888da710c7d1 : POST_FAILURE in 1h 10m 48s (non-voting)","accounts_in_message":[],"_revision_number":4},{"id":"0844d8f7420c77fe5547f9b49dcb5e0bb0e3dd06","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-25 10:36:11.000000000","message":"Uploaded patch set 5: Patch Set 4 was rebased.\n\nOutdated Votes:\n* Verified-1\n","accounts_in_message":[],"_revision_number":5},{"id":"a3c89c3ce329b4447c7923e05fac15c2f395a3eb","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-25 12:32:13.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/774bc9262c0647e189907d8bcf2d1f48\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/8611a275d3df444b9221be6b1747f219 : SUCCESS in 2m 51s\n- requirements-check https://zuul.opendev.org/t/openstack/build/b53347b4d8d848a6b6aeedf9f49a0f14 : SUCCESS in 2m 28s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/cbce4e66ff594e348ddeda9523f2f7ae : SUCCESS in 1h 50m 15s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0a467e38c2f94dadb726ed1e3b0fc54e : SUCCESS in 2m 32s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/6a9cf1ac6ab14e569242fcda494fc286 : SUCCESS in 3m 48s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/3af435786e874ee7acb5e0bea1ea6112 : SUCCESS in 2m 28s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/6f82ab2f624649ff98278107a8f58e74 : SUCCESS in 4m 48s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/babc48e130cd457592cf24983b15d905 : SUCCESS in 4m 53s\n- oslo.versionedobjects-src-grenade-multinode https://zuul.opendev.org/t/openstack/build/495ec29243b84e308cbc121869e4f8ed : SUCCESS in 1h 09m 35s (non-voting)","accounts_in_message":[],"_revision_number":5},{"id":"d658d1e09f32a44091cd9ae1b37dd14e1f1a1866","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-04-08 10:21:46.000000000","message":"Patch Set 5: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":5},{"id":"e204aa171cf4fe0d7f192e190598a17a374f8299","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-08 10:22:14.000000000","message":"Patch Set 5: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":5},{"id":"31f92abd92838cc1a94297194ee55ccd9442f9c5","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-08 12:14:18.000000000","message":"Patch Set 5: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/58ee19c0260449648d47f6b55a1c5aa8\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/98d4b8e46c04413fb62d82f4dd209585 : SUCCESS in 2m 32s\n- requirements-check https://zuul.opendev.org/t/openstack/build/ff1afc301e6f4a03a52d60aec7ba0f6a : SUCCESS in 3m 24s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/7fc752ccfaef4848b50d7b83ebedad3c : SUCCESS in 1h 06m 35s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/fde1cb998df845099a07fc66a01a2d61 : SUCCESS in 3m 25s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/9f0aeb160d4c4df59b9a91e1d3a1d53c : SUCCESS in 3m 43s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/a43fb023625d416c8626b22933e304cd : SUCCESS in 4m 16s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/776c27f13fff4cebb41df5188559e686 : SUCCESS in 2m 48s","accounts_in_message":[],"_revision_number":5},{"id":"b5f339c1a0b9dbba4083b2802851e1f2f852098f","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-08 12:14:18.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":5}],"current_revision_number":5,"current_revision":"5d4308d1669e37f34aef8718402e868376e146ab","revisions":{"15980d302ee2f3b1a52b39d785a94c527b7eb82b":{"kind":"REWORK","_number":1,"created":"2026-03-20 11:22:33.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/82/981482/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/82/981482/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/1"}}},"commit":{"parents":[{"commit":"1087dbe56fd4a73e206bd8baba46375a2b36e2b6","subject":"tests: Remove dead code","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/1087dbe56fd4a73e206bd8baba46375a2b36e2b6"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-04 15:15:44.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-20 10:56:19.000000000","tz":60},"subject":"Add mypy plugin","message":"Add mypy plugin\n\nTaken from [1] with minimal changes (namely, applying ruff and extending\nan ininstance check for nodes.MemberExpr to also handle\nnodes.NameExpre). We do not expect to support this for a long time as we\nwork towards a more dataclass-like pattern in o.vo, but it will help us\nuntil we get there.\n\n[1] https://github.com/gibizer/ovo-mypy-plugin.\n\nChange-Id: I8e7a5e13f4810db4bced3b141a8c20a8caabf14f\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\nCo-authored-by: Balazs Gibizer \u003cgibi@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/15980d302ee2f3b1a52b39d785a94c527b7eb82b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/15980d302ee2f3b1a52b39d785a94c527b7eb82b"}]},"branch":"refs/heads/master"},"d5aeeb3448181c987e8d0e10de0e13538a1a163f":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2026-03-20 14:55:29.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/82/981482/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/82/981482/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/2"}}},"commit":{"parents":[{"commit":"fd993e48bfe757476c6faac91a303bddc3abcc1a","subject":"tests: Remove dead code","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/fd993e48bfe757476c6faac91a303bddc3abcc1a"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-04 15:15:44.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-20 14:55:24.000000000","tz":60},"subject":"Add mypy plugin","message":"Add mypy plugin\n\nTaken from [1] with minimal changes (namely, applying ruff and extending\nan ininstance check for nodes.MemberExpr to also handle\nnodes.NameExpre). We do not expect to support this for a long time as we\nwork towards a more dataclass-like pattern in o.vo, but it will help us\nuntil we get there.\n\n[1] https://github.com/gibizer/ovo-mypy-plugin.\n\nChange-Id: I8e7a5e13f4810db4bced3b141a8c20a8caabf14f\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\nCo-authored-by: Balazs Gibizer \u003cgibi@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/d5aeeb3448181c987e8d0e10de0e13538a1a163f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/d5aeeb3448181c987e8d0e10de0e13538a1a163f"}]},"branch":"refs/heads/master"},"cb00c252c0af4d34dbcc9e72122b93c6fd002b62":{"kind":"TRIVIAL_REBASE","_number":3,"created":"2026-03-23 17:20:45.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/82/981482/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/82/981482/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/3"}}},"commit":{"parents":[{"commit":"50520a7b171fbe563a0eee46d12cce25b97b5111","subject":"tests: Remove dead code","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/50520a7b171fbe563a0eee46d12cce25b97b5111"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-04 15:15:44.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-23 17:15:09.000000000","tz":60},"subject":"Add mypy plugin","message":"Add mypy plugin\n\nTaken from [1] with minimal changes (namely, applying ruff and extending\nan ininstance check for nodes.MemberExpr to also handle\nnodes.NameExpre). We do not expect to support this for a long time as we\nwork towards a more dataclass-like pattern in o.vo, but it will help us\nuntil we get there.\n\n[1] https://github.com/gibizer/ovo-mypy-plugin.\n\nChange-Id: I8e7a5e13f4810db4bced3b141a8c20a8caabf14f\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\nCo-authored-by: Balazs Gibizer \u003cgibi@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/cb00c252c0af4d34dbcc9e72122b93c6fd002b62"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/cb00c252c0af4d34dbcc9e72122b93c6fd002b62"}]},"branch":"refs/heads/master"},"f2b32bf82b6234f930cca64429d40cf04564929b":{"kind":"TRIVIAL_REBASE","_number":4,"created":"2026-03-24 12:15:28.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/82/981482/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/82/981482/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/4"}}},"commit":{"parents":[{"commit":"d4e3f109275dba0014a6ebca5080f05325328e58","subject":"tests: Remove dead code","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/d4e3f109275dba0014a6ebca5080f05325328e58"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-04 15:15:44.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-24 12:05:52.000000000","tz":60},"subject":"Add mypy plugin","message":"Add mypy plugin\n\nTaken from [1] with minimal changes (namely, applying ruff and extending\nan ininstance check for nodes.MemberExpr to also handle\nnodes.NameExpre). We do not expect to support this for a long time as we\nwork towards a more dataclass-like pattern in o.vo, but it will help us\nuntil we get there.\n\n[1] https://github.com/gibizer/ovo-mypy-plugin.\n\nChange-Id: I8e7a5e13f4810db4bced3b141a8c20a8caabf14f\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\nCo-authored-by: Balazs Gibizer \u003cgibi@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/f2b32bf82b6234f930cca64429d40cf04564929b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/f2b32bf82b6234f930cca64429d40cf04564929b"}]},"branch":"refs/heads/master"},"5d4308d1669e37f34aef8718402e868376e146ab":{"kind":"TRIVIAL_REBASE","_number":5,"created":"2026-03-25 10:36:11.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/82/981482/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/82/981482/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/82/981482/5"}}},"commit":{"parents":[{"commit":"6aefabe970662a4e3ee800a7144e996c89529ed9","subject":"tests: Remove dead code","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/6aefabe970662a4e3ee800a7144e996c89529ed9"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-04 15:15:44.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-25 10:35:42.000000000","tz":60},"subject":"Add mypy plugin","message":"Add mypy plugin\n\nTaken from [1] with minimal changes (namely, applying ruff and extending\nan ininstance check for nodes.MemberExpr to also handle\nnodes.NameExpre). We do not expect to support this for a long time as we\nwork towards a more dataclass-like pattern in o.vo, but it will help us\nuntil we get there.\n\n[1] https://github.com/gibizer/ovo-mypy-plugin.\n\nChange-Id: I8e7a5e13f4810db4bced3b141a8c20a8caabf14f\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\nCo-authored-by: Balazs Gibizer \u003cgibi@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/5d4308d1669e37f34aef8718402e868376e146ab"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/5d4308d1669e37f34aef8718402e868376e146ab"}]},"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":{}}}]}
