Skip to content

Commit fee09f4

Browse files
Merge pull request #1015 from dcermak/typing_extensions-only-for-older-py
Only depend on typing_extensions for Python < 3.10
2 parents 58c9758 + 5170451 commit fee09f4

File tree

6 files changed

+32
-7
lines changed

6 files changed

+32
-7
lines changed

pyproject.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ dependencies = [
4343
"packaging>=20",
4444
"setuptools",
4545
'tomli>=1; python_version < "3.11"',
46-
"typing-extensions",
46+
'typing-extensions; python_version < "3.10"',
4747
]
4848
[project.optional-dependencies]
4949
docs = [
@@ -61,6 +61,7 @@ test = [
6161
"build",
6262
"pytest",
6363
"rich",
64+
'typing-extensions; python_version < "3.11"',
6465
"wheel",
6566
]
6667
toml = [

src/setuptools_scm/_file_finders/__init__.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,12 @@
1212
from .pathtools import norm_real
1313

1414
if TYPE_CHECKING:
15-
from typing_extensions import TypeGuard
15+
import sys
16+
17+
if sys.version_info >= (3, 10):
18+
from typing import TypeGuard
19+
else:
20+
from typing_extensions import TypeGuard
1621

1722

1823
log = _log.log.getChild("file_finder")

src/setuptools_scm/_integration/toml.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,10 @@
1616
from tomli import loads as load_toml
1717

1818
if TYPE_CHECKING:
19-
from typing_extensions import TypeAlias
19+
if sys.version_info >= (3, 10):
20+
from typing import TypeAlias
21+
else:
22+
from typing_extensions import TypeAlias
2023

2124
from .. import _log
2225

src/setuptools_scm/_types.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,12 @@
1010
from typing import Union
1111

1212
if TYPE_CHECKING:
13-
from typing_extensions import TypeAlias
13+
import sys
14+
15+
if sys.version_info >= (3, 10):
16+
from typing import TypeAlias
17+
else:
18+
from typing_extensions import TypeAlias
1419

1520
from . import version
1621

src/setuptools_scm/version.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,14 @@
1818
from . import _modify_version
1919

2020
if TYPE_CHECKING:
21-
from typing_extensions import Concatenate
22-
from typing_extensions import ParamSpec
21+
import sys
22+
23+
if sys.version_info >= (3, 10):
24+
from typing import Concatenate
25+
from typing import ParamSpec
26+
else:
27+
from typing_extensions import Concatenate
28+
from typing_extensions import ParamSpec
2329

2430
_P = ParamSpec("_P")
2531

testing/conftest.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import contextlib
44
import os
5+
import sys
56

67
from pathlib import Path
78
from types import TracebackType
@@ -11,7 +12,11 @@
1112
import pytest
1213

1314
from setuptools_scm._run_cmd import run
14-
from typing_extensions import Self
15+
16+
if sys.version_info >= (3, 11):
17+
from typing import Self
18+
else:
19+
from typing_extensions import Self
1520

1621
from .wd_wrapper import WorkDir
1722

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy