Skip to content

Commit 0f2229c

Browse files
committed
Merge branch 'main' into feature/no-metadata-exception
2 parents 2f4088e + a5c2154 commit 0f2229c

File tree

14 files changed

+31
-143
lines changed

14 files changed

+31
-143
lines changed

.github/workflows/main.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,31 +34,31 @@ jobs:
3434
# https://blog.jaraco.com/efficient-use-of-ci-resources/
3535
matrix:
3636
python:
37-
- "3.9"
37+
- "3.10"
3838
- "3.13"
3939
platform:
4040
- ubuntu-latest
4141
- macos-latest
4242
- windows-latest
4343
include:
44-
- python: "3.10"
45-
platform: ubuntu-latest
4644
- python: "3.11"
4745
platform: ubuntu-latest
4846
- python: "3.12"
4947
platform: ubuntu-latest
5048
- python: "3.14"
5149
platform: ubuntu-latest
50+
- python: "3.15"
51+
platform: ubuntu-latest
5252
- python: pypy3.10
5353
platform: ubuntu-latest
5454
runs-on: ${{ matrix.platform }}
55-
continue-on-error: ${{ matrix.python == '3.14' }}
55+
continue-on-error: ${{ matrix.python == '3.15' }}
5656
steps:
5757
- uses: actions/checkout@v4
5858
- name: Install build dependencies
5959
# Install dependencies for building packages on pre-release Pythons
6060
# jaraco/skeleton#161
61-
if: matrix.python == '3.14' && matrix.platform == 'ubuntu-latest'
61+
if: matrix.python == '3.15' && matrix.platform == 'ubuntu-latest'
6262
run: |
6363
sudo apt update
6464
sudo apt install -y libxml2-dev libxslt-dev

.pre-commit-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@ repos:
22
- repo: https://github.com/astral-sh/ruff-pre-commit
33
rev: v0.12.0
44
hooks:
5-
- id: ruff
5+
- id: ruff-check
66
args: [--fix, --unsafe-fixes]
77
- id: ruff-format

NEWS.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
v8.8.0
2+
======
3+
4+
Features
5+
--------
6+
7+
- Removed Python 3.9 compatibility.
8+
9+
110
v8.7.1
211
======
312

importlib_metadata/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
from ._functools import method_cache, noop, pass_none, passthrough
4040
from ._itertools import always_iterable, bucket, unique_everseen
4141
from ._meta import PackageMetadata, SimplePath
42-
from .compat import py39, py311
42+
from .compat import py311
4343

4444
__all__ = [
4545
'Distribution',
@@ -345,7 +345,7 @@ def select(self, **params) -> EntryPoints:
345345
Select entry points from self that match the
346346
given parameters (typically group and/or name).
347347
"""
348-
return EntryPoints(ep for ep in self if py39.ep_matches(ep, **params))
348+
return EntryPoints(ep for ep in self if ep.matches(**params))
349349

350350
@property
351351
def names(self) -> set[str]:
@@ -1106,7 +1106,7 @@ def version(distribution_name: str) -> str:
11061106

11071107
_unique = functools.partial(
11081108
unique_everseen,
1109-
key=py39.normalized_name,
1109+
key=operator.attrgetter('_normalized_name'),
11101110
)
11111111
"""
11121112
Wrapper for ``distributions`` to return unique distributions by name.

importlib_metadata/_functools.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import functools
22
import types
3-
from typing import Callable, TypeVar
3+
from collections.abc import Callable
4+
from typing import TypeVar
45

56

67
# from jaraco.functools 3.3

importlib_metadata/compat/py39.py

Lines changed: 0 additions & 38 deletions
This file was deleted.

mypy.ini

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,5 @@ ignore_missing_imports = True
2222
[mypy-zipp.*]
2323
ignore_missing_imports = True
2424

25-
# jaraco/jaraco.test#7
26-
[mypy-jaraco.test.*]
25+
[mypy-test.support.*]
2726
ignore_missing_imports = True

pyproject.toml

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ classifiers = [
2020
"Programming Language :: Python :: 3",
2121
"Programming Language :: Python :: 3 :: Only",
2222
]
23-
requires-python = ">=3.9"
23+
requires-python = ">=3.10"
2424
license = "Apache-2.0"
2525
dependencies = [
2626
"zipp>=3.20",
@@ -39,7 +39,6 @@ test = [
3939
"packaging",
4040
"pyfakefs",
4141
"pytest-perf >= 0.9.2",
42-
"jaraco.test >= 5.4",
4342
]
4443

4544
doc = [
@@ -58,7 +57,7 @@ doc = [
5857
perf = ["ipython"]
5958

6059
check = [
61-
"pytest-checkdocs >= 2.4",
60+
"pytest-checkdocs >= 2.14",
6261
"pytest-ruff >= 0.2.1; sys_platform != 'cygwin'",
6362
]
6463

@@ -72,10 +71,9 @@ enabler = [
7271

7372
type = [
7473
# upstream
75-
"pytest-mypy >= 1.0.1",
76-
77-
## workaround for python/mypy#20454
78-
"mypy < 1.19; python_implementation == 'PyPy'",
74+
75+
# Exclude PyPy from type checks (python/mypy#20454 jaraco/skeleton#187)
76+
"pytest-mypy >= 1.0.1; platform_python_implementation != 'PyPy'",
7977

8078
# local
8179
]

tests/compat/py312.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import contextlib
22

3-
from .py39 import import_helper
3+
from test.support import import_helper
44

55

66
@contextlib.contextmanager

tests/compat/py39.py

Lines changed: 0 additions & 8 deletions
This file was deleted.

0 commit comments

Comments
 (0)