Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-stevedore for 
openSUSE:Factory checked in at 2026-05-20 15:24:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-stevedore (Old)
 and      /work/SRC/openSUSE:Factory/.python-stevedore.new.1966 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-stevedore"

Wed May 20 15:24:40 2026 rev:51 rq:1354106 version:5.8.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-stevedore/python-stevedore.changes        
2026-02-26 18:58:44.794784780 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-stevedore.new.1966/python-stevedore.changes  
    2026-05-20 15:25:36.012806895 +0200
@@ -1,0 +2,12 @@
+Tue May 19 21:09:29 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 5.8.0:
+  * typing: Correct type of Extension.plugin argument
+  * tox: Use new constraints option
+  * pre-commit: Bump dependencies
+  * Update packaging configuration
+  * ruff: Configure hacking as external linter
+  * Update master for stable/2026.1
+  * Remove unused Makefile for doc
+
+-------------------------------------------------------------------

Old:
----
  stevedore-5.7.0.tar.gz

New:
----
  stevedore-5.8.0.tar.gz

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

Other differences:
------------------
++++++ python-stevedore.spec ++++++
--- /var/tmp/diff_new_pack.9MIkPL/_old  2026-05-20 15:25:37.140853376 +0200
+++ /var/tmp/diff_new_pack.9MIkPL/_new  2026-05-20 15:25:37.140853376 +0200
@@ -18,13 +18,13 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-stevedore
-Version:        5.7.0
+Version:        5.8.0
 Release:        0
 Summary:        Manage dynamic plugins for Python applications
 License:        Apache-2.0
 URL:            https://docs.openstack.org/stevedore/latest/
 Source:         
https://files.pythonhosted.org/packages/source/s/stevedore/stevedore-%{version}.tar.gz
-BuildRequires:  %{python_module pbr >= 2.0.0}
+BuildRequires:  %{python_module pbr >= 6.1.1}
 BuildRequires:  %{python_module pip}
 BuildRequires:  %{python_module setuptools}
 BuildRequires:  %{python_module wheel}
@@ -35,8 +35,7 @@
 BuildRequires:  %{python_module testtools}
 # /SECTION
 BuildRequires:  fdupes
-Requires:       python-importlib-metadata
-Requires:       python-pbr
+Requires:       python-pbr >= 6.1.1
 %if "%{?python_provides}" == "python3"
 Provides:       python3-stevedore = %{version}
 Obsoletes:      python3-stevedore < 5.6.0
@@ -71,7 +70,7 @@
 %pytest
 
 %files %{python_files}
-%doc AUTHORS ChangeLog README.rst
+%doc ChangeLog README.rst
 %license LICENSE
 %{python_sitelib}/stevedore
 %{python_sitelib}/stevedore-%{version}.dist-info

++++++ stevedore-5.7.0.tar.gz -> stevedore-5.8.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/.pre-commit-config.yaml 
new/stevedore-5.8.0/.pre-commit-config.yaml
--- old/stevedore-5.7.0/.pre-commit-config.yaml 2026-02-20 14:25:51.000000000 
+0100
+++ new/stevedore-5.8.0/.pre-commit-config.yaml 2026-05-18 11:14:06.000000000 
+0200
@@ -13,7 +13,7 @@
       - id: check-yaml
         files: .*\.(yaml|yml)$
   - repo: https://github.com/astral-sh/ruff-pre-commit
-    rev: v0.14.7
+    rev: v0.15.11
     hooks:
       - id: ruff-check
         args: ['--fix', '--unsafe-fixes']
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/ChangeLog 
new/stevedore-5.8.0/ChangeLog
--- old/stevedore-5.7.0/ChangeLog       2026-02-20 14:26:23.000000000 +0100
+++ new/stevedore-5.8.0/ChangeLog       2026-05-18 11:14:40.000000000 +0200
@@ -1,6 +1,17 @@
 CHANGES
 =======
 
+5.8.0
+-----
+
+* typing: Correct type of Extension.plugin argument
+* tox: Use new constraints option
+* pre-commit: Bump dependencies
+* Update packaging configuration
+* ruff: Configure hacking as external linter
+* Update master for stable/2026.1
+* Remove unused Makefile for doc
+
 5.7.0
 -----
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/PKG-INFO new/stevedore-5.8.0/PKG-INFO
--- old/stevedore-5.7.0/PKG-INFO        2026-02-20 14:26:23.661307600 +0100
+++ new/stevedore-5.8.0/PKG-INFO        2026-05-18 11:14:40.956585000 +0200
@@ -1,15 +1,14 @@
 Metadata-Version: 2.4
 Name: stevedore
-Version: 5.7.0
+Version: 5.8.0
 Summary: Manage dynamic plugins for Python applications
 Author-email: OpenStack <[email protected]>
-License: Apache-2.0
+License-Expression: Apache-2.0
 Project-URL: Homepage, https://docs.openstack.org/stevedore
 Project-URL: Repository, https://opendev.org/openstack/stevedore
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Environment :: Console
 Classifier: Intended Audience :: Developers
-Classifier: License :: OSI Approved :: Apache Software License
 Classifier: Operating System :: POSIX :: Linux
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/doc/Makefile 
new/stevedore-5.8.0/doc/Makefile
--- old/stevedore-5.7.0/doc/Makefile    2026-02-20 14:25:51.000000000 +0100
+++ new/stevedore-5.8.0/doc/Makefile    1970-01-01 01:00:00.000000000 +0100
@@ -1,153 +0,0 @@
-# Makefile for Sphinx documentation
-#
-
-# You can set these variables from the command line.
-SPHINXOPTS    =
-SPHINXBUILD   = sphinx-build
-PAPER         =
-BUILDDIR      = build
-
-# Internal variables.
-PAPEROPT_a4     = -D latex_paper_size=a4
-PAPEROPT_letter = -D latex_paper_size=letter
-ALLSPHINXOPTS   = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) 
source
-# the i18n builder cannot share the environment and doctrees with the others
-I18NSPHINXOPTS  = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
-
-.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp 
epub latex latexpdf text man changes linkcheck doctest gettext
-
-help:
-    @echo "Please use \`make <target>' where <target> is one of"
-    @echo "  html       to make standalone HTML files"
-    @echo "  dirhtml    to make HTML files named index.html in directories"
-    @echo "  singlehtml to make a single large HTML file"
-    @echo "  pickle     to make pickle files"
-    @echo "  json       to make JSON files"
-    @echo "  htmlhelp   to make HTML files and a HTML help project"
-    @echo "  qthelp     to make HTML files and a qthelp project"
-    @echo "  devhelp    to make HTML files and a Devhelp project"
-    @echo "  epub       to make an epub"
-    @echo "  latex      to make LaTeX files, you can set PAPER=a4 or 
PAPER=letter"
-    @echo "  latexpdf   to make LaTeX files and run them through pdflatex"
-    @echo "  text       to make text files"
-    @echo "  man        to make manual pages"
-    @echo "  texinfo    to make Texinfo files"
-    @echo "  info       to make Texinfo files and run them through makeinfo"
-    @echo "  gettext    to make PO message catalogs"
-    @echo "  changes    to make an overview of all changed/added/deprecated 
items"
-    @echo "  linkcheck  to check all external links for integrity"
-    @echo "  doctest    to run all doctests embedded in the documentation (if 
enabled)"
-
-clean:
-    -rm -rf $(BUILDDIR)/*
-
-html:
-    $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
-    @echo
-    @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
-
-dirhtml:
-    $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
-    @echo
-    @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
-
-singlehtml:
-    $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
-    @echo
-    @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
-
-pickle:
-    $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
-    @echo
-    @echo "Build finished; now you can process the pickle files."
-
-json:
-    $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
-    @echo
-    @echo "Build finished; now you can process the JSON files."
-
-htmlhelp:
-    $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
-    @echo
-    @echo "Build finished; now you can run HTML Help Workshop with the" \
-          ".hhp project file in $(BUILDDIR)/htmlhelp."
-
-qthelp:
-    $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
-    @echo
-    @echo "Build finished; now you can run "qcollectiongenerator" with the" \
-          ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
-    @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/stevedore.qhcp"
-    @echo "To view the help file:"
-    @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/stevedore.qhc"
-
-devhelp:
-    $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
-    @echo
-    @echo "Build finished."
-    @echo "To view the help file:"
-    @echo "# mkdir -p $$HOME/.local/share/devhelp/stevedore"
-    @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/stevedore"
-    @echo "# devhelp"
-
-epub:
-    $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
-    @echo
-    @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
-
-latex:
-    $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
-    @echo
-    @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
-    @echo "Run \`make' in that directory to run these through (pdf)latex" \
-          "(use \`make latexpdf' here to do that automatically)."
-
-latexpdf:
-    $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
-    @echo "Running LaTeX files through pdflatex..."
-    $(MAKE) -C $(BUILDDIR)/latex all-pdf
-    @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
-
-text:
-    $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
-    @echo
-    @echo "Build finished. The text files are in $(BUILDDIR)/text."
-
-man:
-    $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
-    @echo
-    @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
-
-texinfo:
-    $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
-    @echo
-    @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
-    @echo "Run \`make' in that directory to run these through makeinfo" \
-          "(use \`make info' here to do that automatically)."
-
-info:
-    $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
-    @echo "Running Texinfo files through makeinfo..."
-    make -C $(BUILDDIR)/texinfo info
-    @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
-
-gettext:
-    $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
-    @echo
-    @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
-
-changes:
-    $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
-    @echo
-    @echo "The overview file is in $(BUILDDIR)/changes."
-
-linkcheck:
-    $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
-    @echo
-    @echo "Link check complete; look for any errors in the above output " \
-          "or in $(BUILDDIR)/linkcheck/output.txt."
-
-doctest:
-    $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
-    @echo "Testing of doctests in the sources finished, look at the " \
-          "results in $(BUILDDIR)/doctest/output.txt."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/pyproject.toml 
new/stevedore-5.8.0/pyproject.toml
--- old/stevedore-5.7.0/pyproject.toml  2026-02-20 14:25:51.000000000 +0100
+++ new/stevedore-5.8.0/pyproject.toml  2026-05-18 11:14:06.000000000 +0200
@@ -9,14 +9,13 @@
     {name = "OpenStack", email = "[email protected]"},
 ]
 readme = {file = "README.rst", content-type = "text/x-rst"}
-license = {text = "Apache-2.0"}
+license = "Apache-2.0"
 dynamic = ["version", "dependencies"]
 requires-python = ">=3.10"
 classifiers = [
     "Development Status :: 5 - Production/Stable",
     "Environment :: Console",
     "Intended Audience :: Developers",
-    "License :: OSI Approved :: Apache Software License",
     "Operating System :: POSIX :: Linux",
     "Programming Language :: Python",
     "Programming Language :: Python :: 3",
@@ -42,18 +41,16 @@
 e1 = "stevedore.tests.test_extension:BrokenExtension"
 e2 = "stevedore.tests.notfound:UnimportableExtension"
 
-[tool.setuptools]
-packages = [
-    "stevedore"
-]
+[tool.setuptools.packages.find]
+include = ["stevedore"]
 
 [tool.mypy]
 python_version = "3.10"
 show_column_numbers = true
 show_error_context = true
 strict = true
-ignore_missing_imports = true
-exclude = '(?x)(doc | examples | releasenotes)'
+disable_error_code = ["import-untyped"]
+exclude = "(?x)(doc | releasenotes)"
 
 [[tool.mypy.overrides]]
 module = ["stevedore.tests.*"]
@@ -65,8 +62,14 @@
 [tool.ruff]
 line-length = 79
 
+[tool.ruff.format]
+quote-style = "preserve"
+docstring-code-format = true
+skip-magic-trailing-comma = true
+
 [tool.ruff.lint]
 select = ["C4", "E4", "E5", "E7", "E9", "F", "G", "LOG", "S", "U"]
+external = ["H"]
 ignore = [
     # we only use asserts for type narrowing
     "S101",
@@ -74,8 +77,3 @@
 
 [tool.ruff.lint.per-file-ignores]
 "stevedore/tests/*" = ["S"]
-
-[tool.ruff.format]
-quote-style = "preserve"
-docstring-code-format = true
-skip-magic-trailing-comma = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/releasenotes/source/2026.1.rst 
new/stevedore-5.8.0/releasenotes/source/2026.1.rst
--- old/stevedore-5.7.0/releasenotes/source/2026.1.rst  1970-01-01 
01:00:00.000000000 +0100
+++ new/stevedore-5.8.0/releasenotes/source/2026.1.rst  2026-05-18 
11:14: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/stevedore-5.7.0/releasenotes/source/index.rst 
new/stevedore-5.8.0/releasenotes/source/index.rst
--- old/stevedore-5.7.0/releasenotes/source/index.rst   2026-02-20 
14:25:51.000000000 +0100
+++ new/stevedore-5.8.0/releasenotes/source/index.rst   2026-05-18 
11:14:06.000000000 +0200
@@ -6,6 +6,7 @@
    :maxdepth: 1
 
    unreleased
+   2026.1
    2025.2
    2025.1
    2024.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/stevedore/extension.py 
new/stevedore-5.8.0/stevedore/extension.py
--- old/stevedore-5.7.0/stevedore/extension.py  2026-02-20 14:25:51.000000000 
+0100
+++ new/stevedore-5.8.0/stevedore/extension.py  2026-05-18 11:14:06.000000000 
+0200
@@ -62,7 +62,7 @@
         self,
         name: str,
         entry_point: importlib.metadata.EntryPoint,
-        plugin: Callable[..., T],
+        plugin: type[T],
         obj: T | None,
     ) -> None:
         self.name = name
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/stevedore/tests/test_driver.py 
new/stevedore-5.8.0/stevedore/tests/test_driver.py
--- old/stevedore-5.7.0/stevedore/tests/test_driver.py  2026-02-20 
14:25:51.000000000 +0100
+++ new/stevedore-5.8.0/stevedore/tests/test_driver.py  2026-05-18 
11:14:06.000000000 +0200
@@ -22,6 +22,15 @@
 from stevedore.tests import utils
 
 
+class Base: ...
+
+
+class Foo(Base): ...
+
+
+class Bar(Base): ...
+
+
 class TestCallback(utils.TestCase):
     def test_detect_plugins(self):
         em: driver.DriverManager[Any]
@@ -79,7 +88,7 @@
                 importlib.metadata.EntryPoint(
                     'backend', 'pkg1:driver', 'backend'
                 ),
-                lambda x: None,
+                Foo,
                 None,
             ),
             extension.Extension(
@@ -87,7 +96,7 @@
                 importlib.metadata.EntryPoint(
                     'backend', 'pkg2:driver', 'backend'
                 ),
-                lambda x: None,
+                Bar,
                 None,
             ),
         ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/stevedore/tests/test_extension.py 
new/stevedore-5.8.0/stevedore/tests/test_extension.py
--- old/stevedore-5.7.0/stevedore/tests/test_extension.py       2026-02-20 
14:25:51.000000000 +0100
+++ new/stevedore-5.8.0/stevedore/tests/test_extension.py       2026-05-18 
11:14:06.000000000 +0200
@@ -230,16 +230,31 @@
         self.assertEqual(expected_output, set(em.items()))
 
 
+class Base:
+    def greet(self, user):
+        raise NotImplementedError()
+
+
+class Foo(Base):
+    def greet(self, user):
+        print("Hello {user}. I'm foo.")
+
+
+class Bar(Base):
+    def greet(self, user):
+        print("Hello {user}. I'm bar.")
+
+
 class TestConflictResolution(utils.TestCase):
     def test_ignore_conflicts(self):
         """Test that ignore_conflicts logs a warning when conflicts exist."""
-        extensions = [
+        extensions: list[extension.Extension[Base]] = [
             extension.Extension(
                 'conflict',
                 importlib.metadata.EntryPoint(
                     'conflict', 'module1:Class1', 'test.group'
                 ),
-                type('TestClass1', (), {}),
+                Foo,
                 None,
             ),
             extension.Extension(
@@ -247,7 +262,7 @@
                 importlib.metadata.EntryPoint(
                     'conflict', 'module2:Class2', 'test.group'
                 ),
-                type('TestClass2', (), {}),
+                Bar,
                 None,
             ),
         ]
@@ -266,21 +281,21 @@
 
     def test_error_on_conflict(self):
         """Test error_on_conflict raises MultipleMatches exception."""
-        extensions = [
+        extensions: list[extension.Extension[Base]] = [
             extension.Extension(
                 'conflict',
                 importlib.metadata.EntryPoint(
-                    'conflict', 'module1:Class1', 'test.group'
+                    'conflict', 'module1:Foo', 'test.group'
                 ),
-                type('TestClass1', (), {}),
+                Foo,
                 None,
             ),
             extension.Extension(
                 'conflict',
                 importlib.metadata.EntryPoint(
-                    'conflict', 'module2:Class2', 'test.group'
+                    'conflict', 'module2:Bar', 'test.group'
                 ),
-                type('TestClass2', (), {}),
+                Bar,
                 None,
             ),
         ]
@@ -301,18 +316,14 @@
 
         ext1 = extension.Extension(
             'test',
-            importlib.metadata.EntryPoint(
-                'test', 'module1:Class1', 'test.group'
-            ),
-            type('TestClass1', (), {}),
+            importlib.metadata.EntryPoint('test', 'module1:Foo', 'test.group'),
+            Foo,
             None,
         )
         ext2 = extension.Extension(
             'test',
-            importlib.metadata.EntryPoint(
-                'test', 'module2:Class2', 'test.group'
-            ),
-            type('TestClass2', (), {}),
+            importlib.metadata.EntryPoint('test', 'module2:Bar', 'test.group'),
+            Bar,
             None,
         )
 
@@ -348,7 +359,7 @@
             importlib.metadata.EntryPoint(
                 'name', 'module.name:attribute.name [extra]', 'group_name'
             ),
-            mock.Mock(),
+            Foo,
             None,
         )
         self.ext2 = extension.Extension(
@@ -356,7 +367,7 @@
             importlib.metadata.EntryPoint(
                 'name', 'module:attribute', 'group_name'
             ),
-            mock.Mock(),
+            Bar,
             None,
         )
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/stevedore/tests/test_sphinxext.py 
new/stevedore-5.8.0/stevedore/tests/test_sphinxext.py
--- old/stevedore-5.7.0/stevedore/tests/test_sphinxext.py       2026-02-20 
14:25:51.000000000 +0100
+++ new/stevedore-5.8.0/stevedore/tests/test_sphinxext.py       2026-05-18 
11:14:06.000000000 +0200
@@ -20,12 +20,11 @@
 
 
 def _make_ext(name, docstring):
-    def inner():
-        pass
+    class Foo: ...
 
-    inner.__doc__ = docstring
+    Foo.__doc__ = docstring
     m1 = importlib.metadata.EntryPoint(name, f'{name}_module:{name}', 'group')
-    return extension.Extension(name, m1, inner, None)
+    return extension.Extension(name, m1, Foo, None)
 
 
 class TestSphinxExt(utils.TestCase):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/stevedore.egg-info/PKG-INFO 
new/stevedore-5.8.0/stevedore.egg-info/PKG-INFO
--- old/stevedore-5.7.0/stevedore.egg-info/PKG-INFO     2026-02-20 
14:26:23.000000000 +0100
+++ new/stevedore-5.8.0/stevedore.egg-info/PKG-INFO     2026-05-18 
11:14:40.000000000 +0200
@@ -1,15 +1,14 @@
 Metadata-Version: 2.4
 Name: stevedore
-Version: 5.7.0
+Version: 5.8.0
 Summary: Manage dynamic plugins for Python applications
 Author-email: OpenStack <[email protected]>
-License: Apache-2.0
+License-Expression: Apache-2.0
 Project-URL: Homepage, https://docs.openstack.org/stevedore
 Project-URL: Repository, https://opendev.org/openstack/stevedore
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Environment :: Console
 Classifier: Intended Audience :: Developers
-Classifier: License :: OSI Approved :: Apache Software License
 Classifier: Operating System :: POSIX :: Linux
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/stevedore.egg-info/SOURCES.txt 
new/stevedore-5.8.0/stevedore.egg-info/SOURCES.txt
--- old/stevedore-5.7.0/stevedore.egg-info/SOURCES.txt  2026-02-20 
14:26:23.000000000 +0100
+++ new/stevedore-5.8.0/stevedore.egg-info/SOURCES.txt  2026-05-18 
11:14:40.000000000 +0200
@@ -13,7 +13,6 @@
 setup.py
 test-requirements.txt
 tox.ini
-doc/Makefile
 doc/requirements.txt
 doc/source/conf.py
 doc/source/index.rst
@@ -56,6 +55,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/ocata.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/stevedore.egg-info/pbr.json 
new/stevedore-5.8.0/stevedore.egg-info/pbr.json
--- old/stevedore-5.7.0/stevedore.egg-info/pbr.json     2026-02-20 
14:26:23.000000000 +0100
+++ new/stevedore-5.8.0/stevedore.egg-info/pbr.json     2026-05-18 
11:14:40.000000000 +0200
@@ -1 +1 @@
-{"git_version": "ef93c7c", "is_release": true}
\ No newline at end of file
+{"git_version": "0b93f90", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/stevedore-5.7.0/tox.ini new/stevedore-5.8.0/tox.ini
--- old/stevedore-5.7.0/tox.ini 2026-02-20 14:25:51.000000000 +0100
+++ new/stevedore-5.8.0/tox.ini 2026-05-18 11:14:06.000000000 +0200
@@ -1,17 +1,17 @@
 [tox]
-minversion = 3.2
+minversion = 4.28.0
 envlist = py3,pep8,docs
 
 [testenv]
+constraints =
+  
{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
 deps =
-  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
   -r{toxinidir}/test-requirements.txt
   -r{toxinidir}/requirements.txt
 commands = stestr run {posargs}
 
 [testenv:venv]
 deps =
-  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
   -r{toxinidir}/test-requirements.txt
   -r{toxinidir}/doc/requirements.txt
   -r{toxinidir}/requirements.txt
@@ -39,7 +39,6 @@
 
 [testenv:docs]
 deps =
-  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
   -r{toxinidir}/doc/requirements.txt
 commands = sphinx-build -a -E -W doc/source doc/build/html
 
@@ -59,6 +58,8 @@
 usedevelop = False
 
 [flake8]
-ignore = E251,H405,W504
+# We only enable the hacking (H) checks
+select = H
+ignore = H304,H405
 show-source = True
 exclude = .venv,.tox,dist,doc,releasenotes,*egg,build

Reply via email to