)]}'
{"id":"openstack%2Frequirements~952000","triplet_id":"openstack%2Frequirements~master~I4a278fb098b9386d8e09d57fb332346f7da4910b","project":"openstack/requirements","branch":"master","attention_set":{"11904":{"account":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"last_update":"2025-06-06 22:50:09.000000000","reason":"Vote got outdated and was removed: Code-Review+2"},"11628":{"account":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"last_update":"2025-06-06 22:47:47.000000000","reason":"A robot voted negatively on a label"}},"removed_from_attention_set":{},"hashtags":[],"change_id":"I4a278fb098b9386d8e09d57fb332346f7da4910b","subject":"Add testing tool validate-pyproject","status":"NEW","created":"2025-06-06 21:16:11.000000000","updated":"2026-04-02 11:50:56.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":false,"submittable":false,"total_comment_count":1,"unresolved_comment_count":1,"has_review_started":true,"meta_rev_id":"aaa6a415ff583491ba4f4b3f1c6853edc7b119ae","_number":952000,"virtual_id_number":952000,"owner":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"tag":"autogenerated:zuul:check","value":1,"date":"2025-06-17 17:22:18.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":-2,"max":2},"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"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":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"_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":[],"reviewers":{"REVIEWER":[{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"CC":[{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-06-06 21:33:10.000000000","updated_by":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"reviewer":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"state":"REVIEWER"},{"updated":"2025-06-06 22:47:47.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-04-02 11:50:56.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":"CC"}],"messages":[{"id":"74a3b8af3f2a1f57ed6b717b5d135f5ead7e5c78","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"date":"2025-06-06 21:16:11.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"1e8fdd1618750972bb3eb7a3618e8af68f789e69","author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"date":"2025-06-06 21:33:10.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"2e7947c8cb8c0c524f21519804788cc180cd360e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-06-06 22:47:47.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/69210474232541fd9db91f9b8ea86e1e\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/645ed5f4ad0d4b008ae8c1b3b4db75f7 : SUCCESS in 3m 05s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/00ff4b8b8f424e8da741807a02af6bb2 : SUCCESS in 2m 59s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/cf2126560d964aeaa52fed1cdd178af8 : SUCCESS in 3m 03s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/2f9e6851bc824a969a165d879cd996e4 : SUCCESS in 1m 52s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/69fe2db09c3c47d198478d4711a776c2 : SUCCESS in 3m 13s (non-voting)\n- openstack-tox-validate https://zuul.opendev.org/t/openstack/build/ebc562e63688485a981367d0351adba2 : FAILURE in 1m 52s\n- requirements-tox-babel https://zuul.opendev.org/t/openstack/build/fed1ecf7662541699df88192e7b54623 : SUCCESS in 3m 22s\n- requirements-tox-py39-check-uc https://zuul.opendev.org/t/openstack/build/c375f38ca1d34d04ac1e5ac19ee6cafa : SUCCESS in 6m 40s\n- requirements-tox-py310-check-uc https://zuul.opendev.org/t/openstack/build/68aa86de80ff46489812ff06b0e3c468 : SUCCESS in 9m 58s\n- requirements-tox-py311-check-uc https://zuul.opendev.org/t/openstack/build/89d1e32354e44e25bd6c9f11139c0f7e : SUCCESS in 17m 53s\n- requirements-tox-py312-check-uc https://zuul.opendev.org/t/openstack/build/40fd5a365d054f36b94bbbdb6d9ae758 : SUCCESS in 7m 46s\n- requirements-tox-py313-check-uc https://zuul.opendev.org/t/openstack/build/eea9f48bcc5a4b178e26e12629435452 : SUCCESS in 26m 00s (non-voting)\n- cross-aodh-py312 https://zuul.opendev.org/t/openstack/build/dfb884f4010f4b9c821d72f1838bc4fd : SUCCESS in 4m 03s\n- cross-barbican-py312 https://zuul.opendev.org/t/openstack/build/a130c5d50eba4b64baa75553318a818a : SUCCESS in 3m 03s\n- cross-ceilometer-py312 https://zuul.opendev.org/t/openstack/build/7cc190e035ad44bdbd5e38d1ca54b779 : SUCCESS in 4m 32s\n- cross-cinder-py312 https://zuul.opendev.org/t/openstack/build/88b0348f8a5f4a37a790326e9df7b261 : SUCCESS in 8m 48s\n- cross-designate-py312 https://zuul.opendev.org/t/openstack/build/661d6b0149d1431d8d1743ad07288e77 : SUCCESS in 2m 53s\n- cross-glance-py312 https://zuul.opendev.org/t/openstack/build/f9aa131f72b8429eb84c9d58b58188ab : SUCCESS in 3m 55s\n- cross-heat-py312 https://zuul.opendev.org/t/openstack/build/87bc8564130a4016ac835a5fd0d477d5 : SUCCESS in 7m 26s\n- cross-horizon-py312 https://zuul.opendev.org/t/openstack/build/703c26ae05be434fbd28a9961158896d : SUCCESS in 13m 24s\n- cross-horizon-npm https://zuul.opendev.org/t/openstack/build/0b085a4fd5b64ef4b332c6c14ab638e2 : SUCCESS in 3m 26s\n- cross-ironic-py312 https://zuul.opendev.org/t/openstack/build/53d3020e457c4502ae0e7e11d3abf773 : SUCCESS in 8m 13s\n- cross-keystone-py312 https://zuul.opendev.org/t/openstack/build/2b0452f6ec294903a9ef684dcc6add55 : SUCCESS in 7m 17s\n- cross-kuryr-py312 https://zuul.opendev.org/t/openstack/build/7ae203d38b5144e48bb882fc08620cba : SUCCESS in 2m 11s\n- cross-manila-py312 https://zuul.opendev.org/t/openstack/build/821c34d715cc4e0db8313758f9e0fbef : SUCCESS in 16m 41s\n- cross-magnum-py312 https://zuul.opendev.org/t/openstack/build/9efc3f33aab948fd8cdb627b3464433a : SUCCESS in 4m 35s\n- cross-masakari-py312 https://zuul.opendev.org/t/openstack/build/f6475de7a5834f3faba539ef27043908 : SUCCESS in 5m 03s (non-voting)\n- cross-mistral-py312 https://zuul.opendev.org/t/openstack/build/bc2553b29c2d4d1a959a06fe53936937 : SUCCESS in 9m 56s (non-voting)\n- cross-neutron-py312 https://zuul.opendev.org/t/openstack/build/144d80623be3477cb28eb9f5cafa5e2e : SUCCESS in 21m 15s\n- cross-nova-pep8 https://zuul.opendev.org/t/openstack/build/f1d45bed2c5f4fc888ad69cab7b5a320 : SUCCESS in 7m 41s\n- cross-nova-py312 https://zuul.opendev.org/t/openstack/build/e7dde380dac74bc09399b9b55f9b0251 : SUCCESS in 13m 33s\n- cross-placement-py312 https://zuul.opendev.org/t/openstack/build/204b30e373394fd6a00caa677af710f7 : SUCCESS in 7m 54s\n- cross-osvif-py3 https://zuul.opendev.org/t/openstack/build/d5a431e7cd1343a8bc6b00642fe8bc26 : SUCCESS in 3m 00s\n- cross-nova-functional https://zuul.opendev.org/t/openstack/build/07b8dcec55e3446d9dbdf2c1ebe7f93f : SUCCESS in 26m 16s\n- cross-placement-functional-py312 https://zuul.opendev.org/t/openstack/build/b2e2af6472d34080afad0930a0f5d83a : SUCCESS in 7m 38s\n- cross-octavia-py312 https://zuul.opendev.org/t/openstack/build/dd45ada3b9fd46e088f63a4fe8929f17 : SUCCESS in 4m 02s\n- cross-osc-tox-docs https://zuul.opendev.org/t/openstack/build/efc7af427b6b4d2ebc689885651368e4 : SUCCESS in 5m 43s\n- cross-swift-py312 https://zuul.opendev.org/t/openstack/build/cfc00ffe1b214604931f6e96e155bb68 : SUCCESS in 9m 18s\n- cross-watcher-py3 https://zuul.opendev.org/t/openstack/build/5bdfd6e338114c1caae003019ee2f719 : SUCCESS in 7m 47s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/4378fefde0794cc1bbe281dfe050bb10 : SUCCESS in 1h 06m 16s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/9422ea2185234082a8382012d1ec8cfc : SUCCESS in 1h 30m 23s","accounts_in_message":[],"_revision_number":1},{"id":"76f25df041628c0d94b7dbaefd79dfaf85ec0d6b","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"date":"2025-06-06 22:50:09.000000000","message":"Patch Set 2: Published edit on patch set 1.\n\nOutdated Votes:\n* Code-Review+2 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified-1\n","accounts_in_message":[],"_revision_number":2},{"id":"8618de338201192c640a98f2a9acbd88d7dff63b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-06-06 23:53:14.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/8d182a610c2e4a3d94c4a4015de69b7c\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/96ba0b42df154f76817d7e32bededb1b : SUCCESS in 2m 19s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8189f474077b4f7da94b9d9af747fff2 : SUCCESS in 2m 55s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/79ead4c5d7e943288fd495d475b2dfc4 : SUCCESS in 2m 51s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/86e7855e43504fd991e050436dbc9a06 : SUCCESS in 1m 56s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/acd1330375ec4c7bbcc2c0e671ad9f8b : SUCCESS in 5m 26s (non-voting)\n- openstack-tox-validate https://zuul.opendev.org/t/openstack/build/ac24e189d6bf4c31a06aec63af6e2bc1 : FAILURE in 2m 47s\n- requirements-tox-babel https://zuul.opendev.org/t/openstack/build/6e67784407824d09a5b9bbb84c0c3b4d : SUCCESS in 1m 48s\n- requirements-tox-py39-check-uc https://zuul.opendev.org/t/openstack/build/b7889d196e9346959facf3be057212fc : SUCCESS in 17m 22s\n- requirements-tox-py310-check-uc https://zuul.opendev.org/t/openstack/build/0276681e9ca94d3eb9a44fabcd4dd7bd : SUCCESS in 7m 03s\n- requirements-tox-py311-check-uc https://zuul.opendev.org/t/openstack/build/7e89758caefe4b5da922274d65924779 : SUCCESS in 7m 04s\n- requirements-tox-py312-check-uc https://zuul.opendev.org/t/openstack/build/e85b329505554ad5b32a3bcef4f5eb6d : SUCCESS in 18m 43s\n- requirements-tox-py313-check-uc https://zuul.opendev.org/t/openstack/build/698dcce5f94a40b283619c01e934b9e5 : SUCCESS in 11m 48s (non-voting)\n- cross-aodh-py312 https://zuul.opendev.org/t/openstack/build/f4ab667f84a940bf8c8ca2d8c36357ef : SUCCESS in 4m 14s\n- cross-barbican-py312 https://zuul.opendev.org/t/openstack/build/e9b1cdd901be4107b0308b84181f31b4 : SUCCESS in 5m 21s\n- cross-ceilometer-py312 https://zuul.opendev.org/t/openstack/build/7bac5058e5964178b492fb4a2e6959e7 : SUCCESS in 2m 40s\n- cross-cinder-py312 https://zuul.opendev.org/t/openstack/build/497b26f639454412acb36c94ea1eb550 : SUCCESS in 12m 07s\n- cross-designate-py312 https://zuul.opendev.org/t/openstack/build/0583137773234c5697bc8a7bf7b99d99 : SUCCESS in 3m 24s\n- cross-glance-py312 https://zuul.opendev.org/t/openstack/build/9ef7a5cbec11464da4f6d4a2fee48a9b : SUCCESS in 5m 13s\n- cross-heat-py312 https://zuul.opendev.org/t/openstack/build/7fd6f163bda341ac951d5f78a03eeae0 : SUCCESS in 7m 12s\n- cross-horizon-py312 https://zuul.opendev.org/t/openstack/build/01bcc11d9a974868823c6701b9fbdf6c : SUCCESS in 12m 52s\n- cross-horizon-npm https://zuul.opendev.org/t/openstack/build/4251c7a09e484e49a778509df2c622bf : SUCCESS in 9m 27s\n- cross-ironic-py312 https://zuul.opendev.org/t/openstack/build/cc50618cc3d84f2bb92b822e4fa40333 : SUCCESS in 8m 37s\n- cross-keystone-py312 https://zuul.opendev.org/t/openstack/build/4d5683e6787d4c239f7ffc7673c1fcb1 : SUCCESS in 10m 06s\n- cross-kuryr-py312 https://zuul.opendev.org/t/openstack/build/1809a7cbb2ac44f7aed4c93c3127b7d4 : SUCCESS in 2m 03s\n- cross-manila-py312 https://zuul.opendev.org/t/openstack/build/b649022271ee45d48e8203abde16a610 : SUCCESS in 10m 57s\n- cross-magnum-py312 https://zuul.opendev.org/t/openstack/build/2fff329602404416be2d1322fec5226b : SUCCESS in 5m 40s\n- cross-masakari-py312 https://zuul.opendev.org/t/openstack/build/9bb8165c73554060a1cc2e18207bec6b : SUCCESS in 4m 16s (non-voting)\n- cross-mistral-py312 https://zuul.opendev.org/t/openstack/build/7ac12b8397584c91b1ff22c4a91580fe : SUCCESS in 11m 35s (non-voting)\n- cross-neutron-py312 https://zuul.opendev.org/t/openstack/build/73201b1be0cc4e41976e9053540fa48f : SUCCESS in 15m 14s\n- cross-nova-pep8 https://zuul.opendev.org/t/openstack/build/85841c67774e4c37975a614dea3aa7e0 : SUCCESS in 7m 17s\n- cross-nova-py312 https://zuul.opendev.org/t/openstack/build/634c0b4c648c424c8a1690a56ecee568 : SUCCESS in 13m 16s\n- cross-placement-py312 https://zuul.opendev.org/t/openstack/build/d6b1e67998394a0282ce75bc0937bd41 : SUCCESS in 4m 45s\n- cross-osvif-py3 https://zuul.opendev.org/t/openstack/build/fa56f574161247d6b5066601283f4286 : SUCCESS in 2m 47s\n- cross-nova-functional https://zuul.opendev.org/t/openstack/build/48850ebbf67441c885da13d935f5bc7d : SUCCESS in 23m 16s\n- cross-placement-functional-py312 https://zuul.opendev.org/t/openstack/build/a3c16c675626449899ea29d6372af43e : SUCCESS in 5m 14s\n- cross-octavia-py312 https://zuul.opendev.org/t/openstack/build/0bd0c78f61de4c95a8b90b4a1524f101 : SUCCESS in 2m 49s\n- cross-osc-tox-docs https://zuul.opendev.org/t/openstack/build/5f3c2028f2c841aab0ce981a6e39726d : SUCCESS in 4m 41s\n- cross-swift-py312 https://zuul.opendev.org/t/openstack/build/5f2b44c68e2e4a9f849852fca64ed4b2 : SUCCESS in 6m 19s\n- cross-watcher-py3 https://zuul.opendev.org/t/openstack/build/5510718dbff44a53997f24ed3cea3fe8 : SUCCESS in 4m 38s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/c1fd8a5e78f04b3bbdaccab1154d45d9 : SUCCESS in 58m 19s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/fdcd76a3b1b142a28a84878161a1e180 : SUCCESS in 53m 01s","accounts_in_message":[],"_revision_number":2},{"id":"4f4373c0a9737e217778808df46d485f4da8ce07","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"date":"2025-06-17 15:29:55.000000000","message":"Patch Set 3: Published edit on patch set 2.\n\nOutdated Votes:\n* Verified-1\n","accounts_in_message":[],"_revision_number":3},{"id":"f8191c3c2bb7471e9efa9e6b713afaeb4d6da796","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-06-17 17:22:18.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a25d908fa9b344ec93677eacb99a79aa\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/01bada7d08c640759fcac34939cc52a6 : SUCCESS in 3m 49s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c37fbfba994b4c9086e579ddbf8d0348 : SUCCESS in 3m 21s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/a25db7ecab4b4473b788f920c5b7da4f : SUCCESS in 3m 29s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/101175e92e1647e2819198651087700b : SUCCESS in 3m 07s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/38bf3b3390df4ea286a3894b2170a966 : SUCCESS in 6m 55s (non-voting)\n- openstack-tox-validate https://zuul.opendev.org/t/openstack/build/613a4b0e90314269a0e81adddb901fb9 : SUCCESS in 4m 26s\n- requirements-tox-babel https://zuul.opendev.org/t/openstack/build/64f1adb0384f46749425d03fff453524 : SUCCESS in 4m 17s\n- requirements-tox-py39-check-uc https://zuul.opendev.org/t/openstack/build/1b86cc75efcc42b5a64996e08293ae85 : SUCCESS in 18m 51s\n- requirements-tox-py310-check-uc https://zuul.opendev.org/t/openstack/build/959b1320be2c442398560b6f5fe876a0 : SUCCESS in 9m 42s\n- requirements-tox-py311-check-uc https://zuul.opendev.org/t/openstack/build/f0d058610c924d6cbd0275f53ac30af3 : SUCCESS in 18m 33s\n- requirements-tox-py312-check-uc https://zuul.opendev.org/t/openstack/build/96b491c391bf4e9f8054793fbe8c0a51 : SUCCESS in 19m 44s\n- requirements-tox-py313-check-uc https://zuul.opendev.org/t/openstack/build/6c658b91ecb7450e94dc8b5ca67ecfe6 : SUCCESS in 26m 17s (non-voting)\n- cross-aodh-py312 https://zuul.opendev.org/t/openstack/build/d2b74da2fc9d4cd8a801fa83b0f4d5c1 : SUCCESS in 5m 01s\n- cross-barbican-py312 https://zuul.opendev.org/t/openstack/build/adb73098e1a646ccb2169dc3dc63fee9 : SUCCESS in 6m 34s\n- cross-ceilometer-py312 https://zuul.opendev.org/t/openstack/build/658e606160874cf88cc3bf87a47516fd : SUCCESS in 5m 28s\n- cross-cinder-py312 https://zuul.opendev.org/t/openstack/build/124846348efd422e9201b7d6d3466052 : SUCCESS in 11m 14s\n- cross-designate-py312 https://zuul.opendev.org/t/openstack/build/a8ce41c1f45c4052b65c4d8d8cf653f0 : SUCCESS in 4m 41s\n- cross-glance-py312 https://zuul.opendev.org/t/openstack/build/3c12412eb19e4525ba31172cc74865be : SUCCESS in 5m 11s\n- cross-heat-py312 https://zuul.opendev.org/t/openstack/build/14c65d6c616f44a0bfcd258a245a0073 : SUCCESS in 7m 12s\n- cross-horizon-py312 https://zuul.opendev.org/t/openstack/build/ba6bf451d7c44d9c9071dc189d9f1055 : SUCCESS in 17m 03s\n- cross-horizon-npm https://zuul.opendev.org/t/openstack/build/dacc9231f1f7466a8c1c1c6c4fcddec3 : SUCCESS in 5m 52s\n- cross-ironic-py312 https://zuul.opendev.org/t/openstack/build/f7106802749041c1bc0c32e0832c1684 : SUCCESS in 11m 01s\n- cross-keystone-py312 https://zuul.opendev.org/t/openstack/build/7fa4b21c0f904935b43f549665937ca1 : SUCCESS in 14m 05s\n- cross-kuryr-py312 https://zuul.opendev.org/t/openstack/build/c2bf212ca84d43e48cbf2efc0290fa3f : SUCCESS in 2m 00s\n- cross-manila-py312 https://zuul.opendev.org/t/openstack/build/744d78d19a1e48f2921f01046886303d : SUCCESS in 8m 54s\n- cross-magnum-py312 https://zuul.opendev.org/t/openstack/build/8e9ee907b970411e8567500d10ffb749 : SUCCESS in 4m 19s\n- cross-masakari-py312 https://zuul.opendev.org/t/openstack/build/4748886d42f74e9fbb75d59f8ee899f1 : SUCCESS in 4m 15s (non-voting)\n- cross-mistral-py312 https://zuul.opendev.org/t/openstack/build/c66a738f9db142d3a099ce95265d54ae : SUCCESS in 11m 35s (non-voting)\n- cross-neutron-py312 https://zuul.opendev.org/t/openstack/build/f513e75738f344688eade98b3721297f : SUCCESS in 18m 45s\n- cross-nova-pep8 https://zuul.opendev.org/t/openstack/build/c97e35aa3e524123b78036f942dc3362 : SUCCESS in 7m 05s\n- cross-nova-py312 https://zuul.opendev.org/t/openstack/build/c64bc0d3ea6646bfaaca2a516b2480e4 : SUCCESS in 10m 50s\n- cross-placement-py312 https://zuul.opendev.org/t/openstack/build/bc4c14d113e343f8bffdc3828874b91b : SUCCESS in 5m 18s\n- cross-osvif-py3 https://zuul.opendev.org/t/openstack/build/af63446cdef8409ead449ece80a02376 : SUCCESS in 2m 55s\n- cross-nova-functional https://zuul.opendev.org/t/openstack/build/70567683fdad41b3b168d2774b9f500b : SUCCESS in 25m 40s\n- cross-placement-functional-py312 https://zuul.opendev.org/t/openstack/build/da1d9eeb0ad0439b9bea6d9ea0da137c : SUCCESS in 6m 05s\n- cross-octavia-py312 https://zuul.opendev.org/t/openstack/build/2a8c267d18c943b7b244cad1d353691e : SUCCESS in 6m 14s\n- cross-osc-tox-docs https://zuul.opendev.org/t/openstack/build/304cff12d2784b55a94f754b40ac8d1c : SUCCESS in 7m 45s\n- cross-swift-py312 https://zuul.opendev.org/t/openstack/build/6371f961581d4180b9d4ebd286903092 : SUCCESS in 18m 32s\n- cross-watcher-py3 https://zuul.opendev.org/t/openstack/build/9a5c84fdc27847459ba19beb375dea68 : SUCCESS in 4m 51s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/70ea53745e47453eb9095b2ff404f6f6 : SUCCESS in 1h 03m 26s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/f76edeaea27446809b26ed36a9b84011 : SUCCESS in 1h 46m 32s","accounts_in_message":[],"_revision_number":3},{"id":"aaa6a415ff583491ba4f4b3f1c6853edc7b119ae","author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"date":"2026-04-02 11:50:56.000000000","message":"Patch Set 3:\n\n(1 comment)","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"3a6fbd999556f08cabee48a7d1592403bf4a90cb","revisions":{"0cc9d9c24dedabd163ca495bc6f5284dac981cb7":{"kind":"REWORK","_number":1,"created":"2025-06-06 21:16:11.000000000","uploader":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"ref":"refs/changes/00/952000/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/requirements","ref":"refs/changes/00/952000/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/requirements refs/changes/00/952000/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/requirements refs/changes/00/952000/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/requirements refs/changes/00/952000/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/requirements refs/changes/00/952000/1"}}},"commit":{"parents":[{"commit":"6e6cd7ed35080bbba406448d7e91e3f80df93f70","subject":"Merge \"Updated from generate-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/6e6cd7ed35080bbba406448d7e91e3f80df93f70"}]}],"author":{"name":"Michael Johnson","email":"johnsomor@gmail.com","date":"2025-06-06 21:05:03.000000000","tz":0},"committer":{"name":"Michael Johnson","email":"johnsomor@gmail.com","date":"2025-06-06 21:16:09.000000000","tz":0},"subject":"Add testing tool validate-pyproject","message":"Add testing tool validate-pyproject\n\nAs we are now managing pyproject.toml files for our packages, I think we\nshould have a test tool to validate the syntax of these files match the\nspecification.\n\nIs the library actively maintained?\n\nYes, the last release of the main package was March 21st, 2025 with\ncommits two weeks ago.\n\nIs the library good code?\n\nYes, it appears to be. It is build around JSON schemas to help with\nvalidation.\n\nIs the library license compatible?\n\nYes, it is MPL-2.0 like some of our other testing tools.\n\nIs the library already packaged in the distros we target?\n\nYes, on Ubuntu it is python3-validate-pyproject\n\nIs the function of this library already covered by other libraries in\nglobal-requirements.txt?\n\nNot that I am aware of.\n\nIs the library required for OpenStack project or related dev or infrastructure\nsetup?\n\nOctavia would like to add this to our pep8 checks.\n\nChange-Id: I4a278fb098b9386d8e09d57fb332346f7da4910b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/0cc9d9c24dedabd163ca495bc6f5284dac981cb7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/0cc9d9c24dedabd163ca495bc6f5284dac981cb7"}]},"branch":"refs/heads/master"},"643a3a21a6189f134987c2988ee3e21874799744":{"kind":"REWORK","_number":2,"created":"2025-06-06 22:50:09.000000000","uploader":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"ref":"refs/changes/00/952000/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/requirements","ref":"refs/changes/00/952000/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/requirements refs/changes/00/952000/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/requirements refs/changes/00/952000/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/requirements refs/changes/00/952000/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/requirements refs/changes/00/952000/2"}}},"commit":{"parents":[{"commit":"6e6cd7ed35080bbba406448d7e91e3f80df93f70","subject":"Merge \"Updated from generate-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/6e6cd7ed35080bbba406448d7e91e3f80df93f70"}]}],"author":{"name":"Michael Johnson","email":"johnsomor@gmail.com","date":"2025-06-06 21:05:03.000000000","tz":0},"committer":{"name":"Michael Johnson","email":"johnsomor@gmail.com","date":"2025-06-06 22:50:09.000000000","tz":0},"subject":"Add testing tool validate-pyproject","message":"Add testing tool validate-pyproject\n\nAs we are now managing pyproject.toml files for our packages, I think we\nshould have a test tool to validate the syntax of these files match the\nspecification.\n\nIs the library actively maintained?\n\nYes, the last release of the main package was March 21st, 2025 with\ncommits two weeks ago.\n\nIs the library good code?\n\nYes, it appears to be. It is build around JSON schemas to help with\nvalidation.\n\nIs the library license compatible?\n\nYes, it is MPL-2.0 like some of our other testing tools.\n\nIs the library already packaged in the distros we target?\n\nYes, on Ubuntu it is python3-validate-pyproject\n\nIs the function of this library already covered by other libraries in\nglobal-requirements.txt?\n\nNot that I am aware of.\n\nIs the library required for OpenStack project or related dev or infrastructure\nsetup?\n\nOctavia would like to add this to our pep8 checks.\n\nChange-Id: I4a278fb098b9386d8e09d57fb332346f7da4910b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/643a3a21a6189f134987c2988ee3e21874799744"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/643a3a21a6189f134987c2988ee3e21874799744"}]},"branch":"refs/heads/master"},"3a6fbd999556f08cabee48a7d1592403bf4a90cb":{"kind":"REWORK","_number":3,"created":"2025-06-17 15:29:55.000000000","uploader":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"ref":"refs/changes/00/952000/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/requirements","ref":"refs/changes/00/952000/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/requirements refs/changes/00/952000/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/requirements refs/changes/00/952000/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/requirements refs/changes/00/952000/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/requirements refs/changes/00/952000/3"}}},"commit":{"parents":[{"commit":"6e6cd7ed35080bbba406448d7e91e3f80df93f70","subject":"Merge \"Updated from generate-constraints\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/6e6cd7ed35080bbba406448d7e91e3f80df93f70"}]}],"author":{"name":"Michael Johnson","email":"johnsomor@gmail.com","date":"2025-06-06 21:05:03.000000000","tz":0},"committer":{"name":"Michael Johnson","email":"johnsomor@gmail.com","date":"2025-06-17 15:29:55.000000000","tz":0},"subject":"Add testing tool validate-pyproject","message":"Add testing tool validate-pyproject\n\nAs we are now managing pyproject.toml files for our packages, I think we\nshould have a test tool to validate the syntax of these files match the\nspecification.\n\nIs the library actively maintained?\n\nYes, the last release of the main package was March 21st, 2025 with\ncommits two weeks ago.\n\nIs the library good code?\n\nYes, it appears to be. It is build around JSON schemas to help with\nvalidation.\n\nIs the library license compatible?\n\nYes, it is MPL-2.0 like some of our other testing tools.\n\nIs the library already packaged in the distros we target?\n\nYes, on Ubuntu it is python3-validate-pyproject\n\nIs the function of this library already covered by other libraries in\nglobal-requirements.txt?\n\nNot that I am aware of.\n\nIs the library required for OpenStack project or related dev or infrastructure\nsetup?\n\nOctavia would like to add this to our pep8 checks.\n\nChange-Id: I4a278fb098b9386d8e09d57fb332346f7da4910b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/3a6fbd999556f08cabee48a7d1592403bf4a90cb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/requirements/commit/3a6fbd999556f08cabee48a7d1592403bf4a90cb"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY"},{"label":"Workflow","status":"MAY"}]}],"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":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"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":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"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":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
