Skip to content

Commit c47aad1

Browse files
committed
Removed dependency on typing_extensions & hid uses behind if TYPE_CHECKING guards
1 parent a770636 commit c47aad1

4 files changed

Lines changed: 29 additions & 29 deletions

File tree

poetry.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ include = [
2424

2525
[tool.poetry.dependencies]
2626
python = "^3.8"
27-
typing-extensions = "^4.10.0"
2827

2928
[tool.poetry.group.dev.dependencies]
3029
pre-commit = ">=2.15.0"

src/poetry/core/factory.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,22 @@
88
from typing import Any
99
from typing import List
1010
from typing import Union
11-
from typing import cast
1211

1312
from packaging.utils import canonicalize_name
1413

15-
from poetry.core.packages.project_package import BuildConfigSpec
16-
from poetry.core.packages.project_package import IncludeSpec
1714
from poetry.core.utils.helpers import combine_unicode
1815
from poetry.core.utils.helpers import readme_content_type
1916

2017

2118
if TYPE_CHECKING:
19+
from typing import cast
20+
2221
from packaging.utils import NormalizedName
2322

2423
from poetry.core.packages.dependency import Dependency
2524
from poetry.core.packages.dependency_group import DependencyGroup
25+
from poetry.core.packages.project_package import BuildConfigSpec
26+
from poetry.core.packages.project_package import IncludeSpec
2627
from poetry.core.packages.project_package import ProjectPackage
2728
from poetry.core.poetry import Poetry
2829
from poetry.core.spdx.license import License
@@ -200,9 +201,13 @@ def configure_package(
200201

201202
if "build" in config:
202203
build = config["build"]
204+
if not build:
205+
build = {}
203206
if not isinstance(build, dict):
204207
build = {"script": build}
205-
package.build_config = cast(BuildConfigSpec, build) or {}
208+
if TYPE_CHECKING:
209+
cast(BuildConfigSpec, build)
210+
package.build_config = build
206211

207212
if "include" in config:
208213
package.include = []
@@ -215,8 +220,9 @@ def configure_package(
215220
if formats and not isinstance(formats, list):
216221
formats = [formats]
217222
include["format"] = formats
218-
219-
package.include.append(cast(IncludeSpec, include))
223+
if TYPE_CHECKING:
224+
include = cast(IncludeSpec, include)
225+
package.include.append(include)
220226

221227
if "exclude" in config:
222228
package.exclude = config["exclude"]

src/poetry/core/packages/project_package.py

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -8,38 +8,33 @@
88
from typing import Sequence
99
from typing import TypedDict
1010

11-
from typing_extensions import NotRequired
12-
1311
from poetry.core.constraints.version import parse_constraint
12+
from poetry.core.packages.package import Package
13+
from poetry.core.packages.utils.utils import create_nested_marker
1414
from poetry.core.version.markers import parse_marker
1515

1616

1717
if TYPE_CHECKING:
18+
from typing_extensions import NotRequired
19+
1820
from poetry.core.constraints.version import Version
1921
from poetry.core.packages.dependency import Dependency
2022

21-
from poetry.core.packages.package import Package
22-
from poetry.core.packages.utils.utils import create_nested_marker
23-
24-
25-
SupportedPackageFormats = Literal["sdist", "wheel"]
26-
27-
28-
BuildConfigSpec = TypedDict(
29-
"BuildConfigSpec",
30-
{"script": NotRequired[str], "generate-setup-file": NotRequired[bool]},
31-
)
32-
23+
SupportedPackageFormats = Literal["sdist", "wheel"]
3324

34-
class PackageSpec(TypedDict):
35-
include: str
36-
to: str
37-
format: list[SupportedPackageFormats]
25+
BuildConfigSpec = TypedDict(
26+
"BuildConfigSpec",
27+
{"script": NotRequired[str], "generate-setup-file": NotRequired[bool]},
28+
)
3829

30+
class PackageSpec(TypedDict):
31+
include: str
32+
to: str
33+
format: list[SupportedPackageFormats]
3934

40-
class IncludeSpec(TypedDict):
41-
path: str
42-
format: list[SupportedPackageFormats]
35+
class IncludeSpec(TypedDict):
36+
path: str
37+
format: list[SupportedPackageFormats]
4338

4439

4540
class ProjectPackage(Package):

0 commit comments

Comments
 (0)