From 8e2f8132f8c7e4b792f40a8da9715bfe815be6b8 Mon Sep 17 00:00:00 2001 From: Dmitriy Chubinidze Date: Tue, 2 Dec 2025 22:25:03 +0000 Subject: [PATCH 01/12] Add the Sphinx copy-button Include the copy-button to enable improved code-block usability across the documentation Related PR: https://review.opendev.org/c/openstack/openstack-ansible/+/969317 Checklist: - Is the library actively maintained?: The library isn't very actively maintained, with updates coming around 2-3 times a year. However, it's stable enough that regular updates aren't necessary for most use cases. - Is the library license compatible? It's under the MIT license, so yes it's compatible. - Is the library already packaged in the distros we target (Ubuntu latest LTS / Debian latest)? No, it is not typically packaged in official Ubuntu or Debian repositories, but can be installed via pip. - Is the library required for OpenStack project or related dev or infrastructure setup? It can be useful for almost all projects with Sphinx documentation to provide easy copy-pasting for code examples in docs. - If the library release is managed by the Openstack release process does it use the cycle-with-intermediary release type? N/A Change-Id: I8c367e5f78ac15b28190c1d6788971681c58dacd Signed-off-by: Dmitriy Chubinidze --- global-requirements.txt | 1 + upper-constraints.txt | 1 + 2 files changed, 2 insertions(+) diff --git a/global-requirements.txt b/global-requirements.txt index 9482e32db..11854e425 100644 --- a/global-requirements.txt +++ b/global-requirements.txt @@ -289,6 +289,7 @@ pydotplus # MIT License Pygments # BSD license rst2txt # BSD sphinx!=1.6.6,!=1.6.7,!=2.1.0,!=3.0.0,!=3.4.2 # BSD +sphinx-copybutton # MIT sphinxcontrib-actdiag # BSD sphinxcontrib-apidoc # BSD sphinxcontrib-blockdiag # BSD diff --git a/upper-constraints.txt b/upper-constraints.txt index 62a168d0b..89701a833 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -559,3 +559,4 @@ XStatic-D3===3.5.17.1 actdiag===3.0.0 sphinxcontrib-applehelp===2.0.0 scikit-learn===1.7.2 +sphinx-copybutton===0.5.2 From fda430c4650f95765d5a5520b1e110434bff5062 Mon Sep 17 00:00:00 2001 From: "Dr. Jens Harbott" Date: Sun, 5 Apr 2026 11:52:37 +0200 Subject: [PATCH 02/12] Bump cross jobs to use python3.13 The cross jobs should use the latest available python version, which is Python 3.13 currently. Signed-off-by: Dr. Jens Harbott Change-Id: I97dbb2c4063a08328a8563ffd6791b7ce9eb03a4 --- .zuul.d/cross-jobs.yaml | 128 ++++++++++++++++++++-------------------- .zuul.d/project.yaml | 72 +++++++++++----------- 2 files changed, 100 insertions(+), 100 deletions(-) diff --git a/.zuul.d/cross-jobs.yaml b/.zuul.d/cross-jobs.yaml index 7473384e4..38c5e3686 100644 --- a/.zuul.d/cross-jobs.yaml +++ b/.zuul.d/cross-jobs.yaml @@ -13,7 +13,7 @@ .. zuul:jobvar:: tox_envlist Use the specified tox environments (``ALL`` selects all). - nodeset: ubuntu-noble + nodeset: debian-trixie-8GB vars: zuul_work_dir: "{{ (zuul.projects.values() | selectattr('required') | selectattr('name', 'match', '^(?!openstack/requirements)') | list)[0].src_dir }}" tox_constraints_file: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}/upper-constraints.txt" @@ -22,68 +22,68 @@ - .zuul.d/cross-jobs.yaml - job: - name: cross-aodh-py312 + name: cross-aodh-py313 parent: requirements-cross-test - description: Run cross-project tests on aodh with py312. + description: Run cross-project tests on aodh with py313. required-projects: openstack/aodh vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-barbican-py312 + name: cross-barbican-py313 parent: requirements-cross-test - description: Run cross-project tests on barbican with py312. + description: Run cross-project tests on barbican with py313. required-projects: openstack/barbican vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-ceilometer-py312 + name: cross-ceilometer-py313 parent: requirements-cross-test - description: Run cross-project tests on ceilometer with py312. + description: Run cross-project tests on ceilometer with py313. required-projects: openstack/ceilometer vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-cinder-py312 + name: cross-cinder-py313 parent: requirements-cross-test - description: Run cross-project tests on cinder with py312. + description: Run cross-project tests on cinder with py313. required-projects: openstack/cinder vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-designate-py312 + name: cross-designate-py313 parent: requirements-cross-test - description: Run cross-project tests on designate with py312. + description: Run cross-project tests on designate with py313. required-projects: openstack/designate vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-glance-py312 + name: cross-glance-py313 parent: requirements-cross-test - description: Run cross-project tests on glance with py312. + description: Run cross-project tests on glance with py313. required-projects: openstack/glance vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-heat-py312 + name: cross-heat-py313 parent: requirements-cross-test - description: Run cross-project tests on heat with py312. + description: Run cross-project tests on heat with py313. required-projects: openstack/heat vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-horizon-py312 + name: cross-horizon-py313 parent: requirements-cross-test - description: Run cross-project tests on horizon with py312. + description: Run cross-project tests on horizon with py313. required-projects: openstack/horizon vars: - tox_envlist: py312 + tox_envlist: py313 - job: name: cross-horizon-npm @@ -101,70 +101,70 @@ - .zuul.d/cross-jobs.yaml - job: - name: cross-keystone-py312 + name: cross-keystone-py313 parent: requirements-cross-test - description: Run cross-project tests on keystone with py312. + description: Run cross-project tests on keystone with py313. required-projects: openstack/keystone timeout: 3600 vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-kuryr-py312 + name: cross-kuryr-py313 parent: requirements-cross-test - description: Run cross-project tests on kuryr-kubernetes with py312. + description: Run cross-project tests on kuryr-kubernetes with py313. required-projects: openstack/kuryr-kubernetes vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-ironic-py312 + name: cross-ironic-py313 parent: requirements-cross-test - description: Run cross-project tests on ironic with py312. + description: Run cross-project tests on ironic with py313. required-projects: openstack/ironic vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-magnum-py312 + name: cross-magnum-py313 parent: requirements-cross-test - description: Run cross-project tests on magnum with py312. + description: Run cross-project tests on magnum with py313. required-projects: openstack/magnum vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-manila-py312 + name: cross-manila-py313 parent: requirements-cross-test - description: Run cross-project tests on manila with py312. + description: Run cross-project tests on manila with py313. required-projects: openstack/manila vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-masakari-py312 + name: cross-masakari-py313 parent: requirements-cross-test - description: Run cross-project tests on masakari with py312. + description: Run cross-project tests on masakari with py313. required-projects: openstack/masakari vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-mistral-py312 + name: cross-mistral-py313 parent: requirements-cross-test - description: Run cross-project tests on mistral with py312. + description: Run cross-project tests on mistral with py313. required-projects: openstack/mistral vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-neutron-py312 + name: cross-neutron-py313 parent: requirements-cross-test - description: Run cross-project tests on neutron with py312. + description: Run cross-project tests on neutron with py313. required-projects: openstack/neutron timeout: 3600 vars: - tox_envlist: py312 + tox_envlist: py313 - job: name: cross-nova-functional @@ -175,12 +175,12 @@ tox_envlist: functional - job: - name: cross-placement-functional-py312 + name: cross-placement-functional-py313 parent: requirements-cross-test - description: Run cross-project functional tests on placement with py312. + description: Run cross-project functional tests on placement with py313. required-projects: openstack/placement vars: - tox_envlist: functional-py312 + tox_envlist: functional-py313 - job: name: cross-nova-pep8 @@ -191,20 +191,20 @@ tox_envlist: pep8 - job: - name: cross-nova-py312 + name: cross-nova-py313 parent: requirements-cross-test - description: Run cross-project tests on nova with py312. + description: Run cross-project tests on nova with py313. required-projects: openstack/nova vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-placement-py312 + name: cross-placement-py313 parent: requirements-cross-test - description: Run cross-project tests on placement with py312. + description: Run cross-project tests on placement with py313. required-projects: openstack/placement vars: - tox_envlist: py312 + tox_envlist: py313 - job: name: cross-osvif-py3 @@ -215,20 +215,20 @@ tox_envlist: py3 - job: - name: cross-octavia-py312 + name: cross-octavia-py313 parent: requirements-cross-test - description: Run cross-project tests on octavia with py312. + description: Run cross-project tests on octavia with py313. required-projects: openstack/octavia vars: - tox_envlist: py312 + tox_envlist: py313 - job: - name: cross-swift-py312 + name: cross-swift-py313 parent: requirements-cross-test - description: Run cross-project tests on swift with py312. + description: Run cross-project tests on swift with py313. required-projects: openstack/swift vars: - tox_envlist: py312 + tox_envlist: py313 - job: name: cross-osc-tox-docs diff --git a/.zuul.d/project.yaml b/.zuul.d/project.yaml index 688f242a4..36283f22f 100644 --- a/.zuul.d/project.yaml +++ b/.zuul.d/project.yaml @@ -20,34 +20,34 @@ - requirements-tox-py313-check-uc - requirements-tox-validate-projects: voting: false - - cross-aodh-py312 - - cross-barbican-py312 - - cross-ceilometer-py312 - - cross-cinder-py312 - - cross-designate-py312 - - cross-glance-py312 - - cross-heat-py312 - - cross-horizon-py312 + - cross-aodh-py313 + - cross-barbican-py313 + - cross-ceilometer-py313 + - cross-cinder-py313 + - cross-designate-py313 + - cross-glance-py313 + - cross-heat-py313 + - cross-horizon-py313 - cross-horizon-npm - - cross-ironic-py312 - - cross-keystone-py312 - - cross-kuryr-py312 - - cross-manila-py312 - - cross-magnum-py312 - - cross-masakari-py312: + - cross-ironic-py313 + - cross-keystone-py313 + - cross-kuryr-py313 + - cross-manila-py313 + - cross-magnum-py313 + - cross-masakari-py313: voting: false - - cross-mistral-py312: + - cross-mistral-py313: voting: false - - cross-neutron-py312 + - cross-neutron-py313 - cross-nova-pep8 - - cross-nova-py312 - - cross-placement-py312 + - cross-nova-py313 + - cross-placement-py313 - cross-osvif-py3 - cross-nova-functional - - cross-placement-functional-py312 - - cross-octavia-py312 + - cross-placement-functional-py313 + - cross-octavia-py313 - cross-osc-tox-docs - - cross-swift-py312 + - cross-swift-py313 - cross-watcher-py3 - openstacksdk-functional-devstack - tempest-full-py3: @@ -78,28 +78,28 @@ - requirements-tox-py311-check-uc - requirements-tox-py312-check-uc - requirements-tox-py313-check-uc - - cross-cinder-py312 - - cross-designate-py312 - - cross-glance-py312 - - cross-heat-py312 - - cross-horizon-py312 + - cross-cinder-py313 + - cross-designate-py313 + - cross-glance-py313 + - cross-heat-py313 + - cross-horizon-py313 - cross-horizon-npm - - cross-ironic-py312 - - cross-keystone-py312 - - cross-kuryr-py312 - - cross-manila-py312 - - cross-neutron-py312 + - cross-ironic-py313 + - cross-keystone-py313 + - cross-kuryr-py313 + - cross-manila-py313 + - cross-neutron-py313 - cross-nova-pep8 - - cross-nova-py312: + - cross-nova-py313: files: ^upper-constraints.txt$ - - cross-placement-py312: + - cross-placement-py313: files: ^upper-constraints.txt$ - cross-osvif-py3 - cross-nova-functional - - cross-placement-functional-py312 - - cross-octavia-py312 + - cross-placement-functional-py313 + - cross-octavia-py313 - cross-osc-tox-docs - - cross-swift-py312 + - cross-swift-py313 - cross-watcher-py3 - openstacksdk-functional-devstack - tempest-full-py3: From 3f03d90ccb9cc8ea34b9c9001187b27067ddb323 Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Sat, 4 Apr 2026 08:14:42 +0000 Subject: [PATCH 03/12] Updated from generate-constraints Fixes applied to automated upper-constraints.txt update: Keep version specific pins where applicable. Pin versions for packages that are not ready for updating: - pyasn1,pyasn1_modules - pysnmp-lextudio: ironic: "AttributeError: module 'pysnmp.hlapi' has no attribute 'usmHMACMD5AuthProtocol'" - pyroute2: Neutron issues Pins only relevant for python_version==3.10: - backports.strenum===1.3.1 Change-Id: I5bf6d63416a68ec92ce63e1e985e6df3b7840661 Co-Authored-by: Dr. Jens Harbott Signed-off-by: OpenStack Proposal Bot Generated-By: openstack/project-config:playbooks/proposal/propose_update.sh --- upper-constraints.txt | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/upper-constraints.txt b/upper-constraints.txt index 0d0a50525..a3e6dd77d 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -15,7 +15,7 @@ Routes===2.5.1 rtslib-fb===2.2.4 oslo.limit===2.10.0 restructuredtext_lint===2.0.2 -tzdata===2025.3 +tzdata===2026.1 smmap===5.0.3 confget===5.1.2 XStatic-Angular-Bootstrap===2.5.0.1 @@ -40,7 +40,7 @@ python-slugify===8.0.4 cursive===0.2.3 oslo.service===4.5.1 django-appconf===1.2.0 -ntc_templates===9.0.0 +ntc_templates===9.1.0 sphinxcontrib-nwdiag===2.0.0 rbd-iscsi-client===0.1.8 alabaster===1.0.0 @@ -56,7 +56,7 @@ python-mistralclient===6.2.0 oslo.context===6.3.0 rcssmin===1.2.2 pycadf===4.0.1 -grpcio===1.78.0 +grpcio===1.80.0 sniffio===1.3.1 fixtures===4.3.2 neutron-lib===3.24.0 @@ -88,9 +88,9 @@ psycopg2===2.9.11 networkx===3.4.2 cheroot===11.1.2 XStatic-Angular===1.8.2.3 -zuul-sphinx===0.7.0 +zuul-sphinx===0.8.0 ply===3.11 -google-api-core===2.30.0 +google-api-core===2.30.2 requests-toolbelt===1.0.0 simplejson===3.20.2 python-swiftclient===4.10.0 @@ -103,7 +103,7 @@ scipy===1.15.3 opentelemetry-exporter-otlp===1.40.0 rsd-lib===1.2.0 XStatic-Jasmine===2.4.1.3 -googleapis-common-protos===1.73.1 +googleapis-common-protos===1.74.0 python-glanceclient===4.11.0 prometheus_client===0.24.1 jaraco.classes===3.4.0 @@ -141,7 +141,7 @@ semantic-version===2.10.0 ConfigArgParse===1.7.5 async-timeout===5.0.1 virtualbmc===3.3.0 -SQLAlchemy===2.0.48 +SQLAlchemy===2.0.49 pyroute2===0.8.1 google-auth===2.49.1 kazoo===2.11.0 @@ -149,7 +149,7 @@ pyspnego===0.12.1 trio-websocket===0.12.2 XStatic-roboto-fontface===0.8.0.1 pyudev===0.24.4 -eventlet===0.40.4 +eventlet===0.41.0 openstack-doc-tools===4.0.1 oslo.messaging===17.3.0 jira===3.10.5 @@ -174,7 +174,7 @@ pycparser===3.0 mock===5.2.0 PyYAML===6.0.3 beautifulsoup4===4.14.3 -ovs===3.7.0 +ovs===3.7.1 cryptography===43.0.3 httpcore===1.0.9 URLObject===3.0.0 @@ -187,7 +187,7 @@ gunicorn===25.3.0 storpool===7.3.0 textfsm===2.1.0 python-3parclient===4.4 -libvirt-python===12.1.0 +libvirt-python===12.2.0 python-zunclient===5.4.0 tzlocal===5.3.1 sysv_ipc===1.2.0 @@ -202,12 +202,12 @@ exceptiongroup===1.3.1 os-client-config===2.3.0 XStatic-Angular-Gettext===2.4.1.1 h11===0.16.0 -Pygments===2.19.2 +Pygments===2.20.0 XStatic-Hogan===2.0.0.5 XStatic-objectpath===1.2.1.1 python-manilaclient===6.0.0 sphinxcontrib-serializinghtml===2.0.0 -requests===2.33.0 +requests===2.33.1 snowballstemmer===3.0.1 Jinja2===3.1.6 XStatic-Bootstrap-SCSS===3.4.1.1 @@ -227,7 +227,7 @@ sphinx-feature-classification===2.1.0 XStatic-JQuery-Migrate===3.3.2.2 pytest-html===4.2.0 appdirs===1.4.4 -google-auth-httplib2===0.3.0 +google-auth-httplib2===0.3.1 daiquiri===3.4.0 influxdb===5.3.2 funcparserlib===2.0.0a0 @@ -297,12 +297,12 @@ pydotplus===2.0.2 boto3===1.35.99 jeepney===0.9.0 stestr===4.2.1 -pillow===12.1.1 +pillow===12.2.0 infoblox-client===0.6.2 pysmi-lextudio===1.4.3 oslo.serialization===5.9.1 warlock===2.1.0 -exabgp===5.0.5 +exabgp===5.0.6 aiomysql===0.3.2 sphinxcontrib-httpdomain===2.0.0 metalsmith===2.5.0 @@ -376,7 +376,7 @@ Logbook===1.9.2 PyNaCl===1.6.2 osc-lib===4.4.0 python-consul===1.1.0 -more-itertools===10.8.0 +more-itertools===11.0.1 seqdiag===3.0.0 numpy===2.2.6 msgpack===1.1.2 @@ -420,10 +420,10 @@ Django===4.2.29 pexpect===4.9.0 elastic-transport===9.2.1 cmd2===3.4.0 -python-json-logger===4.0.0 +python-json-logger===4.1.0 redis===7.4.0 jmespath===1.1.0 -click===8.3.1 +click===8.3.2 XStatic-smart-table===1.4.13.3 kuryr-lib===3.4.1 jsonpatch===1.33 @@ -485,7 +485,7 @@ boto===2.49.0 hyperlink===21.0.0 mitba===1.1.1 python-masakariclient===8.8.0 -Werkzeug===3.1.7 +Werkzeug===3.1.8 outcome===1.3.0.post0 APScheduler===3.11.2 xmlschema===2.5.1 @@ -531,13 +531,13 @@ greenlet===3.3.2 XStatic-Angular-Vis===4.16.0.1 iniconfig===2.3.0 referencing===0.37.0 -confluent-kafka===2.13.2 +confluent-kafka===2.14.0 backports.tarfile===1.2.0 xvfbwrapper===0.2.23 influxdb-client===1.50.0 tosca-parser===2.14.0 python-consul2===0.1.5 -charset-normalizer===3.4.6 +charset-normalizer===3.4.7 Flask===3.1.3 httpx===0.28.1 sqlalchemy-filters===0.13.0 From d51261d3e8f7a9fb706575e63f700838ebf643fe Mon Sep 17 00:00:00 2001 From: Stephen Finucane Date: Tue, 7 Apr 2026 11:10:22 +0100 Subject: [PATCH 04/12] Bump testtools 2.9.0 fixes some issues with assert* methods that are currently causing gate issues in the likes of openstacksdk. Change-Id: Ic86c270ee5dda683247a846936798166314022d3 Signed-off-by: Stephen Finucane --- upper-constraints.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/upper-constraints.txt b/upper-constraints.txt index 0d0a50525..1b889e8b2 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -336,7 +336,7 @@ asgiref===3.11.1 XStatic-JQuery.TableSorter===2.14.5.3 pifpaf===3.4.0 blockdiag===3.0.0 -testtools===2.8.7 +testtools===2.9.0 infi.dtypes.iqn===0.4.0 jsonpath-ng===1.8.0 XStatic-tv4===1.2.7.1 From 9411da7123a104af44b423fd3a8c3d799fc14cdf Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Wed, 8 Apr 2026 07:12:51 +0000 Subject: [PATCH 05/12] update constraint for etcd3gw to new release 2.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit meta: version: 2.6.0 meta: team: oslo meta: diff-start: - meta: series: independent meta: branch: master meta: release-type: release meta: pypi: no meta: first: no meta: release:Author: Stephen Finucane meta: release:Commit: Stephen Finucane meta: release:Change-Id: I6c89d0b7eadfe12d1910d785da3ffed2118823be meta: release:Code-Review+2: Thierry Carrez meta: release:Code-Review+2: Hervé Beraud meta: release:Workflow+1: Hervé Beraud meta: release:Code-Review+1: Daniel Bengtsson Change-Id: Id4b40f1a886a25cfc32c7aa6f8aa748d43453b1f Signed-off-by: OpenStack Proposal Bot Generated-By: openstack/project-config:roles/copy-release-tools-scripts/files/release-tools/update_constraints.sh --- upper-constraints.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/upper-constraints.txt b/upper-constraints.txt index 2b2cd6f51..9240ef3ed 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -449,7 +449,7 @@ requestsexceptions===1.4.0 testresources===2.0.2 falcon===4.2.0 tomlkit===0.14.0 -etcd3gw===2.5.0 +etcd3gw===2.6.0 Flask-RESTful===0.3.10 GitPython===3.1.46 python-ironicclient===6.0.0 From 8df14316d3897bfb6fb37a80fd80bd81dcc44bcf Mon Sep 17 00:00:00 2001 From: Stephen Finucane Date: Wed, 8 Apr 2026 11:18:09 +0100 Subject: [PATCH 06/12] Bump cliff We have not merged the H deliverables patch yet so the latest release of cliff is against stable/2026.1. Bump master u-c to this version. Change-Id: Iad539c88e3010d41f7b9b10eba048f7183c74fbe Signed-off-by: Stephen Finucane --- upper-constraints.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/upper-constraints.txt b/upper-constraints.txt index 2b2cd6f51..7a9d58c5d 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -232,7 +232,7 @@ daiquiri===3.4.0 influxdb===5.3.2 funcparserlib===2.0.0a0 passlib===1.7.4 -cliff===4.13.2 +cliff===4.13.3 os-brick===7.0.0 valkey===6.1.1 scp===0.15.0 From e4d91d2ccde6209f531478db9ec6834ac056be04 Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Fri, 10 Apr 2026 18:08:24 +0000 Subject: [PATCH 07/12] update constraint for openstack-release-test to new release 8.4.0 meta: version: 8.4.0 meta: team: Release Management meta: diff-start: - meta: series: hibiscus meta: branch: master meta: release-type: release meta: pypi: no meta: first: yes meta: release:Author: Elod Illes meta: release:Commit: Elod Illes meta: release:Change-Id: Ib4839c30b8d4c10b3ae6639ae14f947662a560d5 meta: release:Workflow+1: Elod Illes meta: release:Code-Review+2: Elod Illes Change-Id: I9f5f9107f79422d77f246eb45ff81444ea3a1de1 Signed-off-by: OpenStack Proposal Bot Generated-By: openstack/project-config:roles/copy-release-tools-scripts/files/release-tools/update_constraints.sh --- upper-constraints.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/upper-constraints.txt b/upper-constraints.txt index e8bc462ca..cb5972719 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -180,7 +180,7 @@ httpcore===1.0.9 URLObject===3.0.0 psycopg2-binary===2.9.11 glance_store===5.4.0 -openstack-release-test===8.3.0 +openstack-release-test===8.4.0 requests-mock===1.12.1 os-apply-config===14.0.1 gunicorn===25.3.0 From 99cec3776c75a71fab595fbac1fde051c2fca7be Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Sat, 11 Apr 2026 08:07:30 +0000 Subject: [PATCH 08/12] update constraint for openstack-doc-tools to new release 4.0.2 meta: version: 4.0.2 meta: team: oslo meta: diff-start: - meta: series: independent meta: branch: master meta: release-type: release meta: pypi: no meta: first: no meta: release:Author: Jeremy Stanley meta: release:Commit: Jeremy Stanley meta: release:Change-Id: I9a30f735a1e84388402ab9e1f6696a84c3c2cb01 meta: release:Workflow+1: Thierry Carrez meta: release:Code-Review+2: Thierry Carrez meta: release:Code-Review+1: Takashi Kajinami Change-Id: I7f996b298b70a6a7a50d7b4db9058f8e9abd4211 Signed-off-by: OpenStack Proposal Bot Generated-By: openstack/project-config:roles/copy-release-tools-scripts/files/release-tools/update_constraints.sh --- upper-constraints.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/upper-constraints.txt b/upper-constraints.txt index e8bc462ca..18db98c03 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -150,7 +150,7 @@ trio-websocket===0.12.2 XStatic-roboto-fontface===0.8.0.1 pyudev===0.24.4 eventlet===0.41.0 -openstack-doc-tools===4.0.1 +openstack-doc-tools===4.0.2 oslo.messaging===17.3.0 jira===3.10.5 PyJWT===2.12.1 From 7acf8387cbc37bb228b2a075de6c5479edb5f290 Mon Sep 17 00:00:00 2001 From: "Dr. Jens Harbott" Date: Sat, 11 Apr 2026 14:43:56 +0200 Subject: [PATCH 09/12] Drop pysnmp-lextudio from global-requirements The dependency has been dropped from ironic in [0]. Also the comment about pysnmp is no longer true, it is being maintained again and vitrage is using it. [0] https://review.opendev.org/c/openstack/ironic/+/982147 Signed-off-by: Dr. Jens Harbott Change-Id: I59857d930e4ac04a90d2e8e10c360b4f30fa1a13 --- global-requirements.txt | 7 +------ upper-constraints.txt | 1 - 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/global-requirements.txt b/global-requirements.txt index b1b617db1..1678399fe 100644 --- a/global-requirements.txt +++ b/global-requirements.txt @@ -135,7 +135,7 @@ pyOpenSSL # Apache-2.0 pyparsing # MIT pyroute2!=0.5.4,!=0.5.5,!=0.7.1,!=0.9.1,!=0.9.2,!=0.9.3,!=0.9.4;sys_platform!='win32' # Apache-2.0 (+ dual licensed GPL2) pysaml2!=4.0.3,!=4.0.4,!=4.0.5rc1,!=4.0.5,!=4.1.0,!=4.2.0,!=4.3.0,!=4.4.0,!=4.6.0 # Apache-2.0 -pysnmp-lextudio # BSD +pysnmp # BSD pystache # MIT # Only required for sasl/binary protocol python-binary-memcached # MIT @@ -483,11 +483,6 @@ jsonpath-rw # Apache-2.0 jsonpath-rw-ext # Apache-2.0 python-consul # MIT License python-consul2 # MIT License -# pysnmp library is not maintained since 4 years, it is -# not recommended to use it, use its fork pysnmp-lextudio instead -# in conjunction with its dependencies pyasn1-lextudio and -# pyasn1-modules-lextudio -pysnmp # BSD simplejson # MIT six # MIT zake # Apache-2.0 diff --git a/upper-constraints.txt b/upper-constraints.txt index 92501c156..948c5834d 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -366,7 +366,6 @@ python-octaviaclient===3.13.0 pysaml2===7.5.4 requests-oauthlib===2.0.0 oslo.reports===3.7.0 -pysnmp-lextudio===6.1.2 bitmath===1.3.3.1 ceilometermiddleware===3.10.0 testrepository===0.0.22 From 2c6eae3260867a648c252e8f39520cef685aba65 Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Sat, 11 Apr 2026 08:28:03 +0000 Subject: [PATCH 10/12] Updated from generate-constraints Fixes applied to automated upper-constraints.txt update: Keep version specific pins where applicable. Pin versions for packages that are not ready for updating: - pyroute2: Neutron issues Pins only relevant for python_version==3.10: - backports.strenum===1.3.1 Co-Authored-by: Dr. Jens Harbott Change-Id: I46092a7a5ede41a0870d4ad968a473487e71bfed Signed-off-by: OpenStack Proposal Bot Generated-By: openstack/project-config:playbooks/proposal/propose_update.sh --- upper-constraints.txt | 64 +++++++++++++++++++++---------------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/upper-constraints.txt b/upper-constraints.txt index 948c5834d..d3e4a0905 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -31,11 +31,11 @@ os-resource-classes===1.1.0 mypy_extensions===1.1.0 tabulate===0.10.0 python-ironic-inspector-client===5.4.0 -lxml===6.0.2 +lxml===6.0.3 vintage===0.4.1 rst2txt===1.1.0 setproctitle===1.3.7 -pytest===9.0.2 +pytest===9.0.3 python-slugify===8.0.4 cursive===0.2.3 oslo.service===4.5.1 @@ -48,7 +48,7 @@ pbr===7.0.3 munch===4.0.0 waiting===1.5.0 attrs===26.1.0 -jwcrypto===1.5.6 +jwcrypto===1.5.7 Pint===0.24.4 oslo.i18n===6.7.2 jsonpath-rw-ext===1.2.2 @@ -70,7 +70,7 @@ XStatic-Font-Awesome===6.2.1.2 nose===1.3.7 waitress===3.0.2 os-refresh-config===14.0.1 -pysnmp===7.1.22 +pysnmp===7.1.23 Mako===1.3.10 sphinxcontrib-htmlhelp===2.1.0 XStatic-jQuery===3.7.1.1 @@ -90,7 +90,7 @@ cheroot===11.1.2 XStatic-Angular===1.8.2.3 zuul-sphinx===0.8.0 ply===3.11 -google-api-core===2.30.2 +google-api-core===2.30.3 requests-toolbelt===1.0.0 simplejson===3.20.2 python-swiftclient===4.10.0 @@ -100,12 +100,12 @@ monasca-common===3.8.0 hyperframe===6.1.0 zeroconf===0.148.0 scipy===1.15.3 -opentelemetry-exporter-otlp===1.40.0 +opentelemetry-exporter-otlp===1.41.0 rsd-lib===1.2.0 XStatic-Jasmine===2.4.1.3 googleapis-common-protos===1.74.0 python-glanceclient===4.11.0 -prometheus_client===0.24.1 +prometheus_client===0.25.0 jaraco.classes===3.4.0 debtcollector===3.1.0 responses===0.26.0 @@ -123,9 +123,9 @@ sqlparse===0.5.5 oslotest===6.1.0 jsonpointer===3.1.1 defusedxml===0.7.1 -opentelemetry-sdk===1.40.0 +opentelemetry-sdk===1.41.0 netaddr===1.3.0 -pyghmi===1.6.14 +pyghmi===1.6.15 sphinxcontrib-blockdiag===3.0.0 aiosqlite===0.22.1 gnocchiclient===7.2.0 @@ -143,7 +143,7 @@ async-timeout===5.0.1 virtualbmc===3.3.0 SQLAlchemy===2.0.49 pyroute2===0.8.1 -google-auth===2.49.1 +google-auth===2.49.2 kazoo===2.11.0 pyspnego===0.12.1 trio-websocket===0.12.2 @@ -218,7 +218,7 @@ ruamel.yaml===0.19.1 websockify===0.13.0 gssapi===1.11.1 XStatic-JQuery.quicksearch===2.0.3.3 -pyasn1_modules===0.4.1 +pyasn1_modules===0.4.2 mpmath===1.3.0 python-binary-memcached===0.31.4 jaraco.context===6.1.2 @@ -241,7 +241,7 @@ python-zaqarclient===4.4.0 ldappool===3.0.0 hpack===4.1.0 joblib===1.5.3 -google-api-python-client===2.193.0 +google-api-python-client===2.194.0 castellan===5.6.0 oslo.versionedobjects===3.9.0 enmerkar===0.7.1 @@ -259,7 +259,7 @@ pycdlib===1.14.0 pyperclip===1.11.0 cassandra-driver===3.29.3 XStatic-Angular-Schema-Form===0.8.13.1 -opentelemetry-exporter-otlp-proto-http===1.40.0 +opentelemetry-exporter-otlp-proto-http===1.41.0 gabbi===4.2.0 nwdiag===3.0.0 XStatic-bootswatch===3.3.7.1 @@ -281,7 +281,7 @@ docutils===0.21.2 threadpoolctl===3.6.0 os-ken===4.1.1 ujson===5.12.0 -selenium===4.41.0 +selenium===4.43.0 pytest-subtests===0.15.0 mistral-lib===3.5.1 dogtag-pki===11.2.1 @@ -291,8 +291,8 @@ os-win===5.9.0 capacity===1.3.14 markdown-it-py===4.0.0 retrying===1.4.2 -python-discovery===1.2.1 -platformdirs===4.9.4 +python-discovery===1.2.2 +platformdirs===4.9.6 pydotplus===2.0.2 boto3===1.35.99 jeepney===0.9.0 @@ -302,7 +302,7 @@ infoblox-client===0.6.2 pysmi-lextudio===1.4.3 oslo.serialization===5.9.1 warlock===2.1.0 -exabgp===5.0.6 +exabgp===5.0.8 aiomysql===0.3.2 sphinxcontrib-httpdomain===2.0.0 metalsmith===2.5.0 @@ -313,7 +313,7 @@ oslo.vmware===4.9.0 autopage===0.6.0 gitdb===4.0.12 python-monascaclient===2.8.0 -opentelemetry-api===1.40.0 +opentelemetry-api===1.41.0 automaton===3.4.0 os-service-types===1.8.2 keyring===25.7.0 @@ -327,7 +327,7 @@ enum34===1.1.10 infinisdk===289.1.0 rich-argparse===1.7.2 packaging===26.0 -opentelemetry-exporter-otlp-proto-grpc===1.40.0 +opentelemetry-exporter-otlp-proto-grpc===1.41.0 psutil===7.2.2 txaio===25.9.2 elasticsearch===9.3.0 @@ -345,7 +345,7 @@ python-cinderclient===9.9.0 keystonemiddleware===12.0.0 django-formtools===2.5.1 XStatic-Spin===1.2.5.3 -rich===14.3.3 +rich===14.3.4 os-traits===3.6.0 typepy===1.3.4 SecretStorage===3.5.0 @@ -369,13 +369,13 @@ oslo.reports===3.7.0 bitmath===1.3.3.1 ceilometermiddleware===3.10.0 testrepository===0.0.22 -librt===0.8.1 +librt===0.9.0 sympy===1.14.0 Logbook===1.9.2 PyNaCl===1.6.2 osc-lib===4.4.0 python-consul===1.1.0 -more-itertools===11.0.1 +more-itertools===11.0.2 seqdiag===3.0.0 numpy===2.2.6 msgpack===1.1.2 @@ -398,12 +398,12 @@ construct===2.10.70 pytest-metadata===3.1.1 pyparsing===3.3.2 geomet===1.1.0 -opentelemetry-exporter-otlp-proto-common===1.40.0 +opentelemetry-exporter-otlp-proto-common===1.41.0 distlib===0.4.0 dogpile.cache===1.5.0 python-barbicanclient===7.3.0 salt===3007.13 -opentelemetry-semantic-conventions===0.61b0 +opentelemetry-semantic-conventions===0.62b0 api-object-schema===2.0.0 blinker===1.9.0 WSME===0.12.1 @@ -413,9 +413,9 @@ sherlock===0.4.1 stevedore===5.7.0 botocore===1.35.99 xmltodict===1.0.4 -pyasn1===0.6.0 +pyasn1===0.6.3 oslo.rootwrap===7.9.0 -Django===4.2.29 +Django===4.2.30 pexpect===4.9.0 elastic-transport===9.2.1 cmd2===3.4.0 @@ -473,7 +473,7 @@ pyeclib===1.7.0 repoze.lru===0.7 rfc3986===2.0.0 tenacity===9.1.4 -invoke===2.2.1 +invoke===3.0.3 python-designateclient===6.4.0 pytest-cov===4.1.0 reactivex===4.1.0 @@ -506,7 +506,7 @@ docker===7.1.0 storops===1.2.12 anyio===4.13.0 XStatic-Angular-lrdragndrop===1.0.2.7 -ovsdbapp===2.16.0 +ovsdbapp===2.16.1 aniso8601===10.0.1 rjsmin===1.2.5 icalendar===7.0.3 @@ -526,7 +526,7 @@ storpool.spopenstack===3.2.0 dnspython===2.8.0 oauthlib===3.3.1 zipp===3.23.0 -greenlet===3.3.2 +greenlet===3.4.0 XStatic-Angular-Vis===4.16.0.1 iniconfig===2.3.0 referencing===0.37.0 @@ -550,18 +550,18 @@ python-linstor===1.27.1 filelock===3.25.2 python-tackerclient===2.5.0 python-heatclient===5.1.0 -oslo.utils===10.0.0 +oslo.utils===10.0.1 requests-kerberos===0.15.0 itsdangerous===2.2.0 XStatic-jquery-ui===1.13.0.2 monasca-statsd===2.7.0 python-dateutil===2.9.0.post0 -virtualenv===21.2.0 +virtualenv===21.2.1 colorama===0.4.6 confetti===2.5.3 ironic-lib===7.0.0 pytz===2026.1.post1 -opentelemetry-proto===1.40.0 +opentelemetry-proto===1.41.0 XStatic-D3===3.5.17.1 actdiag===3.0.0 sphinxcontrib-applehelp===2.0.0 From 84e467a02fc484ca063ae383ab95d04f530090fb Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Mon, 13 Apr 2026 11:51:01 +0000 Subject: [PATCH 11/12] update constraint for openstacksdk to new release 4.11.0 meta: version: 4.11.0 meta: team: OpenStackSDK meta: diff-start: - meta: series: hibiscus meta: branch: master meta: release-type: release meta: pypi: yes meta: first: yes meta: release:Author: Goutham Pacha Ravi meta: release:Commit: Goutham Pacha Ravi meta: release:e8b69cf27 Identity: Support authorization_ttl property for identity providers meta: release:Change-Id: Iaf84a3a919d1d01b351ee6e01ad62205f39b7e6b meta: release:Workflow+1: Elod Illes meta: release:Code-Review+2: Elod Illes meta: release:Code-Review+1: Artem Goncharov meta: release:Code-Review+2: Dr. Jens Harbott Change-Id: Idd14bef186116f7691f9e64237885735aead2c06 Signed-off-by: OpenStack Proposal Bot Generated-By: openstack/project-config:roles/copy-release-tools-scripts/files/release-tools/update_constraints.sh --- upper-constraints.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/upper-constraints.txt b/upper-constraints.txt index d3e4a0905..9b69e3539 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -432,7 +432,7 @@ cotyledon===2.2.0 xattr===1.3.0 systemd-python===235 python-memcached===1.62 -openstacksdk===4.10.0 +openstacksdk===4.11.0 infi.dtypes.nqn===0.1.0 six===1.17.0 h2===4.3.0 From f4bb697e1d700309d88eebd8433e00da6f0eba7c Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Tue, 14 Apr 2026 12:10:29 +0000 Subject: [PATCH 12/12] update constraint for osc-lib to new release 4.5.0 meta: version: 4.5.0 meta: team: OpenStackSDK meta: diff-start: - meta: series: hibiscus meta: branch: master meta: release-type: release meta: pypi: yes meta: first: yes meta: release:Author: Stephen Finucane meta: release:Commit: Stephen Finucane meta: release:Change-Id: Ib82aeb4129030ca715a067fc54027002d073d57a meta: release:Code-Review+2: Elod Illes meta: release:Workflow+1: Elod Illes Change-Id: Ie4428c5ee444a51eac22dcd935172b2160b5b56c Signed-off-by: OpenStack Proposal Bot Generated-By: openstack/project-config:roles/copy-release-tools-scripts/files/release-tools/update_constraints.sh --- upper-constraints.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/upper-constraints.txt b/upper-constraints.txt index 9b69e3539..f36730d59 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -373,7 +373,7 @@ librt===0.9.0 sympy===1.14.0 Logbook===1.9.2 PyNaCl===1.6.2 -osc-lib===4.4.0 +osc-lib===4.5.0 python-consul===1.1.0 more-itertools===11.0.2 seqdiag===3.0.0