Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-jaraco.compat for
openSUSE:Factory checked in at 2026-10-06 19:15:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-jaraco.compat (Old)
and /work/SRC/openSUSE:Factory/.python-jaraco.compat.new.3698736 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-jaraco.compat"
Tue Oct 6 19:15:36 2026 rev:2 rq:1382611 version:4.4.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-jaraco.compat/python-jaraco.compat.changes
2026-02-10 21:12:32.483861841 +0100
+++
/work/SRC/openSUSE:Factory/.python-jaraco.compat.new.3698736/python-jaraco.compat.changes
2026-10-06 19:16:33.967886632 +0200
@@ -1,0 +2,8 @@
+Mon Oct 5 19:05:28 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 4.4.0:
+ * Added py310.safe_path.command and py310.safe_path.environ for
+ invoking a child interpreter with a safe path, even on Python
+ 3.10, where PYTHONSAFEPATH is ignored.
+
+-------------------------------------------------------------------
Old:
----
jaraco_compat-4.3.1.tar.gz
New:
----
jaraco_compat-4.4.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-jaraco.compat.spec ++++++
--- /var/tmp/diff_new_pack.0mPLeA/_old 2026-10-06 19:16:35.628956141 +0200
+++ /var/tmp/diff_new_pack.0mPLeA/_new 2026-10-06 19:16:35.631956267 +0200
@@ -17,12 +17,12 @@
Name: python-jaraco.compat
-Version: 4.3.1
+Version: 4.4.0
Release: 0
Summary: Modules providing forward compatibility across Python versions
License: MIT
URL: https://github.com/jaraco/jaraco.compat
-Source:
https://files.pythonhosted.org/packages/source/j/jaraco.compat/jaraco_compat-4.3.1.tar.gz
+Source:
https://files.pythonhosted.org/packages/source/j/jaraco.compat/jaraco_compat-%{version}.tar.gz
BuildRequires: %{python_module base >= 3.9}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools >= 61.2}
++++++ jaraco_compat-4.3.1.tar.gz -> jaraco_compat-4.4.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/.github/workflows/main.yml
new/jaraco_compat-4.4.0/.github/workflows/main.yml
--- old/jaraco_compat-4.3.1/.github/workflows/main.yml 2025-05-10
06:13:34.000000000 +0200
+++ new/jaraco_compat-4.4.0/.github/workflows/main.yml 2026-08-23
16:11:42.987895000 +0200
@@ -15,62 +15,34 @@
permissions:
contents: read
-env:
- # Environment variable to support color support (jaraco/skeleton#66)
- FORCE_COLOR: 1
-
- # Suppress noisy pip warnings
- PIP_DISABLE_PIP_VERSION_CHECK: 'true'
- PIP_NO_WARN_SCRIPT_LOCATION: 'true'
-
- # Ensure tests can sense settings about the environment
- TOX_OVERRIDE: >-
- testenv.pass_env+=GITHUB_*,FORCE_COLOR
-
-
jobs:
test:
strategy:
# https://blog.jaraco.com/efficient-use-of-ci-resources/
matrix:
python:
- - "3.9"
- - "3.13"
+ - "3.10"
+ - "3.14"
+ - "3.14t"
platform:
- ubuntu-latest
- macos-latest
- windows-latest
include:
- - python: "3.10"
- platform: ubuntu-latest
- python: "3.11"
platform: ubuntu-latest
- python: "3.12"
platform: ubuntu-latest
- - python: "3.14"
+ - python: "3.13"
platform: ubuntu-latest
- - python: pypy3.10
+ - python: "3.15"
platform: ubuntu-latest
- runs-on: ${{ matrix.platform }}
- continue-on-error: ${{ matrix.python == '3.14' }}
- steps:
- - uses: actions/checkout@v4
- - name: Install build dependencies
- # Install dependencies for building packages on pre-release Pythons
- # jaraco/skeleton#161
- if: matrix.python == '3.14' && matrix.platform == 'ubuntu-latest'
- run: |
- sudo apt update
- sudo apt install -y libxml2-dev libxslt-dev
- - name: Setup Python
- uses: actions/setup-python@v4
- with:
- python-version: ${{ matrix.python }}
- allow-prereleases: true
- - name: Install tox
- run: python -m pip install tox
- - name: Run
- run: tox
+ - python: pypy3.11
+ platform: ubuntu-latest
+ uses: ./.github/workflows/test-suite.yml
+ with:
+ python: ${{ matrix.python }}
+ platform: ${{ matrix.platform }}
collateral:
strategy:
@@ -79,19 +51,10 @@
job:
- diffcov
- docs
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- with:
- fetch-depth: 0
- - name: Setup Python
- uses: actions/setup-python@v4
- with:
- python-version: 3.x
- - name: Install tox
- run: python -m pip install tox
- - name: Eval ${{ matrix.job }}
- run: tox -e ${{ matrix.job }}
+ uses: ./.github/workflows/test-suite.yml
+ with:
+ platform: ubuntu-latest
+ tox-env: ${{ matrix.job }}
check: # This job does nothing and is only used for the branch protection
if: always()
@@ -119,7 +82,7 @@
steps:
- uses: actions/checkout@v4
- name: Setup Python
- uses: actions/setup-python@v4
+ uses: actions/setup-python@v5
with:
python-version: 3.x
- name: Install tox
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/.github/workflows/test-suite.yml
new/jaraco_compat-4.4.0/.github/workflows/test-suite.yml
--- old/jaraco_compat-4.3.1/.github/workflows/test-suite.yml 1970-01-01
01:00:00.000000000 +0100
+++ new/jaraco_compat-4.4.0/.github/workflows/test-suite.yml 2026-08-23
16:11:42.987975800 +0200
@@ -0,0 +1,62 @@
+name: Test Suite
+
+on:
+ workflow_call:
+ inputs:
+ python:
+ description: Python version
+ type: string
+ default: "3.x"
+ platform:
+ description: Runner platform
+ type: string
+ default: ubuntu-latest
+ tox-env:
+ description: >-
+ Tox environment to run; if empty, runs default tox
+ type: string
+ default: ""
+
+env:
+ # Environment variable to support color support (jaraco/skeleton#66)
+ FORCE_COLOR: 1
+
+ # Suppress noisy pip warnings
+ PIP_DISABLE_PIP_VERSION_CHECK: 'true'
+ PIP_NO_WARN_SCRIPT_LOCATION: 'true'
+
+ # Ensure tests can sense settings about the environment
+ TOX_OVERRIDE: >-
+ testenv.pass_env+=GITHUB_*,FORCE_COLOR
+
+jobs:
+ run:
+ runs-on: ${{ inputs.platform }}
+ # Tolerate failures on pre-release Pythons (jaraco/skeleton#199)
+ continue-on-error: ${{ inputs.python == '3.15' }}
+ permissions:
+ contents: read
+ steps:
+ - uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+ - name: Install build dependencies
+ # Install dependencies for building packages on pre-release Pythons
+ # jaraco/skeleton#161
+ if: inputs.python == '3.15' && inputs.platform == 'ubuntu-latest'
+ run: |
+ sudo apt update
+ sudo apt install -y libxml2-dev libxslt-dev
+ - name: Setup Python
+ uses: actions/setup-python@v5
+ with:
+ python-version: ${{ inputs.python }}
+ allow-prereleases: true
+ - name: Install tox
+ run: python -m pip install tox
+ - name: Run
+ if: ${{ !inputs.tox-env }}
+ run: tox
+ - name: Run ${{ inputs.tox-env }}
+ if: ${{ inputs.tox-env }}
+ run: tox -e ${{ inputs.tox-env }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/.pre-commit-config.yaml
new/jaraco_compat-4.4.0/.pre-commit-config.yaml
--- old/jaraco_compat-4.3.1/.pre-commit-config.yaml 2025-05-10
06:13:34.000000000 +0200
+++ new/jaraco_compat-4.4.0/.pre-commit-config.yaml 2026-08-23
16:11:42.987975800 +0200
@@ -1,7 +1,7 @@
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
- rev: v0.9.9
+ rev: v0.12.0
hooks:
- - id: ruff
+ - id: ruff-check
args: [--fix, --unsafe-fixes]
- id: ruff-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/AGENTS.md
new/jaraco_compat-4.4.0/AGENTS.md
--- old/jaraco_compat-4.3.1/AGENTS.md 1970-01-01 01:00:00.000000000 +0100
+++ new/jaraco_compat-4.4.0/AGENTS.md 2026-08-23 16:11:42.987975800 +0200
@@ -0,0 +1 @@
+**Required first step:** Before reading further or making any changes, fetch
and read the [skeleton](https://blog.jaraco.com/skeleton/) document in its
entirety. It is the authoritative source of truth for this project's structure,
conventions, testing, and release process, and is not duplicated here. Do not
act until you have ingested it.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/LICENSE
new/jaraco_compat-4.4.0/LICENSE
--- old/jaraco_compat-4.3.1/LICENSE 1970-01-01 01:00:00.000000000 +0100
+++ new/jaraco_compat-4.4.0/LICENSE 2026-08-23 16:12:07.134116000 +0200
@@ -0,0 +1,18 @@
+MIT License
+
+Copyright (c) 2026 <copyright holders>
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and
+associated documentation files (the "Software"), to deal in the Software
without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the
+following conditions:
+
+The above copyright notice and this permission notice shall be included in all
copies or substantial
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT
+LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT. IN NO
+EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE
+USE OR OTHER DEALINGS IN THE SOFTWARE.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/NEWS.rst
new/jaraco_compat-4.4.0/NEWS.rst
--- old/jaraco_compat-4.3.1/NEWS.rst 2025-05-10 06:13:34.000000000 +0200
+++ new/jaraco_compat-4.4.0/NEWS.rst 2026-08-23 16:11:42.987975800 +0200
@@ -1,3 +1,12 @@
+v4.4.0
+======
+
+Features
+--------
+
+- Added ``py310.safe_path.command`` and ``py310.safe_path.environ`` for
invoking a child interpreter with a safe path, even on Python 3.10, where
PYTHONSAFEPATH is ignored.
+
+
v4.3.1
======
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/PKG-INFO
new/jaraco_compat-4.4.0/PKG-INFO
--- old/jaraco_compat-4.3.1/PKG-INFO 2025-05-10 06:13:49.247721400 +0200
+++ new/jaraco_compat-4.4.0/PKG-INFO 2026-08-23 16:12:07.466943500 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.4
Name: jaraco.compat
-Version: 4.3.1
+Version: 4.4.0
Summary: Modules providing forward compatibility across Python versions
Author-email: "Jason R. Coombs" <[email protected]>
License-Expression: MIT
@@ -9,8 +9,9 @@
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
-Requires-Python: >=3.9
+Requires-Python: >=3.10
Description-Content-Type: text/x-rst
+License-File: LICENSE
Provides-Extra: test
Requires-Dist: pytest!=8.1.*,>=6; extra == "test"
Provides-Extra: doc
@@ -20,14 +21,15 @@
Requires-Dist: furo; extra == "doc"
Requires-Dist: sphinx-lint; extra == "doc"
Provides-Extra: check
-Requires-Dist: pytest-checkdocs>=2.4; extra == "check"
+Requires-Dist: pytest-checkdocs>=2.14; extra == "check"
Requires-Dist: pytest-ruff>=0.2.1; sys_platform != "cygwin" and extra ==
"check"
Provides-Extra: cover
Requires-Dist: pytest-cov; extra == "cover"
Provides-Extra: enabler
-Requires-Dist: pytest-enabler>=2.2; extra == "enabler"
+Requires-Dist: pytest-enabler>=3.4; extra == "enabler"
Provides-Extra: type
-Requires-Dist: pytest-mypy; extra == "type"
+Requires-Dist: pytest-mypy>=1.0.1; platform_python_implementation != "PyPy"
and extra == "type"
+Dynamic: license-file
.. image:: https://img.shields.io/pypi/v/jaraco.compat.svg
:target: https://pypi.org/project/jaraco.compat
@@ -45,7 +47,7 @@
.. image:: https://readthedocs.org/projects/jaracocompat/badge/?version=latest
:target: https://jaracocompat.readthedocs.io/en/latest/?badge=latest
-.. image:: https://img.shields.io/badge/skeleton-2025-informational
+.. image:: https://img.shields.io/badge/skeleton-2026-informational
:target: https://blog.jaraco.com/skeleton
Forward compatibility for Python packages,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/README.rst
new/jaraco_compat-4.4.0/README.rst
--- old/jaraco_compat-4.3.1/README.rst 2025-05-10 06:13:34.000000000 +0200
+++ new/jaraco_compat-4.4.0/README.rst 2026-08-23 16:11:42.987975800 +0200
@@ -14,7 +14,7 @@
.. image:: https://readthedocs.org/projects/jaracocompat/badge/?version=latest
:target: https://jaracocompat.readthedocs.io/en/latest/?badge=latest
-.. image:: https://img.shields.io/badge/skeleton-2025-informational
+.. image:: https://img.shields.io/badge/skeleton-2026-informational
:target: https://blog.jaraco.com/skeleton
Forward compatibility for Python packages,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/jaraco/compat/py310/safe_path.py
new/jaraco_compat-4.4.0/jaraco/compat/py310/safe_path.py
--- old/jaraco_compat-4.3.1/jaraco/compat/py310/safe_path.py 2025-05-10
06:13:34.000000000 +0200
+++ new/jaraco_compat-4.4.0/jaraco/compat/py310/safe_path.py 2026-08-23
16:11:42.988621700 +0200
@@ -5,6 +5,7 @@
import contextlib
import os
import sys
+from collections.abc import Mapping
def ensure_safe_path() -> None:
@@ -21,3 +22,34 @@
if sys.version_info < (3, 11) and os.environ.get('PYTHONSAFEPATH'): # pragma:
no cover
ensure_safe_path()
+
+
+#: Interpreter options ensuring a child interpreter honors a safe path.
+#: Prior to 3.11, PYTHONSAFEPATH is ignored, so isolated mode, which also
+#: excludes the current directory from sys.path, supplies the behavior.
+args = ['-I'] * (sys.version_info < (3, 11))
+
+
+def environ(base: Mapping[str, str] = os.environ) -> dict[str, str]:
+ """
+ Return base (os.environ by default) with a safe path enabled.
+
+ >>> environ({'FOO': 'bar'})
+ {'FOO': 'bar', 'PYTHONSAFEPATH': '1'}
+ """
+ return dict(base, PYTHONSAFEPATH='1')
+
+
+def command(*params: str) -> list[str]:
+ """
+ Build a command invoking this interpreter with a safe path.
+
+ Pass the command with ``env=environ()`` for the setting to apply.
+
+ >>> import subprocess
+ >>> cmd = command('-c', 'import sys; print("" in sys.path)')
+ >>> proc = subprocess.run(cmd, env=environ(), text=True,
capture_output=True)
+ >>> proc.stdout.strip()
+ 'False'
+ """
+ return [sys.executable, *args, *params]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/jaraco.compat.egg-info/PKG-INFO
new/jaraco_compat-4.4.0/jaraco.compat.egg-info/PKG-INFO
--- old/jaraco_compat-4.3.1/jaraco.compat.egg-info/PKG-INFO 2025-05-10
06:13:49.000000000 +0200
+++ new/jaraco_compat-4.4.0/jaraco.compat.egg-info/PKG-INFO 2026-08-23
16:12:07.443943500 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.4
Name: jaraco.compat
-Version: 4.3.1
+Version: 4.4.0
Summary: Modules providing forward compatibility across Python versions
Author-email: "Jason R. Coombs" <[email protected]>
License-Expression: MIT
@@ -9,8 +9,9 @@
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
-Requires-Python: >=3.9
+Requires-Python: >=3.10
Description-Content-Type: text/x-rst
+License-File: LICENSE
Provides-Extra: test
Requires-Dist: pytest!=8.1.*,>=6; extra == "test"
Provides-Extra: doc
@@ -20,14 +21,15 @@
Requires-Dist: furo; extra == "doc"
Requires-Dist: sphinx-lint; extra == "doc"
Provides-Extra: check
-Requires-Dist: pytest-checkdocs>=2.4; extra == "check"
+Requires-Dist: pytest-checkdocs>=2.14; extra == "check"
Requires-Dist: pytest-ruff>=0.2.1; sys_platform != "cygwin" and extra ==
"check"
Provides-Extra: cover
Requires-Dist: pytest-cov; extra == "cover"
Provides-Extra: enabler
-Requires-Dist: pytest-enabler>=2.2; extra == "enabler"
+Requires-Dist: pytest-enabler>=3.4; extra == "enabler"
Provides-Extra: type
-Requires-Dist: pytest-mypy; extra == "type"
+Requires-Dist: pytest-mypy>=1.0.1; platform_python_implementation != "PyPy"
and extra == "type"
+Dynamic: license-file
.. image:: https://img.shields.io/pypi/v/jaraco.compat.svg
:target: https://pypi.org/project/jaraco.compat
@@ -45,7 +47,7 @@
.. image:: https://readthedocs.org/projects/jaracocompat/badge/?version=latest
:target: https://jaracocompat.readthedocs.io/en/latest/?badge=latest
-.. image:: https://img.shields.io/badge/skeleton-2025-informational
+.. image:: https://img.shields.io/badge/skeleton-2026-informational
:target: https://blog.jaraco.com/skeleton
Forward compatibility for Python packages,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jaraco_compat-4.3.1/jaraco.compat.egg-info/SOURCES.txt
new/jaraco_compat-4.4.0/jaraco.compat.egg-info/SOURCES.txt
--- old/jaraco_compat-4.3.1/jaraco.compat.egg-info/SOURCES.txt 2025-05-10
06:13:49.000000000 +0200
+++ new/jaraco_compat-4.4.0/jaraco.compat.egg-info/SOURCES.txt 2026-08-23
16:12:07.456148400 +0200
@@ -2,6 +2,8 @@
.editorconfig
.pre-commit-config.yaml
.readthedocs.yaml
+AGENTS.md
+LICENSE
NEWS.rst
README.rst
mypy.ini
@@ -11,6 +13,7 @@
towncrier.toml
tox.ini
.github/workflows/main.yml
+.github/workflows/test-suite.yml
docs/conf.py
docs/history.rst
docs/index.rst
@@ -18,6 +21,8 @@
jaraco.compat.egg-info/SOURCES.txt
jaraco.compat.egg-info/dependency_links.txt
jaraco.compat.egg-info/requires.txt
+jaraco.compat.egg-info/scm_file_list.json
+jaraco.compat.egg-info/scm_version.json
jaraco.compat.egg-info/top_level.txt
jaraco/compat/py.typed
jaraco/compat/py38.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jaraco_compat-4.3.1/jaraco.compat.egg-info/requires.txt
new/jaraco_compat-4.4.0/jaraco.compat.egg-info/requires.txt
--- old/jaraco_compat-4.3.1/jaraco.compat.egg-info/requires.txt 2025-05-10
06:13:49.000000000 +0200
+++ new/jaraco_compat-4.4.0/jaraco.compat.egg-info/requires.txt 2026-08-23
16:12:07.446661200 +0200
@@ -1,6 +1,6 @@
[check]
-pytest-checkdocs>=2.4
+pytest-checkdocs>=2.14
[check:sys_platform != "cygwin"]
pytest-ruff>=0.2.1
@@ -16,10 +16,12 @@
sphinx-lint
[enabler]
-pytest-enabler>=2.2
+pytest-enabler>=3.4
[test]
pytest!=8.1.*,>=6
[type]
-pytest-mypy
+
+[type:platform_python_implementation != "PyPy"]
+pytest-mypy>=1.0.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jaraco_compat-4.3.1/jaraco.compat.egg-info/scm_file_list.json
new/jaraco_compat-4.4.0/jaraco.compat.egg-info/scm_file_list.json
--- old/jaraco_compat-4.3.1/jaraco.compat.egg-info/scm_file_list.json
1970-01-01 01:00:00.000000000 +0100
+++ new/jaraco_compat-4.4.0/jaraco.compat.egg-info/scm_file_list.json
2026-08-23 16:12:07.442068800 +0200
@@ -0,0 +1,25 @@
+{
+ "files": [
+ ".coveragerc",
+ ".editorconfig",
+ ".github/workflows/main.yml",
+ ".github/workflows/test-suite.yml",
+ ".pre-commit-config.yaml",
+ ".readthedocs.yaml",
+ "AGENTS.md",
+ "NEWS.rst",
+ "README.rst",
+ "docs/conf.py",
+ "docs/history.rst",
+ "docs/index.rst",
+ "jaraco/compat/py.typed",
+ "jaraco/compat/py310/safe_path.py",
+ "jaraco/compat/py38.py",
+ "mypy.ini",
+ "pyproject.toml",
+ "pytest.ini",
+ "ruff.toml",
+ "towncrier.toml",
+ "tox.ini"
+ ]
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jaraco_compat-4.3.1/jaraco.compat.egg-info/scm_version.json
new/jaraco_compat-4.4.0/jaraco.compat.egg-info/scm_version.json
--- old/jaraco_compat-4.3.1/jaraco.compat.egg-info/scm_version.json
1970-01-01 01:00:00.000000000 +0100
+++ new/jaraco_compat-4.4.0/jaraco.compat.egg-info/scm_version.json
2026-08-23 16:12:07.435663000 +0200
@@ -0,0 +1,8 @@
+{
+ "tag": "4.4.0",
+ "distance": 0,
+ "node": "g10a622d0a3f296d2901722d2353d6acce5330eeb",
+ "dirty": false,
+ "branch": "HEAD",
+ "node_date": "2026-08-23"
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/pyproject.toml
new/jaraco_compat-4.4.0/pyproject.toml
--- old/jaraco_compat-4.3.1/pyproject.toml 2025-05-10 06:13:34.000000000
+0200
+++ new/jaraco_compat-4.4.0/pyproject.toml 2026-08-23 16:11:42.988621700
+0200
@@ -1,5 +1,10 @@
[build-system]
-requires = ["setuptools>=61.2", "setuptools_scm[toml]>=3.4.1"]
+requires = [
+ "setuptools>=77",
+ "setuptools_scm[toml]>=3.4.1",
+ # jaraco/skeleton#174
+ "coherent.licensed",
+]
build-backend = "setuptools.build_meta"
[project]
@@ -15,7 +20,7 @@
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
]
-requires-python = ">=3.9"
+requires-python = ">=3.10"
license = "MIT"
dependencies = [
]
@@ -44,7 +49,7 @@
]
check = [
- "pytest-checkdocs >= 2.4",
+ "pytest-checkdocs >= 2.14",
"pytest-ruff >= 0.2.1; sys_platform != 'cygwin'",
]
@@ -53,12 +58,14 @@
]
enabler = [
- "pytest-enabler >= 2.2",
+ "pytest-enabler >= 3.4",
]
type = [
# upstream
- "pytest-mypy",
+
+ # Exclude PyPy from type checks (python/mypy#20454 jaraco/skeleton#187)
+ "pytest-mypy >= 1.0.1; platform_python_implementation != 'PyPy'",
# local
]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/ruff.toml
new/jaraco_compat-4.4.0/ruff.toml
--- old/jaraco_compat-4.3.1/ruff.toml 2025-05-10 06:13:34.000000000 +0200
+++ new/jaraco_compat-4.4.0/ruff.toml 2026-08-23 16:11:42.988621700 +0200
@@ -5,44 +5,45 @@
"C901", # complex-structure
"I", # isort
"PERF401", # manual-list-comprehension
+ "UP", # pyupgrade (Code modernization for strings, annotations,
conditions, ...)
# Ensure modern type annotation syntax and best practices
# Not including those covered by type-checkers or exclusive to Python
3.11+
"FA", # flake8-future-annotations
"F404", # late-future-import
"PYI", # flake8-pyi
- "UP006", # non-pep585-annotation
- "UP007", # non-pep604-annotation
- "UP010", # unnecessary-future-import
- "UP035", # deprecated-import
- "UP037", # quoted-annotation
- "UP043", # unnecessary-default-type-args
# local
]
ignore = [
# upstream
+ "UP015", # redundant-open-modes, explicit is preferred
# Typeshed rejects complex or non-literal defaults for maintenance and
testing reasons,
# irrelevant to this project.
"PYI011", # typed-argument-default-in-stub
# https://docs.astral.sh/ruff/formatter/#conflicting-lint-rules
"W191",
- "E111",
- "E114",
- "E117",
"D206",
"D300",
- "Q000",
- "Q001",
- "Q002",
- "Q003",
"COM812",
"COM819",
+ # N999 (invalid-module-name) yields false positives when a project's
+ # source directory is the distribution name and is redirected to a
+ # different import package (e.g. namespace layouts); the dotted
directory
+ # name is itself a valid module. See
+ # https://github.com/astral-sh/ruff/issues/27801.
+ "N999",
+
# local
]
+[lint.flake8-comprehensions]
+# Retain the elegant dict(a=1) keyword-call style; C408 still flags dict()
+# and dict([...]). See jaraco/skeleton#210.
+allow-dict-calls-with-keyword-arguments = true
+
[format]
# Enable preview to get hugged parenthesis unwrapping and other nice surprises
# See https://github.com/jaraco/skeleton/pull/133#issuecomment-2239538373
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/towncrier.toml
new/jaraco_compat-4.4.0/towncrier.toml
--- old/jaraco_compat-4.3.1/towncrier.toml 2025-05-10 06:13:34.000000000
+0200
+++ new/jaraco_compat-4.4.0/towncrier.toml 2026-08-23 16:11:42.988621700
+0200
@@ -1,2 +1,3 @@
[tool.towncrier]
title_format = "{version}"
+directory = "newsfragments" # jaraco/skeleton#184
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_compat-4.3.1/tox.ini
new/jaraco_compat-4.4.0/tox.ini
--- old/jaraco_compat-4.3.1/tox.ini 2025-05-10 06:13:34.000000000 +0200
+++ new/jaraco_compat-4.4.0/tox.ini 2026-08-23 16:11:42.988621700 +0200
@@ -20,7 +20,7 @@
diff-cover
commands =
pytest {posargs} --cov-report xml
- diff-cover coverage.xml --compare-branch=origin/main --html-report
diffcov.html
+ diff-cover coverage.xml --compare-branch=origin/main --format
html:diffcov.html
diff-cover coverage.xml --compare-branch=origin/main --fail-under=100
[testenv:docs]