Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-novaclient for 
openSUSE:Factory checked in at 2026-08-09 21:35:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-novaclient (Old)
 and      /work/SRC/openSUSE:Factory/.python-novaclient.new.16738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-novaclient"

Sun Aug  9 21:35:12 2026 rev:48 rq:1370125 version:18.13.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-novaclient/python-novaclient.changes      
2026-05-18 17:50:46.663150524 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-novaclient.new.16738/python-novaclient.changes
   2026-08-09 21:37:36.890890946 +0200
@@ -1,0 +2,8 @@
+Thu Aug  6 20:48:50 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 18.13.0:
+  * Remove deprecation warning workaround
+  * Update master for stable/2026.1
+  * Add version foot protector
+
+-------------------------------------------------------------------

Old:
----
  python_novaclient-18.12.0.tar.gz

New:
----
  python_novaclient-18.13.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-novaclient.spec ++++++
--- /var/tmp/diff_new_pack.2DXmF0/_old  2026-08-09 21:37:37.350906609 +0200
+++ /var/tmp/diff_new_pack.2DXmF0/_new  2026-08-09 21:37:37.354906745 +0200
@@ -18,7 +18,7 @@
 
 %global pythons %{primary_python}
 Name:           python-novaclient
-Version:        18.12.0
+Version:        18.13.0
 Release:        0
 Summary:        Python API and CLI for OpenStack Nova
 License:        Apache-2.0

++++++ python_novaclient-18.12.0.tar.gz -> python_novaclient-18.13.0.tar.gz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python_novaclient-18.12.0/ChangeLog 
new/python_novaclient-18.13.0/ChangeLog
--- old/python_novaclient-18.12.0/ChangeLog     2026-02-24 15:34:39.000000000 
+0100
+++ new/python_novaclient-18.13.0/ChangeLog     2026-05-13 11:19:36.000000000 
+0200
@@ -1,6 +1,13 @@
 CHANGES
 =======
 
+18.13.0
+-------
+
+* Remove deprecation warning workaround
+* Update master for stable/2026.1
+* Add version foot protector
+
 18.12.0
 -------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python_novaclient-18.12.0/PKG-INFO 
new/python_novaclient-18.13.0/PKG-INFO
--- old/python_novaclient-18.12.0/PKG-INFO      2026-02-24 15:34:40.017911700 
+0100
+++ new/python_novaclient-18.13.0/PKG-INFO      2026-05-13 11:19:36.917249000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: python-novaclient
-Version: 18.12.0
+Version: 18.13.0
 Summary: Client library for OpenStack Compute API
 Home-page: https://docs.openstack.org/python-novaclient/latest
 Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python_novaclient-18.12.0/novaclient/api_versions.py 
new/python_novaclient-18.13.0/novaclient/api_versions.py
--- old/python_novaclient-18.12.0/novaclient/api_versions.py    2026-02-24 
15:33:49.000000000 +0100
+++ new/python_novaclient-18.13.0/novaclient/api_versions.py    2026-05-13 
11:19:06.000000000 +0200
@@ -14,7 +14,6 @@
 import functools
 import logging
 import os
-import pkgutil
 import re
 import traceback
 import warnings
@@ -195,35 +194,59 @@
 
 
 def get_available_major_versions():
-    # NOTE(andreykurilin): available clients version should not be
-    # hardcoded, so let's discover them.
-    matcher = re.compile(r"v[0-9]*$")
-    submodules = pkgutil.iter_modules([os.path.dirname(__file__)])
-    available_versions = [name[1:] for loader, name, ispkg in submodules
-                          if matcher.search(name)]
-
-    return available_versions
+    return ['2']
 
 
 def check_major_version(api_version):
     """Checks major part of ``APIVersion`` obj is supported.
 
     :raises novaclient.exceptions.UnsupportedVersion: if major part is not
-                                                      supported
+        supported
     """
-    available_versions = get_available_major_versions()
-    if (not api_version.is_null() and
-            str(api_version.ver_major) not in available_versions):
-        if len(available_versions) == 1:
-            msg = _("Invalid client version '%(version)s'. "
-                    "Major part should be '%(major)s'") % {
-                "version": api_version.get_string(),
-                "major": available_versions[0]}
-        else:
-            msg = _("Invalid client version '%(version)s'. "
-                    "Major part must be one of: '%(major)s'") % {
-                "version": api_version.get_string(),
-                "major": ", ".join(available_versions)}
+    if api_version.is_null():
+        return
+
+    if api_version.ver_major == 2:
+        return
+
+    msg = _(
+        "Invalid client version '%(version)s'. Major part should be '2'"
+    ) % {"version": api_version.get_string()}
+    raise exceptions.UnsupportedVersion(msg)
+
+
+def check_version(api_version):
+    """Checks if version of ``APIVersion`` is supported.
+
+    Provided as an alternative to :func:`check_major_version` to avoid changing
+    the behavior of that function.
+
+    :raises novaclient.exceptions.UnsupportedVersion: if major part is not
+        supported
+    """
+    if api_version.is_null():
+        return
+
+    # we can't use API_MIN_VERSION since we do support 2.0 (which is 2.1 but
+    # less strict)
+    if api_version < APIVersion('2.0'):
+        msg = _(
+            "Invalid client version '%(version)s'. "
+            "Min version supported is '%(min_version)s'"
+        ) % {
+            "version": api_version.get_string(),
+            "min_version": novaclient.API_MIN_VERSION,
+        }
+        raise exceptions.UnsupportedVersion(msg)
+
+    if api_version > novaclient.API_MAX_VERSION:
+        msg = _(
+            "Invalid client version '%(version)s'. "
+            "Max version supported is '%(max_version)s'"
+        ) % {
+            "version": api_version.get_string(),
+            "max_version": novaclient.API_MAX_VERSION,
+        }
         raise exceptions.UnsupportedVersion(msg)
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python_novaclient-18.12.0/novaclient/client.py 
new/python_novaclient-18.13.0/novaclient/client.py
--- old/python_novaclient-18.12.0/novaclient/client.py  2026-02-24 
15:33:49.000000000 +0100
+++ new/python_novaclient-18.13.0/novaclient/client.py  2026-05-13 
11:19:06.000000000 +0200
@@ -51,6 +51,12 @@
         self.timings = kwargs.pop('timings', False)
         self.api_version = kwargs.pop('api_version', None)
         self.api_version = self.api_version or api_versions.APIVersion()
+
+        if isinstance(self.api_version, str):
+            self.api_version = api_versions.APIVersion(self.api_version)
+
+        api_versions.check_version(self.api_version)
+
         super(SessionClient, self).__init__(*args, **kwargs)
 
     def request(self, url, method, **kwargs):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python_novaclient-18.12.0/novaclient/shell.py 
new/python_novaclient-18.13.0/novaclient/shell.py
--- old/python_novaclient-18.12.0/novaclient/shell.py   2026-02-24 
15:33:49.000000000 +0100
+++ new/python_novaclient-18.13.0/novaclient/shell.py   2026-05-13 
11:19:06.000000000 +0200
@@ -20,7 +20,6 @@
 
 import argparse
 import logging
-import os
 import sys
 
 from keystoneauth1 import loading
@@ -822,16 +821,13 @@
 
 def main(argv=sys.argv[1:]):
     try:
-        # Special dansmith envvar to hide the warning. Don't rely on this
-        # because we will eventually remove all this stuff.
-        if os.environ.get("NOVACLIENT_ISHOULDNTBEDOINGTHIS") != "1":
-            print(
-                _(
-                    "nova CLI is deprecated and will be removed in a future "
-                    "release"
-                ),
-                file=sys.stderr,
-            )
+        print(
+            _(
+                "nova CLI is deprecated and will be removed in a future "
+                "release"
+            ),
+            file=sys.stderr,
+        )
         argv = [encodeutils.safe_decode(a) for a in argv]
         OpenStackComputeShell().main(argv)
     except Exception as exc:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python_novaclient-18.12.0/novaclient/tests/unit/test_api_versions.py 
new/python_novaclient-18.13.0/novaclient/tests/unit/test_api_versions.py
--- old/python_novaclient-18.12.0/novaclient/tests/unit/test_api_versions.py    
2026-02-24 15:33:49.000000000 +0100
+++ new/python_novaclient-18.13.0/novaclient/tests/unit/test_api_versions.py    
2026-05-13 11:19:06.000000000 +0200
@@ -343,6 +343,27 @@
         self.assertEqual(expected_name, fake_func.__id__)
 
 
+class CheckVersionTestCase(utils.TestCase):
+    def test_version_unsupported(self):
+        for version in ('1.0', '1.5', '1.100'):
+            with self.subTest('version too old', version=version):
+                self.assertRaises(
+                    exceptions.UnsupportedVersion,
+                    api_versions.check_version,
+                    api_versions.APIVersion(version))
+
+        for version in ('2.97', '2.101', '3.0'):
+            with self.subTest('version too new', version=version):
+                self.assertRaises(
+                    exceptions.UnsupportedVersion,
+                    api_versions.check_version,
+                    api_versions.APIVersion(version))
+
+        for version in ('2.1', '2.57', '2.96'):
+            with self.subTest('version just right', version=version):
+                api_versions.check_version(api_versions.APIVersion(version))
+
+
 class DiscoverVersionTestCase(utils.TestCase):
     def setUp(self):
         super(DiscoverVersionTestCase, self).setUp()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python_novaclient-18.12.0/python_novaclient.egg-info/PKG-INFO 
new/python_novaclient-18.13.0/python_novaclient.egg-info/PKG-INFO
--- old/python_novaclient-18.12.0/python_novaclient.egg-info/PKG-INFO   
2026-02-24 15:34:39.000000000 +0100
+++ new/python_novaclient-18.13.0/python_novaclient.egg-info/PKG-INFO   
2026-05-13 11:19:36.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: python-novaclient
-Version: 18.12.0
+Version: 18.13.0
 Summary: Client library for OpenStack Compute API
 Home-page: https://docs.openstack.org/python-novaclient/latest
 Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python_novaclient-18.12.0/python_novaclient.egg-info/SOURCES.txt 
new/python_novaclient-18.13.0/python_novaclient.egg-info/SOURCES.txt
--- old/python_novaclient-18.12.0/python_novaclient.egg-info/SOURCES.txt        
2026-02-24 15:34:39.000000000 +0100
+++ new/python_novaclient-18.13.0/python_novaclient.egg-info/SOURCES.txt        
2026-05-13 11:19:36.000000000 +0200
@@ -318,6 +318,7 @@
 releasenotes/source/2024.2.rst
 releasenotes/source/2025.1.rst
 releasenotes/source/2025.2.rst
+releasenotes/source/2026.1.rst
 releasenotes/source/conf.py
 releasenotes/source/index.rst
 releasenotes/source/liberty.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python_novaclient-18.12.0/python_novaclient.egg-info/pbr.json 
new/python_novaclient-18.13.0/python_novaclient.egg-info/pbr.json
--- old/python_novaclient-18.12.0/python_novaclient.egg-info/pbr.json   
2026-02-24 15:34:39.000000000 +0100
+++ new/python_novaclient-18.13.0/python_novaclient.egg-info/pbr.json   
2026-05-13 11:19:36.000000000 +0200
@@ -1 +1 @@
-{"git_version": "e00ed698", "is_release": true}
\ No newline at end of file
+{"git_version": "fdea2c09", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python_novaclient-18.12.0/releasenotes/source/2026.1.rst 
new/python_novaclient-18.13.0/releasenotes/source/2026.1.rst
--- old/python_novaclient-18.12.0/releasenotes/source/2026.1.rst        
1970-01-01 01:00:00.000000000 +0100
+++ new/python_novaclient-18.13.0/releasenotes/source/2026.1.rst        
2026-05-13 11:19:06.000000000 +0200
@@ -0,0 +1,6 @@
+===========================
+2026.1 Series Release Notes
+===========================
+
+.. release-notes::
+   :branch: stable/2026.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python_novaclient-18.12.0/releasenotes/source/index.rst 
new/python_novaclient-18.13.0/releasenotes/source/index.rst
--- old/python_novaclient-18.12.0/releasenotes/source/index.rst 2026-02-24 
15:33:49.000000000 +0100
+++ new/python_novaclient-18.13.0/releasenotes/source/index.rst 2026-05-13 
11:19:06.000000000 +0200
@@ -8,6 +8,7 @@
    :maxdepth: 2
 
    unreleased
+   2026.1
    2025.2
    2025.1
    2024.2

Reply via email to