From e54f0a0f8e52225c70c2cedc567f168bd952e1d4 Mon Sep 17 00:00:00 2001 From: A5rocks Date: Wed, 13 Dec 2023 10:54:53 +0900 Subject: [PATCH 1/4] Add Python 3.13 to CI matrix --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 71c5e221a3..19530d1f01 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,7 +94,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['pypy-3.9', 'pypy-3.10', '3.8', '3.9', '3.10', '3.11', '3.12-dev', 'pypy-3.9-nightly', 'pypy-3.10-nightly'] + python: ['pypy-3.9', 'pypy-3.10', '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.9-nightly', 'pypy-3.10-nightly'] check_formatting: ['0'] no_test_requirements: ['0'] extra_name: [''] From b476df2191ffc5cb17d6ec449a2ac26e509b50bd Mon Sep 17 00:00:00 2001 From: A5rocks Date: Wed, 13 Dec 2023 11:08:29 +0900 Subject: [PATCH 2/4] Try fixing `pathmod` issue --- src/trio/_path.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/trio/_path.py b/src/trio/_path.py index 0a6c685817..7673ee63c2 100644 --- a/src/trio/_path.py +++ b/src/trio/_path.py @@ -155,7 +155,7 @@ def generate_forwards(cls, attrs: dict[str, object]) -> None: if attr_name.startswith("_") or attr_name in attrs: continue - if isinstance(attr, property): + if isinstance(attr, (property, types.ModuleType)): cls._forward.append(attr_name) elif isinstance(attr, types.FunctionType): wrapper = _forward_factory(cls, attr_name, attr) @@ -199,6 +199,7 @@ def generate_iter(cls, attrs: dict[str, object]) -> None: setattr(cls, attr_name, wrapper) +# TODO: `pathmod` points to `os.path`... is that what we want? @final class Path(metaclass=AsyncAutoWrapperType): """A :class:`pathlib.Path` wrapper that executes blocking methods in From 92e2c5b4896e7f3d53122c6c0e6981db5582f610 Mon Sep 17 00:00:00 2001 From: A5rocks Date: Sat, 6 Jan 2024 10:21:58 +0900 Subject: [PATCH 3/4] Remove 3.13 from CI matrix --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 19530d1f01..02dda87953 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,7 +94,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['pypy-3.9', 'pypy-3.10', '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.9-nightly', 'pypy-3.10-nightly'] + python: ['pypy-3.9', 'pypy-3.10', '3.8', '3.9', '3.10', '3.11', '3.12', 'pypy-3.9-nightly', 'pypy-3.10-nightly'] check_formatting: ['0'] no_test_requirements: ['0'] extra_name: [''] From 271fd6ff097fc84b949be361555cc6f4cf40a722 Mon Sep 17 00:00:00 2001 From: EXPLOSION Date: Tue, 16 Jan 2024 00:36:44 -0500 Subject: [PATCH 4/4] Remove irrelevant TODO --- src/trio/_path.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/trio/_path.py b/src/trio/_path.py index 7673ee63c2..eed4d88e6f 100644 --- a/src/trio/_path.py +++ b/src/trio/_path.py @@ -199,7 +199,6 @@ def generate_iter(cls, attrs: dict[str, object]) -> None: setattr(cls, attr_name, wrapper) -# TODO: `pathmod` points to `os.path`... is that what we want? @final class Path(metaclass=AsyncAutoWrapperType): """A :class:`pathlib.Path` wrapper that executes blocking methods in