Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-jaraco.functools for
openSUSE:Factory checked in at 2025-07-15 16:43:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-jaraco.functools (Old)
and /work/SRC/openSUSE:Factory/.python-jaraco.functools.new.7373 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-jaraco.functools"
Tue Jul 15 16:43:03 2025 rev:19 rq:1292508 version:4.2.1
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-jaraco.functools/python-jaraco.functools.changes
2025-04-11 16:45:34.572189827 +0200
+++
/work/SRC/openSUSE:Factory/.python-jaraco.functools.new.7373/python-jaraco.functools.changes
2025-07-15 16:43:40.291459893 +0200
@@ -1,0 +2,7 @@
+Sun Jul 13 13:36:31 UTC 2025 - Dirk Müller <[email protected]>
+
+- update to 4.2.1:
+ * Add 'passthrough' function.
+ * Added missing splat in stubs -- by :user:`Avasam`
+
+-------------------------------------------------------------------
Old:
----
jaraco_functools-4.1.0.tar.gz
New:
----
jaraco_functools-4.2.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-jaraco.functools.spec ++++++
--- /var/tmp/diff_new_pack.58eaBN/_old 2025-07-15 16:43:40.939483992 +0200
+++ /var/tmp/diff_new_pack.58eaBN/_new 2025-07-15 16:43:40.943484141 +0200
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-jaraco.functools
-Version: 4.1.0
+Version: 4.2.1
Release: 0
Summary: Tools to work with functools
License: MIT
++++++ jaraco_functools-4.1.0.tar.gz -> jaraco_functools-4.2.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/.github/dependabot.yml
new/jaraco_functools-4.2.1/.github/dependabot.yml
--- old/jaraco_functools-4.1.0/.github/dependabot.yml 2024-09-27
21:46:46.000000000 +0200
+++ new/jaraco_functools-4.2.1/.github/dependabot.yml 1970-01-01
01:00:00.000000000 +0100
@@ -1,8 +0,0 @@
-version: 2
-updates:
- - package-ecosystem: "pip"
- directory: "/"
- schedule:
- interval: "daily"
- allow:
- - dependency-type: "all"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/.github/workflows/main.yml
new/jaraco_functools-4.2.1/.github/workflows/main.yml
--- old/jaraco_functools-4.1.0/.github/workflows/main.yml 2024-09-27
21:46:46.000000000 +0200
+++ new/jaraco_functools-4.2.1/.github/workflows/main.yml 2025-06-21
21:21:42.000000000 +0200
@@ -21,7 +21,6 @@
# Suppress noisy pip warnings
PIP_DISABLE_PIP_VERSION_CHECK: 'true'
- PIP_NO_PYTHON_VERSION_WARNING: 'true'
PIP_NO_WARN_SCRIPT_LOCATION: 'true'
# Ensure tests can sense settings about the environment
@@ -35,15 +34,13 @@
# https://blog.jaraco.com/efficient-use-of-ci-resources/
matrix:
python:
- - "3.8"
+ - "3.9"
- "3.13"
platform:
- ubuntu-latest
- macos-latest
- windows-latest
include:
- - python: "3.9"
- platform: ubuntu-latest
- python: "3.10"
platform: ubuntu-latest
- python: "3.11"
@@ -58,8 +55,15 @@
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
+ uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
allow-prereleases: true
@@ -81,7 +85,7 @@
with:
fetch-depth: 0
- name: Setup Python
- uses: actions/setup-python@v4
+ uses: actions/setup-python@v5
with:
python-version: 3.x
- name: Install tox
@@ -115,7 +119,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_functools-4.1.0/.pre-commit-config.yaml
new/jaraco_functools-4.2.1/.pre-commit-config.yaml
--- old/jaraco_functools-4.1.0/.pre-commit-config.yaml 2024-09-27
21:46:46.000000000 +0200
+++ new/jaraco_functools-4.2.1/.pre-commit-config.yaml 2025-06-21
21:21:42.000000000 +0200
@@ -1,6 +1,6 @@
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
- rev: v0.5.6
+ rev: v0.9.9
hooks:
- id: ruff
args: [--fix, --unsafe-fixes]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/.readthedocs.yaml
new/jaraco_functools-4.2.1/.readthedocs.yaml
--- old/jaraco_functools-4.1.0/.readthedocs.yaml 2024-09-27
21:46:46.000000000 +0200
+++ new/jaraco_functools-4.2.1/.readthedocs.yaml 2025-06-21
21:21:42.000000000 +0200
@@ -5,6 +5,9 @@
extra_requirements:
- doc
+sphinx:
+ configuration: docs/conf.py
+
# required boilerplate readthedocs/readthedocs.org#10401
build:
os: ubuntu-lts-latest
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/LICENSE
new/jaraco_functools-4.2.1/LICENSE
--- old/jaraco_functools-4.1.0/LICENSE 2024-09-27 21:46:46.000000000 +0200
+++ new/jaraco_functools-4.2.1/LICENSE 2025-06-21 21:21:58.000000000 +0200
@@ -1,17 +1,18 @@
-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:
+MIT License
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
+Copyright (c) 2025 <copyright holders>
-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.
+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_functools-4.1.0/NEWS.rst
new/jaraco_functools-4.2.1/NEWS.rst
--- old/jaraco_functools-4.1.0/NEWS.rst 2024-09-27 21:46:46.000000000 +0200
+++ new/jaraco_functools-4.2.1/NEWS.rst 2025-06-21 21:21:42.000000000 +0200
@@ -1,3 +1,24 @@
+v4.2.1
+======
+
+No significant changes.
+
+
+v4.2.0
+======
+
+Features
+--------
+
+- Add 'passthrough' function.
+
+
+Bugfixes
+--------
+
+- Added missing `splat` in stubs -- by :user:`Avasam` (#29)
+
+
v4.1.0
======
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/PKG-INFO
new/jaraco_functools-4.2.1/PKG-INFO
--- old/jaraco_functools-4.1.0/PKG-INFO 2024-09-27 21:47:04.518915200 +0200
+++ new/jaraco_functools-4.2.1/PKG-INFO 2025-06-21 21:21:59.165620000 +0200
@@ -1,15 +1,15 @@
-Metadata-Version: 2.1
+Metadata-Version: 2.4
Name: jaraco.functools
-Version: 4.1.0
+Version: 4.2.1
Summary: Functools like those found in stdlib
Author-email: "Jason R. Coombs" <[email protected]>
+License-Expression: MIT
Project-URL: Source, https://github.com/jaraco/jaraco.functools
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
-Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
-Requires-Python: >=3.8
+Requires-Python: >=3.9
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: more_itertools
@@ -32,6 +32,7 @@
Requires-Dist: pytest-enabler>=2.2; extra == "enabler"
Provides-Extra: type
Requires-Dist: pytest-mypy; extra == "type"
+Dynamic: license-file
.. image:: https://img.shields.io/pypi/v/jaraco.functools.svg
:target: https://pypi.org/project/jaraco.functools
@@ -42,14 +43,14 @@
:target:
https://github.com/jaraco/jaraco.functools/actions?query=workflow%3A%22tests%22
:alt: tests
-.. image::
https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json
+.. image::
https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
:target: https://github.com/astral-sh/ruff
:alt: Ruff
.. image::
https://readthedocs.org/projects/jaracofunctools/badge/?version=latest
:target: https://jaracofunctools.readthedocs.io/en/latest/?badge=latest
-.. image:: https://img.shields.io/badge/skeleton-2024-informational
+.. image:: https://img.shields.io/badge/skeleton-2025-informational
:target: https://blog.jaraco.com/skeleton
.. image:: https://tidelift.com/badges/package/pypi/jaraco.functools
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/README.rst
new/jaraco_functools-4.2.1/README.rst
--- old/jaraco_functools-4.1.0/README.rst 2024-09-27 21:46:46.000000000
+0200
+++ new/jaraco_functools-4.2.1/README.rst 2025-06-21 21:21:42.000000000
+0200
@@ -7,14 +7,14 @@
:target:
https://github.com/jaraco/jaraco.functools/actions?query=workflow%3A%22tests%22
:alt: tests
-.. image::
https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json
+.. image::
https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
:target: https://github.com/astral-sh/ruff
:alt: Ruff
.. image::
https://readthedocs.org/projects/jaracofunctools/badge/?version=latest
:target: https://jaracofunctools.readthedocs.io/en/latest/?badge=latest
-.. image:: https://img.shields.io/badge/skeleton-2024-informational
+.. image:: https://img.shields.io/badge/skeleton-2025-informational
:target: https://blog.jaraco.com/skeleton
.. image:: https://tidelift.com/badges/package/pypi/jaraco.functools
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/jaraco/functools/__init__.py
new/jaraco_functools-4.2.1/jaraco/functools/__init__.py
--- old/jaraco_functools-4.1.0/jaraco/functools/__init__.py 2024-09-27
21:46:46.000000000 +0200
+++ new/jaraco_functools-4.2.1/jaraco/functools/__init__.py 2025-06-21
21:21:42.000000000 +0200
@@ -8,7 +8,6 @@
import time
import types
import warnings
-
from typing import Callable, TypeVar
import more_itertools
@@ -291,6 +290,26 @@
return f
+_T = TypeVar('_T')
+
+
+def passthrough(func: Callable[..., object]) -> Callable[[_T], _T]:
+ """
+ Wrap the function to always return the first parameter.
+
+ >>> passthrough(print)('3')
+ 3
+ '3'
+ """
+
+ @functools.wraps(func)
+ def wrapper(first: _T, *args, **kwargs) -> _T:
+ func(first, *args, **kwargs)
+ return first
+
+ return wrapper
+
+
class Throttler:
"""Rate-limit a function (or other callable)."""
@@ -488,7 +507,7 @@
>>> my_ob._saved_method.args
()
"""
- args_and_kwargs = collections.namedtuple('args_and_kwargs', 'args kwargs')
+ args_and_kwargs = collections.namedtuple('args_and_kwargs', 'args kwargs')
# noqa: PYI024 # Internal; stubs used for typing
@functools.wraps(method)
def wrapper(self, /, *args, **kwargs):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/jaraco/functools/__init__.pyi
new/jaraco_functools-4.2.1/jaraco/functools/__init__.pyi
--- old/jaraco_functools-4.1.0/jaraco/functools/__init__.pyi 2024-09-27
21:46:46.000000000 +0200
+++ new/jaraco_functools-4.2.1/jaraco/functools/__init__.pyi 2025-06-21
21:21:42.000000000 +0200
@@ -1,7 +1,6 @@
from collections.abc import Callable, Hashable, Iterator
from functools import partial
from operator import methodcaller
-import sys
from typing import (
Any,
Generic,
@@ -10,14 +9,12 @@
overload,
)
-if sys.version_info >= (3, 10):
- from typing import Concatenate, ParamSpec
-else:
- from typing_extensions import Concatenate, ParamSpec
+from typing_extensions import Concatenate, ParamSpec, TypeVarTuple, Unpack
_P = ParamSpec('_P')
_R = TypeVar('_R')
_T = TypeVar('_T')
+_Ts = TypeVarTuple('_Ts')
_R1 = TypeVar('_R1')
_R2 = TypeVar('_R2')
_V = TypeVar('_V')
@@ -66,10 +63,10 @@
cache_wrapper: Callable[[Callable[..., _R]], _MethodCacheWrapper[_R]] =
...,
) -> _MethodCacheWrapper[_R] | _ProxyMethodCacheWrapper[_R]: ...
def apply(
- transform: Callable[[_R], _T]
+ transform: Callable[[_R], _T],
) -> Callable[[Callable[_P, _R]], Callable[_P, _T]]: ...
def result_invoke(
- action: Callable[[_R], Any]
+ action: Callable[[_R], Any],
) -> Callable[[Callable[_P, _R]], Callable[_P, _R]]: ...
def invoke(
f: Callable[_P, _R], /, *args: _P.args, **kwargs: _P.kwargs
@@ -95,23 +92,23 @@
def retry_call(
func: Callable[..., _R],
cleanup: Callable[..., None] = ...,
- retries: int | float = ...,
+ retries: float = ...,
trap: type[BaseException] | tuple[type[BaseException], ...] = ...,
) -> _R: ...
def retry(
cleanup: Callable[..., None] = ...,
- retries: int | float = ...,
+ retries: float = ...,
trap: type[BaseException] | tuple[type[BaseException], ...] = ...,
) -> Callable[[Callable[..., _R]], Callable[..., _R]]: ...
def print_yielded(func: Callable[_P, Iterator[Any]]) -> Callable[_P, None]: ...
def pass_none(
- func: Callable[Concatenate[_T, _P], _R]
+ func: Callable[Concatenate[_T, _P], _R],
) -> Callable[Concatenate[_T, _P], _R]: ...
def assign_params(
func: Callable[..., _R], namespace: dict[str, Any]
) -> partial[_R]: ...
def save_method_args(
- method: Callable[Concatenate[_S, _P], _R]
+ method: Callable[Concatenate[_S, _P], _R],
) -> Callable[Concatenate[_S, _P], _R]: ...
def except_(
*exceptions: type[BaseException], replace: Any = ..., use: Any = ...
@@ -123,3 +120,4 @@
def bypass_unless(
check: Any,
) -> Callable[[Callable[[_T], _R]], Callable[[_T], _T | _R]]: ...
+def splat(func: Callable[[Unpack[_Ts]], _R]) -> Callable[[tuple[Unpack[_Ts]]],
_R]: ...
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jaraco_functools-4.1.0/jaraco.functools.egg-info/PKG-INFO
new/jaraco_functools-4.2.1/jaraco.functools.egg-info/PKG-INFO
--- old/jaraco_functools-4.1.0/jaraco.functools.egg-info/PKG-INFO
2024-09-27 21:47:04.000000000 +0200
+++ new/jaraco_functools-4.2.1/jaraco.functools.egg-info/PKG-INFO
2025-06-21 21:21:59.000000000 +0200
@@ -1,15 +1,15 @@
-Metadata-Version: 2.1
+Metadata-Version: 2.4
Name: jaraco.functools
-Version: 4.1.0
+Version: 4.2.1
Summary: Functools like those found in stdlib
Author-email: "Jason R. Coombs" <[email protected]>
+License-Expression: MIT
Project-URL: Source, https://github.com/jaraco/jaraco.functools
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
-Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
-Requires-Python: >=3.8
+Requires-Python: >=3.9
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: more_itertools
@@ -32,6 +32,7 @@
Requires-Dist: pytest-enabler>=2.2; extra == "enabler"
Provides-Extra: type
Requires-Dist: pytest-mypy; extra == "type"
+Dynamic: license-file
.. image:: https://img.shields.io/pypi/v/jaraco.functools.svg
:target: https://pypi.org/project/jaraco.functools
@@ -42,14 +43,14 @@
:target:
https://github.com/jaraco/jaraco.functools/actions?query=workflow%3A%22tests%22
:alt: tests
-.. image::
https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json
+.. image::
https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
:target: https://github.com/astral-sh/ruff
:alt: Ruff
.. image::
https://readthedocs.org/projects/jaracofunctools/badge/?version=latest
:target: https://jaracofunctools.readthedocs.io/en/latest/?badge=latest
-.. image:: https://img.shields.io/badge/skeleton-2024-informational
+.. image:: https://img.shields.io/badge/skeleton-2025-informational
:target: https://blog.jaraco.com/skeleton
.. image:: https://tidelift.com/badges/package/pypi/jaraco.functools
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jaraco_functools-4.1.0/jaraco.functools.egg-info/SOURCES.txt
new/jaraco_functools-4.2.1/jaraco.functools.egg-info/SOURCES.txt
--- old/jaraco_functools-4.1.0/jaraco.functools.egg-info/SOURCES.txt
2024-09-27 21:47:04.000000000 +0200
+++ new/jaraco_functools-4.2.1/jaraco.functools.egg-info/SOURCES.txt
2025-06-21 21:21:59.000000000 +0200
@@ -15,7 +15,6 @@
towncrier.toml
tox.ini
.github/FUNDING.yml
-.github/dependabot.yml
.github/workflows/main.yml
docs/conf.py
docs/history.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/pyproject.toml
new/jaraco_functools-4.2.1/pyproject.toml
--- old/jaraco_functools-4.1.0/pyproject.toml 2024-09-27 21:46:46.000000000
+0200
+++ new/jaraco_functools-4.2.1/pyproject.toml 2025-06-21 21:21:42.000000000
+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]
@@ -12,11 +17,11 @@
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
- "License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
]
-requires-python = ">=3.8"
+requires-python = ">=3.9"
+license = "MIT"
dependencies = [
"more_itertools",
]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/jaraco_functools-4.1.0/ruff.toml
new/jaraco_functools-4.2.1/ruff.toml
--- old/jaraco_functools-4.1.0/ruff.toml 2024-09-27 21:46:46.000000000
+0200
+++ new/jaraco_functools-4.2.1/ruff.toml 2025-06-21 21:21:42.000000000
+0200
@@ -1,10 +1,31 @@
[lint]
extend-select = [
- "C901",
- "PERF401",
- "W",
+ # upstream
+
+ "C901", # complex-structure
+ "I", # isort
+ "PERF401", # manual-list-comprehension
+
+ # 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
+
+ # 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",
@@ -18,8 +39,8 @@
"Q003",
"COM812",
"COM819",
- "ISC001",
- "ISC002",
+
+ # local
]
[format]