Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-cliff for openSUSE:Factory 
checked in at 2026-08-01 18:34:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-cliff (Old)
 and      /work/SRC/openSUSE:Factory/.python-cliff.new.16738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-cliff"

Sat Aug  1 18:34:15 2026 rev:53 rq:1368880 version:4.15.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-cliff/python-cliff.changes        
2026-05-18 17:47:09.110158202 +0200
+++ /work/SRC/openSUSE:Factory/.python-cliff.new.16738/python-cliff.changes     
2026-08-01 18:37:25.396546851 +0200
@@ -1,0 +2,10 @@
+Fri Jul 31 17:09:57 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 4.15.0:
+  * Drop Python 3.10 support
+  * zuul: Use openstack-python3-next-jobs template
+  * pre-commit: Bump versions
+  * typing: Updates for latest cmd2
+  * Drop support for Python 3.10
+
+-------------------------------------------------------------------

Old:
----
  cliff-4.14.0.tar.gz

New:
----
  cliff-4.15.0.tar.gz

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

Other differences:
------------------
++++++ python-cliff.spec ++++++
--- /var/tmp/diff_new_pack.eLtbrl/_old  2026-08-01 18:37:25.872563229 +0200
+++ /var/tmp/diff_new_pack.eLtbrl/_new  2026-08-01 18:37:25.872563229 +0200
@@ -18,7 +18,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-cliff
-Version:        4.14.0
+Version:        4.15.0
 Release:        0
 Summary:        Command Line Interface Formulation Framework
 License:        Apache-2.0

++++++ cliff-4.14.0.tar.gz -> cliff-4.15.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/.pre-commit-config.yaml 
new/cliff-4.15.0/.pre-commit-config.yaml
--- old/cliff-4.14.0/.pre-commit-config.yaml    2026-05-13 10:59:55.000000000 
+0200
+++ new/cliff-4.15.0/.pre-commit-config.yaml    2026-07-10 15:07:04.000000000 
+0200
@@ -15,7 +15,7 @@
         files: .*\.(yaml|yml)$
         exclude: '^zuul.d/.*$'
   - repo: https://github.com/astral-sh/ruff-pre-commit
-    rev: v0.14.8
+    rev: v0.15.18
     hooks:
       - id: ruff-check
         args: ['--fix', '--unsafe-fixes']
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/.zuul.yaml new/cliff-4.15.0/.zuul.yaml
--- old/cliff-4.14.0/.zuul.yaml 2026-05-13 10:59:55.000000000 +0200
+++ new/cliff-4.15.0/.zuul.yaml 2026-07-10 15:07:04.000000000 +0200
@@ -1,6 +1,8 @@
+---
+
 - job:
-    name: cliff-tox-py312-neutronclient-tip
-    parent: openstack-tox-py312
+    name: cliff-tox-py313-neutronclient-tip
+    parent: openstack-tox-py313
     description: |
       Run unit tests for neutronclient with master branch of cliff
 
@@ -24,15 +26,15 @@
       - check-requirements
       - lib-forward-testing-python3
       - openstack-python3-jobs
+      - openstack-python3-next-jobs
       - publish-openstack-docs-pti
     check:
       jobs:
-        - openstack-tox-py312
-        - cliff-tox-py312-neutronclient-tip
-        - osc-tox-py312-tips:
+        - cliff-tox-py313-neutronclient-tip
+        - osc-tox-py313-tips:
             branches: ^master$
     gate:
       jobs:
-        - cliff-tox-py312-neutronclient-tip
-        - osc-tox-py312-tips:
+        - cliff-tox-py313-neutronclient-tip
+        - osc-tox-py313-tips:
             branches: ^master$
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/ChangeLog new/cliff-4.15.0/ChangeLog
--- old/cliff-4.14.0/ChangeLog  2026-05-13 11:00:23.000000000 +0200
+++ new/cliff-4.15.0/ChangeLog  2026-07-10 15:07:59.000000000 +0200
@@ -1,10 +1,20 @@
 CHANGES
 =======
 
+4.15.0
+------
+
+* Drop Python 3.10 support
+* zuul: Use openstack-python3-next-jobs template
+* pre-commit: Bump versions
+* typing: Updates for latest cmd2
+* Drop support for Python 3.10
+
 4.14.0
 ------
 
 * Fix command name alignment broken by ANSI color codes in help output
+* test: Use context manager-style assertRaises
 * typing: Remove additional use of private \_argparse module
 * typing: Use objects from typing
 * trivial: Use objects from collections.abc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/PKG-INFO new/cliff-4.15.0/PKG-INFO
--- old/cliff-4.14.0/PKG-INFO   2026-05-13 11:00:23.282622600 +0200
+++ new/cliff-4.15.0/PKG-INFO   2026-07-10 15:07:59.725746000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: cliff
-Version: 4.14.0
+Version: 4.15.0
 Summary: Command Line Interface Formulation Framework
 Author-email: OpenStack <[email protected]>
 License: Apache-2.0
@@ -13,12 +13,12 @@
 Classifier: Operating System :: POSIX :: Linux
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3.11
 Classifier: Programming Language :: Python :: 3.12
 Classifier: Programming Language :: Python :: 3.13
+Classifier: Programming Language :: Python :: 3.14
 Classifier: Typing :: Typed
-Requires-Python: >=3.10
+Requires-Python: >=3.11
 Description-Content-Type: text/x-rst
 License-File: LICENSE
 Requires-Dist: autopage>=0.4.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff/command.py 
new/cliff-4.15.0/cliff/command.py
--- old/cliff-4.14.0/cliff/command.py   2026-05-13 10:59:55.000000000 +0200
+++ new/cliff-4.15.0/cliff/command.py   2026-07-10 15:07:04.000000000 +0200
@@ -24,7 +24,7 @@
 if TYPE_CHECKING:
     from . import app as _app
     from . import hooks
-    from typing_extensions import Never
+    from typing import Never
 
 _T = TypeVar('_T')
 _dists_by_mods = None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff/interactive.py 
new/cliff-4.15.0/cliff/interactive.py
--- old/cliff-4.14.0/cliff/interactive.py       2026-05-13 10:59:55.000000000 
+0200
+++ new/cliff-4.15.0/cliff/interactive.py       2026-07-10 15:07:04.000000000 
+0200
@@ -181,7 +181,7 @@
             # Not a plugin command
             pass
         else:
-            statement = cmd2.Statement(
+            statement = cmd2.Statement(  # type: ignore[call-arg]
                 ' '.join(sub_argv),
                 raw=statement.raw,
                 command=cmd_name,
@@ -189,9 +189,9 @@
                 multiline_command=statement.multiline_command,
                 terminator=statement.terminator,
                 suffix=statement.suffix,
-                pipe_to=statement.pipe_to,
-                output=statement.output,
-                output_to=statement.output_to,
+                pipe_to=statement.pipe_to,  # type: ignore[attr-defined]
+                output=statement.output,  # type: ignore[attr-defined]
+                output_to=statement.output_to,  # type: ignore[attr-defined]
             )
         return statement
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff/tests/test_app.py 
new/cliff-4.15.0/cliff/tests/test_app.py
--- old/cliff-4.14.0/cliff/tests/test_app.py    2026-05-13 10:59:55.000000000 
+0200
+++ new/cliff-4.15.0/cliff/tests/test_app.py    2026-07-10 15:07:04.000000000 
+0200
@@ -282,10 +282,8 @@
                     help="Show help message and exit.",
                 )
 
-        self.assertRaises(
-            argparse.ArgumentError,
-            MyApp,
-        )
+        with self.assertRaises(argparse.ArgumentError):
+            MyApp()
 
     def test_conflicting_option_custom_arguments_should_not_throw(self):
         class MyApp(application.App):
@@ -364,11 +362,8 @@
             with mock.patch(
                 'cliff.help.HelpAction.__call__', side_effect=SystemExit(0)
             ) as helper:
-                self.assertRaises(
-                    SystemExit,
-                    app.run,
-                    ['--help'],
-                )
+                with self.assertRaises(SystemExit):
+                    app.run(['--help'])
                 self.assertTrue(helper.called)
             self.assertEqual(deferred_help, init.called)
 
@@ -504,11 +499,8 @@
         app.clean_up.reset_mock()
         app.run(['--quiet', 'mock'])
         app.clean_up.assert_called_once_with(command.return_value, 0, None)
-        self.assertRaises(
-            SystemExit,
-            app.run,
-            ['--verbose', '--quiet', 'mock'],
-        )
+        with self.assertRaises(SystemExit):
+            app.run(['--verbose', '--quiet', 'mock'])
 
 
 class TestIO(base.TestBase):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff/tests/test_command.py 
new/cliff-4.15.0/cliff/tests/test_command.py
--- old/cliff-4.14.0/cliff/tests/test_command.py        2026-05-13 
10:59:55.000000000 +0200
+++ new/cliff-4.15.0/cliff/tests/test_command.py        2026-07-10 
15:07:04.000000000 +0200
@@ -165,11 +165,8 @@
         # name that already exists because we configure the argument
         # parser to ignore conflicts but this option has no other name
         # to be used.
-        self.assertRaises(
-            argparse.ArgumentError,
-            parser.add_argument,
-            '-z',
-        )
+        with self.assertRaises(argparse.ArgumentError):
+            parser.add_argument('-z')
 
     def test_option_name_collision_with_alias(self):
         cmd = TestCommand(self.app, None)
@@ -208,11 +205,8 @@
             dest='foo',
             default='foo',
         )
-        self.assertRaises(
-            argparse.ArgumentError,
-            parser.add_argument,
-            '-f',
-        )
+        with self.assertRaises(argparse.ArgumentError):
+            parser.add_argument('-f')
 
     def test_resolve_conflict_argument(self):
         cmd = TestCommand(self.app, None)
@@ -236,8 +230,5 @@
     def test_wrong_conflict_handler(self):
         cmd = TestCommand(self.app, None)
         cmd.conflict_handler = 'wrong'
-        self.assertRaises(
-            ValueError,
-            cmd.get_parser,
-            'NAME',
-        )
+        with self.assertRaises(ValueError):
+            cmd.get_parser('NAME')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff/tests/test_commandmanager.py 
new/cliff-4.15.0/cliff/tests/test_commandmanager.py
--- old/cliff-4.14.0/cliff/tests/test_commandmanager.py 2026-05-13 
10:59:55.000000000 +0200
+++ new/cliff-4.15.0/cliff/tests/test_commandmanager.py 2026-07-10 
15:07:04.000000000 +0200
@@ -224,20 +224,14 @@
     def test_no_legacy(self):
         mgr = utils.TestCommandManager(utils.TEST_NAMESPACE)
         mgr.add_command('cmd1', FauxCommand)
-        self.assertRaises(
-            ValueError,
-            mgr.find_command,
-            ['cmd2'],
-        )
+        with self.assertRaises(ValueError):
+            mgr.find_command(['cmd2'])
 
     def test_no_command(self):
         mgr = utils.TestCommandManager(utils.TEST_NAMESPACE)
         mgr.add_legacy_command('cmd2', 'cmd1')
-        self.assertRaises(
-            ValueError,
-            mgr.find_command,
-            ['cmd2'],
-        )
+        with self.assertRaises(ValueError):
+            mgr.find_command(['cmd2'])
 
 
 class TestLookupAndFindPartialName(base.TestBase):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff/tests/test_help.py 
new/cliff-4.15.0/cliff/tests/test_help.py
--- old/cliff-4.14.0/cliff/tests/test_help.py   2026-05-13 10:59:55.000000000 
+0200
+++ new/cliff-4.15.0/cliff/tests/test_help.py   2026-07-10 15:07:04.000000000 
+0200
@@ -82,11 +82,8 @@
         help_cmd = help.HelpCommand(app, mock.Mock())
         parser = help_cmd.get_parser('test')
         parsed_args = parser.parse_args(['z'])
-        self.assertRaises(
-            ValueError,
-            help_cmd.run,
-            parsed_args,
-        )
+        with self.assertRaises(ValueError):
+            help_cmd.run(parsed_args)
 
     def test_show_help_for_help(self):
         # FIXME(dhellmann): Are commands tied too closely to the app? Or
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff/tests/test_lister.py 
new/cliff-4.15.0/cliff/tests/test_lister.py
--- old/cliff-4.14.0/cliff/tests/test_lister.py 2026-05-13 10:59:55.000000000 
+0200
+++ new/cliff-4.15.0/cliff/tests/test_lister.py 2026-07-10 15:07:04.000000000 
+0200
@@ -85,11 +85,8 @@
         parsed_args.sort_columns = []
         with mock.patch.object(test_lister, 'take_action') as mock_take_action:
             mock_take_action.return_value = (('Col1', 'Col2', 'Col3'), [])
-            self.assertRaises(
-                ValueError,
-                test_lister.run,
-                parsed_args,
-            )
+            with self.assertRaises(ValueError):
+                test_lister.run(parsed_args)
 
     def test_filter_by_columns_normalized(self):
         test_lister = ExerciseLister(mock.Mock(), None)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff/tests/test_show.py 
new/cliff-4.15.0/cliff/tests/test_show.py
--- old/cliff-4.14.0/cliff/tests/test_show.py   2026-05-13 10:59:55.000000000 
+0200
+++ new/cliff-4.15.0/cliff/tests/test_show.py   2026-07-10 15:07:04.000000000 
+0200
@@ -78,8 +78,5 @@
         parsed_args.formatter = 'test'
         with mock.patch.object(test_show, 'take_action') as mock_take_action:
             mock_take_action.return_value = (('Col1', 'Col2', 'Col3'), [])
-            self.assertRaises(
-                ValueError,
-                test_show.run,
-                parsed_args,
-            )
+            with self.assertRaises(ValueError):
+                test_show.run(parsed_args)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff.egg-info/PKG-INFO 
new/cliff-4.15.0/cliff.egg-info/PKG-INFO
--- old/cliff-4.14.0/cliff.egg-info/PKG-INFO    2026-05-13 11:00:23.000000000 
+0200
+++ new/cliff-4.15.0/cliff.egg-info/PKG-INFO    2026-07-10 15:07:59.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: cliff
-Version: 4.14.0
+Version: 4.15.0
 Summary: Command Line Interface Formulation Framework
 Author-email: OpenStack <[email protected]>
 License: Apache-2.0
@@ -13,12 +13,12 @@
 Classifier: Operating System :: POSIX :: Linux
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3.11
 Classifier: Programming Language :: Python :: 3.12
 Classifier: Programming Language :: Python :: 3.13
+Classifier: Programming Language :: Python :: 3.14
 Classifier: Typing :: Typed
-Requires-Python: >=3.10
+Requires-Python: >=3.11
 Description-Content-Type: text/x-rst
 License-File: LICENSE
 Requires-Dist: autopage>=0.4.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff.egg-info/SOURCES.txt 
new/cliff-4.15.0/cliff.egg-info/SOURCES.txt
--- old/cliff-4.14.0/cliff.egg-info/SOURCES.txt 2026-05-13 11:00:23.000000000 
+0200
+++ new/cliff-4.15.0/cliff.egg-info/SOURCES.txt 2026-07-10 15:07:59.000000000 
+0200
@@ -99,6 +99,7 @@
 releasenotes/notes/comparable-FormattableColumn-31c0030ced70b7fb.yaml
 releasenotes/notes/conflict-resolution-21bcb5f9a6c19d7f.yaml
 
releasenotes/notes/deprecate-commandmanager-namespace-argument-2d5169222402f633.yaml
+releasenotes/notes/drop-python-310-b16719b8c2215062.yaml
 releasenotes/notes/drop-python-39-bbeabc19b5143cd3.yaml
 releasenotes/notes/drop-python27-support-b16c9e5a9e2000ef.yaml
 releasenotes/notes/handle-none-values-when-sorting-de40e36c66ad95ca.yaml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/cliff.egg-info/pbr.json 
new/cliff-4.15.0/cliff.egg-info/pbr.json
--- old/cliff-4.14.0/cliff.egg-info/pbr.json    2026-05-13 11:00:23.000000000 
+0200
+++ new/cliff-4.15.0/cliff.egg-info/pbr.json    2026-07-10 15:07:59.000000000 
+0200
@@ -1 +1 @@
-{"git_version": "9e12d09", "is_release": true}
\ No newline at end of file
+{"git_version": "ba631ae", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/pyproject.toml 
new/cliff-4.15.0/pyproject.toml
--- old/cliff-4.14.0/pyproject.toml     2026-05-13 10:59:55.000000000 +0200
+++ new/cliff-4.15.0/pyproject.toml     2026-07-10 15:07:04.000000000 +0200
@@ -11,7 +11,7 @@
 readme = {file = "README.rst", content-type = "text/x-rst"}
 license = {text = "Apache-2.0"}
 dynamic = ["version", "dependencies"]
-requires-python = ">=3.10"
+requires-python = ">=3.11"
 classifiers = [
     "Development Status :: 5 - Production/Stable",
     "Environment :: Console",
@@ -20,10 +20,10 @@
     "Operating System :: POSIX :: Linux",
     "Programming Language :: Python",
     "Programming Language :: Python :: 3",
-    "Programming Language :: Python :: 3.10",
     "Programming Language :: Python :: 3.11",
     "Programming Language :: Python :: 3.12",
     "Programming Language :: Python :: 3.13",
+    "Programming Language :: Python :: 3.14",
     "Typing :: Typed",
 ]
 
@@ -71,7 +71,7 @@
 ]
 
 [tool.mypy]
-python_version = "3.10"
+python_version = "3.11"
 show_column_numbers = true
 show_error_context = true
 strict = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cliff-4.14.0/releasenotes/notes/drop-python-310-b16719b8c2215062.yaml 
new/cliff-4.15.0/releasenotes/notes/drop-python-310-b16719b8c2215062.yaml
--- old/cliff-4.14.0/releasenotes/notes/drop-python-310-b16719b8c2215062.yaml   
1970-01-01 01:00:00.000000000 +0100
+++ new/cliff-4.15.0/releasenotes/notes/drop-python-310-b16719b8c2215062.yaml   
2026-07-10 15:07:04.000000000 +0200
@@ -0,0 +1,5 @@
+---
+upgrade:
+  - |
+    Support for Python 3.10 has been dropped. The minimum version of Python now
+    supported in 3.11.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cliff-4.14.0/test-requirements.txt 
new/cliff-4.15.0/test-requirements.txt
--- old/cliff-4.14.0/test-requirements.txt      2026-05-13 10:59:55.000000000 
+0200
+++ new/cliff-4.15.0/test-requirements.txt      2026-07-10 15:07:04.000000000 
+0200
@@ -3,4 +3,4 @@
 # because there is a sphinx extension that has tests
 sphinx>=5.0.0 # BSD
 stestr>=1.0.0 # Apache-2.0
-testtools>=2.2.0 # MIT
+testtools>=2.8.0 # MIT

Reply via email to