Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-trove-classifiers for
openSUSE:Factory checked in at 2025-10-03 15:42:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-trove-classifiers (Old)
and /work/SRC/openSUSE:Factory/.python-trove-classifiers.new.11973 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-trove-classifiers"
Fri Oct 3 15:42:14 2025 rev:18 rq:1308490 version:2025.9.11.17
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-trove-classifiers/python-trove-classifiers.changes
2025-04-11 16:45:00.574759897 +0200
+++
/work/SRC/openSUSE:Factory/.python-trove-classifiers.new.11973/python-trove-classifiers.changes
2025-10-03 15:42:25.270016299 +0200
@@ -1,0 +2,17 @@
+Thu Oct 2 01:23:29 UTC 2025 - Steve Kowalik <[email protected]>
+
+- Update to 2025.9.11.17:
+ * Add support for Odoo 19.0 in classifiers
+ * Add classifier: Framework InvenTree
+ * Add `"Programming Language :: Zig"` classifier
+ * Add Django 6 classifiers to trove_classifiers
+ * Add classifier for CUDA 13
+ * Add trove classifier for GraalPython
+ * feat: add free-threading classifiers
+ * Add several missing languages
+ * Add Trove classifier for Python 3.15
+ * Don't assume basename of sys.executable is "python"
+ * Add entry point to enable installing with pipx or uvx
+ * Add classifier for Wagtail 7
+
+-------------------------------------------------------------------
Old:
----
trove_classifiers-2025.3.19.19.tar.gz
New:
----
trove_classifiers-2025.9.11.17.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-trove-classifiers.spec ++++++
--- /var/tmp/diff_new_pack.TIuB2m/_old 2025-10-03 15:42:26.678075295 +0200
+++ /var/tmp/diff_new_pack.TIuB2m/_new 2025-10-03 15:42:26.682075463 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-trove-classifiers
#
-# Copyright (c) 2025 SUSE LLC
+# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -24,10 +24,15 @@
%define psuffix %{nil}
%bcond_with test
%endif
+%if 0%{?suse_version} > 1500
+%bcond_without libalternatives
+%else
+%bcond_with libalternatives
+%endif
%{?sle15_python_module_pythons}
Name: python-trove-classifiers%{?psuffix}
-Version: 2025.3.19.19
+Version: 2025.9.11.17
Release: 0
Summary: Canonical source for classifiers on PyPI
License: Apache-2.0
@@ -41,8 +46,16 @@
BuildRequires: python-rpm-macros
%if %{with test}
BuildRequires: %{python_module pytest}
+BuildRequires: %{python_module trove-classifiers = %{version}}
%endif
BuildArch: noarch
+%if %{with libalternatives}
+BuildRequires: alts
+Requires: alts
+%else
+Requires(post): update-alternatives
+Requires(postun): update-alternatives
+%endif
%python_subpackages
%description
@@ -57,6 +70,7 @@
%install
%pyproject_install
+%python_clone -a %{buildroot}%{_bindir}/trove-classifiers
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%endif
@@ -66,9 +80,20 @@
%endif
%if !%{with test}
+%pre
+# If libalternatives is used: Removing old update-alternatives entries.
+%python_libalternatives_reset_alternative trove-classifiers
+
+%post
+%python_install_alternative trove-classifiers
+
+%postun
+%python_uninstall_alternative trove-classifiers
+
%files %{python_files}
%doc README.md
%license LICENSE
+%python_alternative %{_bindir}/trove-classifiers
%{python_sitelib}/trove_classifiers
%{python_sitelib}/trove_classifiers-%{version}.dist-info
%endif
++++++ trove_classifiers-2025.3.19.19.tar.gz ->
trove_classifiers-2025.9.11.17.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/trove_classifiers-2025.3.19.19/Makefile
new/trove_classifiers-2025.9.11.17/Makefile
--- old/trove_classifiers-2025.3.19.19/Makefile 2025-03-19 20:46:59.000000000
+0100
+++ new/trove_classifiers-2025.9.11.17/Makefile 2025-09-11 19:07:18.000000000
+0200
@@ -2,7 +2,7 @@
.state/env/pyvenv.cfg: requirements/dev.txt
rm -rf .state/env
- python -m venv .state/env
+ python3 -m venv .state/env
# install/upgrade general requirements
$(BINDIR)/python -m pip install --upgrade pip setuptools wheel
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/trove_classifiers-2025.3.19.19/PKG-INFO
new/trove_classifiers-2025.9.11.17/PKG-INFO
--- old/trove_classifiers-2025.3.19.19/PKG-INFO 2025-03-19 20:47:40.148318800
+0100
+++ new/trove_classifiers-2025.9.11.17/PKG-INFO 2025-09-11 19:07:37.901703000
+0200
@@ -1,6 +1,6 @@
-Metadata-Version: 2.2
+Metadata-Version: 2.4
Name: trove-classifiers
-Version: 2025.3.19.19
+Version: 2025.9.11.17
Summary: Canonical source for classifiers on PyPI (pypi.org).
Home-page: https://github.com/pypa/trove-classifiers
Author: The PyPI Admins
@@ -20,6 +20,7 @@
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
+Dynamic: license-file
Dynamic: summary
Canonical source for [classifiers][1] on [PyPI][2].
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/trove_classifiers-2025.3.19.19/setup.py
new/trove_classifiers-2025.9.11.17/setup.py
--- old/trove_classifiers-2025.3.19.19/setup.py 2025-03-19 20:46:59.000000000
+0100
+++ new/trove_classifiers-2025.9.11.17/setup.py 2025-09-11 19:07:18.000000000
+0200
@@ -30,4 +30,7 @@
package_data={"": ["py.typed"]},
use_calver="%Y.%m.%d.%H",
setup_requires=["calver"],
+ entry_points={
+ "console_scripts":
["trove-classifiers=trove_classifiers.__main__:cli"],
+ },
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/trove_classifiers-2025.3.19.19/src/trove_classifiers/__init__.py
new/trove_classifiers-2025.9.11.17/src/trove_classifiers/__init__.py
--- old/trove_classifiers-2025.3.19.19/src/trove_classifiers/__init__.py
2025-03-19 20:46:59.000000000 +0100
+++ new/trove_classifiers-2025.9.11.17/src/trove_classifiers/__init__.py
2025-09-11 19:07:18.000000000 +0200
@@ -59,6 +59,7 @@
"Environment :: GPU :: NVIDIA CUDA :: 12 :: 12.4",
"Environment :: GPU :: NVIDIA CUDA :: 12 :: 12.5",
"Environment :: GPU :: NVIDIA CUDA :: 12 :: 12.6",
+ "Environment :: GPU :: NVIDIA CUDA :: 13",
"Environment :: Handhelds/PDA's",
"Environment :: MacOS X",
"Environment :: MacOS X :: Aqua",
@@ -131,6 +132,8 @@
"Framework :: Django :: 5.0",
"Framework :: Django :: 5.1",
"Framework :: Django :: 5.2",
+ "Framework :: Django :: 6",
+ "Framework :: Django :: 6.0",
"Framework :: Django CMS",
"Framework :: Django CMS :: 3.4",
"Framework :: Django CMS :: 3.5",
@@ -150,6 +153,7 @@
"Framework :: Hypothesis",
"Framework :: IDLE",
"Framework :: IPython",
+ "Framework :: InvenTree",
"Framework :: Jupyter",
"Framework :: Jupyter :: JupyterLab",
"Framework :: Jupyter :: JupyterLab :: 1",
@@ -178,6 +182,7 @@
"Framework :: Odoo :: 16.0",
"Framework :: Odoo :: 17.0",
"Framework :: Odoo :: 18.0",
+ "Framework :: Odoo :: 19.0",
"Framework :: OpenTelemetry",
"Framework :: OpenTelemetry :: Distros",
"Framework :: OpenTelemetry :: Exporters",
@@ -240,6 +245,7 @@
"Framework :: Wagtail :: 4",
"Framework :: Wagtail :: 5",
"Framework :: Wagtail :: 6",
+ "Framework :: Wagtail :: 7",
"Framework :: ZODB",
"Framework :: Zope",
"Framework :: Zope2",
@@ -352,6 +358,7 @@
"License :: Repoze Public License",
"Natural Language :: Afrikaans",
"Natural Language :: Arabic",
+ "Natural Language :: Armenian",
"Natural Language :: Basque",
"Natural Language :: Bengali",
"Natural Language :: Bosnian",
@@ -367,6 +374,7 @@
"Natural Language :: Dutch",
"Natural Language :: English",
"Natural Language :: Esperanto",
+ "Natural Language :: Estonian",
"Natural Language :: Finnish",
"Natural Language :: French",
"Natural Language :: Galician",
@@ -411,6 +419,7 @@
"Natural Language :: Ukrainian",
"Natural Language :: Urdu",
"Natural Language :: Vietnamese",
+ "Natural Language :: Yiddish",
"Operating System :: Android",
"Operating System :: BeOS",
"Operating System :: MacOS",
@@ -525,8 +534,15 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
+ "Programming Language :: Python :: 3.15",
+ "Programming Language :: Python :: Free Threading",
+ "Programming Language :: Python :: Free Threading :: 1 - Unstable",
+ "Programming Language :: Python :: Free Threading :: 2 - Beta",
+ "Programming Language :: Python :: Free Threading :: 3 - Stable",
+ "Programming Language :: Python :: Free Threading :: 4 - Resilient",
"Programming Language :: Python :: Implementation",
"Programming Language :: Python :: Implementation :: CPython",
+ "Programming Language :: Python :: Implementation :: GraalPy",
"Programming Language :: Python :: Implementation :: IronPython",
"Programming Language :: Python :: Implementation :: Jython",
"Programming Language :: Python :: Implementation :: MicroPython",
@@ -546,6 +562,7 @@
"Programming Language :: Visual Basic",
"Programming Language :: XBasic",
"Programming Language :: YACC",
+ "Programming Language :: Zig",
"Programming Language :: Zope",
"Topic :: Adaptive Technologies",
"Topic :: Artistic Software",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/trove_classifiers-2025.3.19.19/src/trove_classifiers/__main__.py
new/trove_classifiers-2025.9.11.17/src/trove_classifiers/__main__.py
--- old/trove_classifiers-2025.3.19.19/src/trove_classifiers/__main__.py
2025-03-19 20:46:59.000000000 +0100
+++ new/trove_classifiers-2025.9.11.17/src/trove_classifiers/__main__.py
2025-09-11 19:07:18.000000000 +0200
@@ -1,4 +1,10 @@
from trove_classifiers import sorted_classifiers
-for classifier in sorted_classifiers:
- print(classifier)
+
+def cli() -> None:
+ for classifier in sorted_classifiers:
+ print(classifier)
+
+
+if __name__ == "__main__":
+ cli()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/trove_classifiers-2025.3.19.19/src/trove_classifiers.egg-info/PKG-INFO
new/trove_classifiers-2025.9.11.17/src/trove_classifiers.egg-info/PKG-INFO
--- old/trove_classifiers-2025.3.19.19/src/trove_classifiers.egg-info/PKG-INFO
2025-03-19 20:47:40.000000000 +0100
+++ new/trove_classifiers-2025.9.11.17/src/trove_classifiers.egg-info/PKG-INFO
2025-09-11 19:07:37.000000000 +0200
@@ -1,6 +1,6 @@
-Metadata-Version: 2.2
+Metadata-Version: 2.4
Name: trove-classifiers
-Version: 2025.3.19.19
+Version: 2025.9.11.17
Summary: Canonical source for classifiers on PyPI (pypi.org).
Home-page: https://github.com/pypa/trove-classifiers
Author: The PyPI Admins
@@ -20,6 +20,7 @@
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
+Dynamic: license-file
Dynamic: summary
Canonical source for [classifiers][1] on [PyPI][2].
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/trove_classifiers-2025.3.19.19/src/trove_classifiers.egg-info/SOURCES.txt
new/trove_classifiers-2025.9.11.17/src/trove_classifiers.egg-info/SOURCES.txt
---
old/trove_classifiers-2025.3.19.19/src/trove_classifiers.egg-info/SOURCES.txt
2025-03-19 20:47:40.000000000 +0100
+++
new/trove_classifiers-2025.9.11.17/src/trove_classifiers.egg-info/SOURCES.txt
2025-09-11 19:07:37.000000000 +0200
@@ -13,8 +13,10 @@
src/trove_classifiers.egg-info/PKG-INFO
src/trove_classifiers.egg-info/SOURCES.txt
src/trove_classifiers.egg-info/dependency_links.txt
+src/trove_classifiers.egg-info/entry_points.txt
src/trove_classifiers.egg-info/top_level.txt
tests/__init__.py
tests/test_classifiers.py
+tests/test_cli.py
tests/lib/__init__.py
tests/lib/__main__.py
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/trove_classifiers-2025.3.19.19/src/trove_classifiers.egg-info/entry_points.txt
new/trove_classifiers-2025.9.11.17/src/trove_classifiers.egg-info/entry_points.txt
---
old/trove_classifiers-2025.3.19.19/src/trove_classifiers.egg-info/entry_points.txt
1970-01-01 01:00:00.000000000 +0100
+++
new/trove_classifiers-2025.9.11.17/src/trove_classifiers.egg-info/entry_points.txt
2025-09-11 19:07:37.000000000 +0200
@@ -0,0 +1,2 @@
+[console_scripts]
+trove-classifiers = trove_classifiers.__main__:cli
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/trove_classifiers-2025.3.19.19/tests/test_cli.py
new/trove_classifiers-2025.9.11.17/tests/test_cli.py
--- old/trove_classifiers-2025.3.19.19/tests/test_cli.py 1970-01-01
01:00:00.000000000 +0100
+++ new/trove_classifiers-2025.9.11.17/tests/test_cli.py 2025-09-11
19:07:18.000000000 +0200
@@ -0,0 +1,32 @@
+"""test_cli.py - Tests to confirm that the CLI works and that both running the
module and
+calling the entry point produce equivalent output.
+"""
+
+import subprocess
+import sys
+from pathlib import Path
+
+BINDIR = Path(sys.executable).parent
+
+
+def test_module_run():
+ """Simple test for no error when running the module. Output is not
validated."""
+ subprocess.check_call([sys.executable, "-m", "trove_classifiers"])
+
+
+def test_entry_point():
+ """Simple test for no error when calling the entry point. Output is not
validated."""
+ subprocess.check_call(f"{BINDIR}/trove-classifiers")
+
+
+def test_module_run_is_entry_point():
+ """Compare that module run output is the same as entry point output."""
+ module_run_proc = subprocess.run(
+ [sys.executable, "-m", "trove_classifiers"],
+ capture_output=True,
+ encoding="utf-8",
+ )
+ entry_point_proc = subprocess.run(
+ f"{BINDIR}/trove-classifiers", capture_output=True, encoding="utf-8"
+ )
+ assert module_run_proc.stdout == entry_point_proc.stdout