)]}'
{"id":"openstack%2Frequirements~980290","triplet_id":"openstack%2Frequirements~master~I18798755886f117a818cc815b55180f0d8a01406","project":"openstack/requirements","branch":"master","topic":"beartype","attention_set":{},"removed_from_attention_set":{"11904":{"account":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"last_update":"2026-05-07 13:51:03.000000000","reason":"\u003cGERRIT_ACCOUNT_11904\u003e replied on the change","reason_account":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"}},"13252":{"account":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"last_update":"2026-05-07 12:04:46.000000000","reason":"\u003cGERRIT_ACCOUNT_13252\u003e replied on the change","reason_account":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"}},"22629":{"account":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"last_update":"2026-05-07 17:36:52.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-05-07 17:36:52.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I18798755886f117a818cc815b55180f0d8a01406","subject":"Add beartype","status":"MERGED","created":"2026-03-12 13:41:00.000000000","updated":"2026-05-07 17:38:56.000000000","submitted":"2026-05-07 17:36:52.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":6,"unresolved_comment_count":1,"has_review_started":true,"submission_id":"980290-beartype","meta_rev_id":"cca074e71fb76ff92e70d63f022c5dcd621cd76e","_number":980290,"virtual_id_number":980290,"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":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"value":0,"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-05-07 17:36:52.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":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"all":[{"value":2,"date":"2026-05-07 13:51:03.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"value":2,"date":"2026-05-07 12:04:46.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"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":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"all":[{"value":1,"date":"2026-05-07 13:51:03.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"value":0,"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"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}},"removable_reviewers":[{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"}],"reviewers":{"REVIEWER":[{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-03-12 15:42:41.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":"2026-03-16 10:23:46.000000000","updated_by":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"reviewer":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"state":"REVIEWER"},{"updated":"2026-05-07 12:04:46.000000000","updated_by":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"reviewer":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"state":"REVIEWER"},{"updated":"2026-05-07 12:04:46.000000000","updated_by":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"reviewer":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"state":"REVIEWER"}],"messages":[{"id":"39041eb7b4ba8ae78976c3e9a564e7c6cc3d9a74","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-12 13:41:00.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"280a917a4619860ff105d4908cd16d38adcd8313","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-12 15:42:41.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/f6d01fdb93a244b3aea461217d439ce3\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ef1fb29c5dc046b58bd65923181b2392 : SUCCESS in 2m 09s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/df618c85cb9e4efda026cf934271c17f : SUCCESS in 3m 07s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/23d2800b0ce5428e890330a4d401bd0a : SUCCESS in 4m 36s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/a3c07f096b1b4671a1316c434e9bf06d : SUCCESS in 2m 31s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/0a3906c2abf24649943e499034cccc6e : SUCCESS in 5m 17s (non-voting)\n- openstack-tox-validate https://zuul.opendev.org/t/openstack/build/b18231497aff4dac883d1cef5cceaccb : FAILURE in 2m 21s\n- requirements-tox-babel https://zuul.opendev.org/t/openstack/build/4df07ca5ea404361af55aed32444df74 : SUCCESS in 2m 15s\n- requirements-tox-py310-check-uc https://zuul.opendev.org/t/openstack/build/a6feacbe99e845e3a1f69ce7fb6d9d2d : SUCCESS in 3m 55s\n- requirements-tox-py311-check-uc https://zuul.opendev.org/t/openstack/build/2bf28309cd564ebdbb1e22ff5841b1b4 : SUCCESS in 5m 31s\n- requirements-tox-py312-check-uc https://zuul.opendev.org/t/openstack/build/f20d06ae38c549cd810d71a942d67d82 : SUCCESS in 6m 14s\n- requirements-tox-py313-check-uc https://zuul.opendev.org/t/openstack/build/b4aa6675b9884106b747fa672fa40068 : SUCCESS in 3m 09s\n- cross-aodh-py312 https://zuul.opendev.org/t/openstack/build/a50df8c5bd944e1d832c133cdf66f4de : SUCCESS in 4m 43s\n- cross-barbican-py312 https://zuul.opendev.org/t/openstack/build/4c83087b2ac94a79af1cd1dcf1b9c647 : SUCCESS in 5m 28s (non-voting)\n- cross-ceilometer-py312 https://zuul.opendev.org/t/openstack/build/d38f8d3b59894d52b28d593bc89054ff : SUCCESS in 3m 23s\n- cross-cinder-py312 https://zuul.opendev.org/t/openstack/build/d1b86768716745538df27e4d5486b026 : SUCCESS in 9m 32s\n- cross-designate-py312 https://zuul.opendev.org/t/openstack/build/7fbc1531a3a4462188eea1db6537cd73 : SUCCESS in 3m 45s\n- cross-glance-py312 https://zuul.opendev.org/t/openstack/build/2f7e9b3d65544412939b0eb16ac67039 : SUCCESS in 3m 39s\n- cross-heat-py312 https://zuul.opendev.org/t/openstack/build/fd70642a2f6340c49e9f9fe7cbd79527 : SUCCESS in 7m 08s\n- cross-horizon-py312 https://zuul.opendev.org/t/openstack/build/a65ba0a3688347d9aa392a54ddeecf3f : SUCCESS in 15m 47s\n- cross-horizon-npm https://zuul.opendev.org/t/openstack/build/d342d50536a14ffd856e4a0397f892ba : SUCCESS in 6m 13s\n- cross-ironic-py312 https://zuul.opendev.org/t/openstack/build/d4812906fd9f4ce4bf32c6ade6fbde98 : SUCCESS in 9m 41s\n- cross-keystone-py312 https://zuul.opendev.org/t/openstack/build/806c0b62f15d4b048cf9c8a899bd8869 : SUCCESS in 12m 25s\n- cross-kuryr-py312 https://zuul.opendev.org/t/openstack/build/8396d0bb86ad4089b8087e71e335bf37 : SUCCESS in 2m 18s\n- cross-manila-py312 https://zuul.opendev.org/t/openstack/build/5568ab612cd049d8bcba69cfee0da79f : SUCCESS in 8m 58s\n- cross-magnum-py312 https://zuul.opendev.org/t/openstack/build/57ea6dc0598e498493502c0f518a4c92 : SUCCESS in 2m 26s\n- cross-masakari-py312 https://zuul.opendev.org/t/openstack/build/38d98bafca4a4c1192fa459552f5ffc6 : SUCCESS in 3m 22s (non-voting)\n- cross-mistral-py312 https://zuul.opendev.org/t/openstack/build/2bcb839b1add47f781c172668def50c3 : SUCCESS in 8m 27s (non-voting)\n- cross-neutron-py312 https://zuul.opendev.org/t/openstack/build/910aef26e40b4f4aae5dcc32564120b5 : SUCCESS in 18m 37s\n- cross-nova-pep8 https://zuul.opendev.org/t/openstack/build/9b532127623744b1a1c682b363c7e02d : SUCCESS in 7m 56s\n- cross-nova-py312 https://zuul.opendev.org/t/openstack/build/688676008606449f93e441a358d41401 : SUCCESS in 17m 53s\n- cross-placement-py312 https://zuul.opendev.org/t/openstack/build/e76f3223fd6d4d74b3fca99c36c63ad1 : SUCCESS in 6m 44s\n- cross-osvif-py3 https://zuul.opendev.org/t/openstack/build/1322de4e6491406fae6946dc215fee5c : SUCCESS in 3m 41s\n- cross-nova-functional https://zuul.opendev.org/t/openstack/build/20fd9b4df2084a238d657d1536c9bced : SUCCESS in 29m 28s\n- cross-placement-functional-py312 https://zuul.opendev.org/t/openstack/build/c3a65760d11f4dd49f7fa893e67aa8c4 : SUCCESS in 7m 23s\n- cross-octavia-py312 https://zuul.opendev.org/t/openstack/build/b784ac83d298412291c23c2b66f0ea1e : SUCCESS in 4m 31s\n- cross-osc-tox-docs https://zuul.opendev.org/t/openstack/build/987d78daa54240beafbe7e0cba70fbc3 : SUCCESS in 4m 50s\n- cross-swift-py312 https://zuul.opendev.org/t/openstack/build/24aad88a5f58487f960daa1044356bf1 : SUCCESS in 19m 10s\n- cross-watcher-py3 https://zuul.opendev.org/t/openstack/build/e65ad3ba09c24dd6abab029cbd5e3319 : SUCCESS in 5m 54s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/ece4ca1a067c455ab2951829dc12e3d1 : SUCCESS in 54m 56s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/c84efe80dbbf40dabdb34793627a76f8 : SUCCESS in 1h 48m 25s","accounts_in_message":[],"_revision_number":1},{"id":"f05b5add6dd4c635f171de237bf40aa8d776070a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-03-12 16:55:26.000000000","message":"Patch Set 2: Published edit on patch set 1.\n\nOutdated Votes:\n* Verified-1\n","accounts_in_message":[],"_revision_number":2},{"id":"251eef5855c02ecc9ff52d1b70b580c89c27c90b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-12 18:47:01.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b1298b142d2f483eb8b3d0e162b79297\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/aed06bdb23cb40b68c03cdb608739d5f : SUCCESS in 5m 09s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/50fa9f709f134393936f5714fa8bed3d : SUCCESS in 2m 06s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/7bc5d3d9b9844e90809c756855abadf5 : SUCCESS in 3m 07s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/92d6954df60c495cac7e969312ac0a5a : SUCCESS in 3m 00s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/e9d7b0efcbbd4d5dac7dc8f6fd256d22 : SUCCESS in 3m 53s (non-voting)\n- openstack-tox-validate https://zuul.opendev.org/t/openstack/build/4addc3276f2b4578bb26f93f682e4ced : SUCCESS in 2m 07s\n- requirements-tox-babel https://zuul.opendev.org/t/openstack/build/d6f7ab0aea4d4f96a14b65cba30de1dc : SUCCESS in 2m 00s\n- requirements-tox-py310-check-uc https://zuul.opendev.org/t/openstack/build/2758dc1953944510985ccf8977635455 : SUCCESS in 4m 14s\n- requirements-tox-py311-check-uc https://zuul.opendev.org/t/openstack/build/c52f75c479f34dd08028cf07de72bd63 : SUCCESS in 5m 27s\n- requirements-tox-py312-check-uc https://zuul.opendev.org/t/openstack/build/f06ecb82765245e4a96e912bf96678a9 : SUCCESS in 6m 50s\n- requirements-tox-py313-check-uc https://zuul.opendev.org/t/openstack/build/a921bec6bce74478a14233014c81dd82 : SUCCESS in 6m 23s\n- cross-aodh-py312 https://zuul.opendev.org/t/openstack/build/1b43eca5edcf4dd18e1ddfd85910cf48 : SUCCESS in 2m 53s\n- cross-barbican-py312 https://zuul.opendev.org/t/openstack/build/8e735cd4a40a41b38db9a40cfaaad0e4 : SUCCESS in 5m 17s (non-voting)\n- cross-ceilometer-py312 https://zuul.opendev.org/t/openstack/build/f3073885e7134eb395ec191f456f35bf : SUCCESS in 4m 04s\n- cross-cinder-py312 https://zuul.opendev.org/t/openstack/build/77ee7eb6f8d54697b654d7827868cc59 : SUCCESS in 11m 42s\n- cross-designate-py312 https://zuul.opendev.org/t/openstack/build/6193cd2fc80045ee90bc72cd51b37acc : SUCCESS in 4m 44s\n- cross-glance-py312 https://zuul.opendev.org/t/openstack/build/88d6f86fc8f241cea3e7919376ad3817 : SUCCESS in 5m 24s\n- cross-heat-py312 https://zuul.opendev.org/t/openstack/build/da2ce6b90da84b07a30d2b43d3f7b881 : SUCCESS in 7m 54s\n- cross-horizon-py312 https://zuul.opendev.org/t/openstack/build/f1bd865ea0c8415baa32c79ed520820d : SUCCESS in 17m 59s\n- cross-horizon-npm https://zuul.opendev.org/t/openstack/build/020c0434df034eafac3708f9fa19b634 : SUCCESS in 6m 49s\n- cross-ironic-py312 https://zuul.opendev.org/t/openstack/build/e8e3739db99149508a70d2b68526f5da : SUCCESS in 9m 23s\n- cross-keystone-py312 https://zuul.opendev.org/t/openstack/build/492fc37550434a62841009c33b731663 : SUCCESS in 13m 26s\n- cross-kuryr-py312 https://zuul.opendev.org/t/openstack/build/c61d46e33aa0421f9369207bdfa1dd77 : SUCCESS in 2m 17s\n- cross-manila-py312 https://zuul.opendev.org/t/openstack/build/234a886b8bb646bc8378700f3de297ad : SUCCESS in 9m 11s\n- cross-magnum-py312 https://zuul.opendev.org/t/openstack/build/1899c8c109c1425bbb4fcd1fa5d0ef0d : SUCCESS in 4m 20s\n- cross-masakari-py312 https://zuul.opendev.org/t/openstack/build/1b4ca5b00d0441d092228f920ac6e87f : SUCCESS in 4m 47s (non-voting)\n- cross-mistral-py312 https://zuul.opendev.org/t/openstack/build/0d61df6fced143f0a7875c4aa01e0069 : SUCCESS in 9m 25s (non-voting)\n- cross-neutron-py312 https://zuul.opendev.org/t/openstack/build/bbfa1b19de744155aee98bcdaed87974 : SUCCESS in 26m 50s\n- cross-nova-pep8 https://zuul.opendev.org/t/openstack/build/ac2e292f1e2c45e580ddbf1913f91f74 : SUCCESS in 7m 30s\n- cross-nova-py312 https://zuul.opendev.org/t/openstack/build/44d3183541724a01acbc0549faeb02fc : SUCCESS in 10m 35s\n- cross-placement-py312 https://zuul.opendev.org/t/openstack/build/2fb022c6f5fd44af9c4763ba68dc12b7 : SUCCESS in 4m 49s\n- cross-osvif-py3 https://zuul.opendev.org/t/openstack/build/d3b900a7e1944ea2ada85bdef258c368 : SUCCESS in 3m 18s\n- cross-nova-functional https://zuul.opendev.org/t/openstack/build/6a460b2fe0f84016b1dbe71660c3b67c : SUCCESS in 28m 41s\n- cross-placement-functional-py312 https://zuul.opendev.org/t/openstack/build/beb3d08ec3404908b024f87eefd6a611 : SUCCESS in 5m 54s\n- cross-octavia-py312 https://zuul.opendev.org/t/openstack/build/5c09cfa066f34bc3bad32312a56feacd : SUCCESS in 4m 55s\n- cross-osc-tox-docs https://zuul.opendev.org/t/openstack/build/990a563ce45342c3b80764f710df0171 : SUCCESS in 3m 24s\n- cross-swift-py312 https://zuul.opendev.org/t/openstack/build/1718a310f052498ab15955c9a3cc5fb2 : SUCCESS in 16m 09s\n- cross-watcher-py3 https://zuul.opendev.org/t/openstack/build/1c00650ef4ea4302bb04f8aba6361bf0 : SUCCESS in 3m 55s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/d29d834beca249e794994f0aec63f075 : SUCCESS in 1h 02m 14s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/5023ecb7d55d4ec88330e1050635aa28 : SUCCESS in 1h 41m 22s","accounts_in_message":[],"_revision_number":2},{"id":"f9bc4b929fe056ffb77203a88f554e6333d87f28","author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"date":"2026-03-16 10:23:46.000000000","message":"Patch Set 2: Code-Review-2\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"bb620e0f7fd06233e3610e064c0f9839f85e04ac","author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"date":"2026-04-01 18:08:16.000000000","message":"Patch Set 2: -Code-Review\n\n(2 comments)","accounts_in_message":[],"_revision_number":2},{"id":"e8ede3c7e0efe23dfc094007a24bdec39c3d7568","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2026-04-04 20:37:14.000000000","message":"Patch Set 2:\n\n(2 comments)","accounts_in_message":[],"_revision_number":2},{"id":"124c8389e572d7ba27333760b4333f0748623b48","author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"date":"2026-05-07 12:04:46.000000000","message":"Patch Set 2: Code-Review+2","accounts_in_message":[],"_revision_number":2},{"id":"5d2766be12f1390ecf0e44291acea32351e48594","author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"date":"2026-05-07 13:51:03.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"77b802306fb3d887cdd93272fab5b504f14b3e60","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-07 13:54:14.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"d14b5980c09c55d81ac4e6e2f4529d5e72150e13","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-07 17:36:52.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/5d5b83bbf8154216a5c9d42b5d9c9451\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a3868d7221ac4b0da089c4a8ea0b6800 : SUCCESS in 5m 00s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/418de09efda64804b8c41dd22bedaf73 : SUCCESS in 4m 33s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/bf7c13cfec4443d582a9c8f8e4b94f42 : SUCCESS in 4m 41s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/4b739ddf47eb4e73a600b6b5ea57ec58 : SUCCESS in 4m 08s\n- openstack-tox-validate https://zuul.opendev.org/t/openstack/build/cbf9fdc1183f49149d1003fa30e4bebd : SUCCESS in 2m 17s\n- requirements-tox-babel https://zuul.opendev.org/t/openstack/build/12c4781e4701455ba7b595a4988f46ea : SUCCESS in 4m 34s\n- requirements-tox-py310-check-uc https://zuul.opendev.org/t/openstack/build/59d5e54df64e4c08892011cfbb681391 : SUCCESS in 3m 59s\n- requirements-tox-py311-check-uc https://zuul.opendev.org/t/openstack/build/a0da2eba305a42cfa60830261f044704 : SUCCESS in 3m 17s\n- requirements-tox-py312-check-uc https://zuul.opendev.org/t/openstack/build/9e1f50bcb5154b64b0e9dc33f666317a : SUCCESS in 7m 02s\n- requirements-tox-py313-check-uc https://zuul.opendev.org/t/openstack/build/c70b520d901d4a0ebc7e2dbc75354dd4 : SUCCESS in 4m 58s\n- cross-cinder-py313 https://zuul.opendev.org/t/openstack/build/f1a78fbd210f4019894e0b1322c8fb1e : SUCCESS in 9m 21s\n- cross-designate-py313 https://zuul.opendev.org/t/openstack/build/98cc353ef801489a8f40c1926a6cb129 : SUCCESS in 4m 57s\n- cross-glance-py313 https://zuul.opendev.org/t/openstack/build/ab1bcb2f34624b669c6d1a39a821a533 : SUCCESS in 4m 57s\n- cross-heat-py313 https://zuul.opendev.org/t/openstack/build/9fa22da8274d4fb5819b98ed2506c9c3 : SUCCESS in 5m 49s\n- cross-horizon-py313 https://zuul.opendev.org/t/openstack/build/c68fbb05a23842af9520fd15a7f60ec5 : SUCCESS in 16m 50s\n- cross-horizon-npm https://zuul.opendev.org/t/openstack/build/02e2a213d87145efa20694c52d21abb3 : SUCCESS in 10m 35s\n- cross-ironic-py313 https://zuul.opendev.org/t/openstack/build/1c671996f7834710a8fad7a3e5d8f9ab : SUCCESS in 9m 53s\n- cross-keystone-py313 https://zuul.opendev.org/t/openstack/build/80d84a52b3554d31bb3d253a1c13e817 : SUCCESS in 11m 40s\n- cross-kuryr-py313 https://zuul.opendev.org/t/openstack/build/0954e3637769468d94fa91f92a1ec454 : SUCCESS in 2m 16s\n- cross-manila-py313 https://zuul.opendev.org/t/openstack/build/02efbe6d500e4b7093c17e2a2116eb29 : SUCCESS in 9m 51s\n- cross-neutron-py313 https://zuul.opendev.org/t/openstack/build/b8f357ffa31b4aab9230c450aa4f74df : SUCCESS in 28m 40s\n- cross-nova-pep8 https://zuul.opendev.org/t/openstack/build/f5a6b5cc4b8b4548a6e82be718dabd2b : SUCCESS in 7m 14s\n- cross-nova-py313 https://zuul.opendev.org/t/openstack/build/c5a545a4208d4f63ae186e9b8f3b629d : SUCCESS in 13m 50s\n- cross-placement-py313 https://zuul.opendev.org/t/openstack/build/661e12a02f794b0eb675dfef1cda1880 : SUCCESS in 4m 06s\n- cross-osvif-py3 https://zuul.opendev.org/t/openstack/build/467c63e3f34744cb90e9d45838720309 : SUCCESS in 3m 52s\n- cross-nova-functional https://zuul.opendev.org/t/openstack/build/1a9305a4d80647819d07df0fc2a1973a : SUCCESS in 24m 09s\n- cross-placement-functional-py313 https://zuul.opendev.org/t/openstack/build/52a49bb48d2640c9bbb2abd504689205 : SUCCESS in 4m 55s\n- cross-octavia-py313 https://zuul.opendev.org/t/openstack/build/cbc3cb653d8d42f29d379da9fd2a0650 : SUCCESS in 2m 58s\n- cross-osc-tox-docs https://zuul.opendev.org/t/openstack/build/687baa6e2303430e88a226013e4f7b33 : SUCCESS in 6m 31s\n- cross-swift-py313 https://zuul.opendev.org/t/openstack/build/a8139bbc742b48879505f2dfcff991d1 : SUCCESS in 7m 42s\n- cross-watcher-py3 https://zuul.opendev.org/t/openstack/build/6ea5d600fb2d4938b78bf6c5c4e6cd60 : SUCCESS in 5m 52s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/37182c781eb34146b7bbc7fdc310699b : SUCCESS in 33m 32s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/cd1589a536104f8da1615bf653fbbeaf : SUCCESS in 1h 46m 52s","accounts_in_message":[],"_revision_number":2},{"id":"67a1a70593c1b9232a70a3aeb5de8d8bc602546b","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-07 17:36:52.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"cca074e71fb76ff92e70d63f022c5dcd621cd76e","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-05-07 17:38:56.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/afbd2be4d49247c78a44ea9c4fb51ec6\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d594873fb439427398f16f2ecaf88f22 : SUCCESS in 39s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"d9b462498b1d3f8b850cfc5ac52e8a8e4e5876dc","revisions":{"41454227a49abd642ae5fcdb7c7d1ca0568fe8d8":{"kind":"REWORK","_number":1,"created":"2026-03-12 13:41:00.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/90/980290/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/requirements","ref":"refs/changes/90/980290/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/requirements refs/changes/90/980290/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/requirements refs/changes/90/980290/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/requirements refs/changes/90/980290/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/requirements refs/changes/90/980290/1"}}},"commit":{"parents":[{"commit":"bb067082abc8bf3676a8c7e6ae8fa91a2c84b9cb","subject":"update constraint for horizon to new release 25.6.0","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/bb067082abc8bf3676a8c7e6ae8fa91a2c84b9cb"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-12 13:37:20.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-12 13:37:20.000000000","tz":0},"subject":"Add beartype","message":"Add beartype\n\nbeartype allows us to validate type hints at runtime, as part of our\ntest suites.\n\n* Is the library actively maintained?\n\n    Yes. The most recent release was in December 2025.\n\n* Is the library good code?\n\n    Yes. It has a comprehensive test suite and is relatively widely\n    used.\n\n* Is the library license compatible?\n\n    Yes, MIT license.\n\n* Is the library already packaged in the distros we target?\n\n    Yes:\n        https://packages.ubuntu.com/plucky/python3-beartype\n        https://packages.debian.org/source/sid/python-beartype\n        https://packages.fedoraproject.org/pkgs/python-beartype/python3-beartype/\n\n* Is the function of this library already covered by other libraries\n  in global-requirements.txt?\n\n    No.\n\n* Is the library required for OpenStack project or related dev or\n  infrastructure setup? (Answer to this should be Yes, of course) Which?\n\n    Any project that has typing (almost all Oslo and SDK projects, and\n    an increasing amount of services)\n\n* If the library release is managed by the Openstack release process\n  does it use the cycle-with-intermediary release type?\n\n    Not managed by OpenStack\n\nChange-Id: I18798755886f117a818cc815b55180f0d8a01406\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/41454227a49abd642ae5fcdb7c7d1ca0568fe8d8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/41454227a49abd642ae5fcdb7c7d1ca0568fe8d8"}]},"branch":"refs/heads/master"},"d9b462498b1d3f8b850cfc5ac52e8a8e4e5876dc":{"kind":"REWORK","_number":2,"created":"2026-03-12 16:55:26.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/90/980290/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/requirements","ref":"refs/changes/90/980290/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/requirements refs/changes/90/980290/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/requirements refs/changes/90/980290/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/requirements refs/changes/90/980290/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/requirements refs/changes/90/980290/2"}}},"commit":{"parents":[{"commit":"bb067082abc8bf3676a8c7e6ae8fa91a2c84b9cb","subject":"update constraint for horizon to new release 25.6.0","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/bb067082abc8bf3676a8c7e6ae8fa91a2c84b9cb"}]}],"author":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-12 13:37:20.000000000","tz":0},"committer":{"name":"Stephen Finucane","email":"stephenfin@redhat.com","date":"2026-03-12 16:55:26.000000000","tz":0},"subject":"Add beartype","message":"Add beartype\n\nbeartype allows us to validate type hints at runtime, as part of our\ntest suites.\n\n* Is the library actively maintained?\n\n    Yes. The most recent release was in December 2025.\n\n* Is the library good code?\n\n    Yes. It has a comprehensive test suite and is relatively widely\n    used.\n\n* Is the library license compatible?\n\n    Yes, MIT license.\n\n* Is the library already packaged in the distros we target?\n\n    Yes:\n        https://packages.ubuntu.com/plucky/python3-beartype\n        https://packages.debian.org/source/sid/python-beartype\n        https://packages.fedoraproject.org/pkgs/python-beartype/python3-beartype/\n\n* Is the function of this library already covered by other libraries\n  in global-requirements.txt?\n\n    No.\n\n* Is the library required for OpenStack project or related dev or\n  infrastructure setup? (Answer to this should be Yes, of course) Which?\n\n    Any project that has typing (almost all Oslo and SDK projects, and\n    an increasing amount of services)\n\n* If the library release is managed by the Openstack release process\n  does it use the cycle-with-intermediary release type?\n\n    Not managed by OpenStack\n\nChange-Id: I18798755886f117a818cc815b55180f0d8a01406\nSigned-off-by: Stephen Finucane \u003cstephenfin@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/d9b462498b1d3f8b850cfc5ac52e8a8e4e5876dc"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/d9b462498b1d3f8b850cfc5ac52e8a8e4e5876dc"}]},"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":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"}}]}],"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":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"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":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"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":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
