Skip to content

Commit d2dd630

Browse files
dimblebybostonrwalker
authored andcommitted
use packaging.utils.canonicalize_name() (python-poetry#418)
1 parent 043aee8 commit d2dd630

6 files changed

Lines changed: 9 additions & 20 deletions

File tree

src/poetry/core/masonry/metadata.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,8 @@ class Metadata:
4545

4646
@classmethod
4747
def from_package(cls, package: Package) -> Metadata:
48-
from poetry.core.utils.helpers import canonicalize_name
48+
from packaging.utils import canonicalize_name
49+
4950
from poetry.core.utils.helpers import normalize_version
5051
from poetry.core.version.helpers import format_python_constraint
5152

src/poetry/core/packages/dependency_group.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def add_dependency(self, dependency: Dependency) -> None:
3131
self._dependencies.append(dependency)
3232

3333
def remove_dependency(self, name: str) -> None:
34-
from poetry.core.utils.helpers import canonicalize_name
34+
from packaging.utils import canonicalize_name
3535

3636
name = canonicalize_name(name)
3737

src/poetry/core/packages/specification.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ def __init__(
2222
source_subdirectory: str | None = None,
2323
features: Iterable[str] | None = None,
2424
) -> None:
25-
from poetry.core.utils.helpers import canonicalize_name
25+
from packaging.utils import canonicalize_name
2626

2727
self._pretty_name = name
2828
self._name = canonicalize_name(name)
@@ -47,7 +47,7 @@ def pretty_name(self) -> str:
4747

4848
@property
4949
def complete_name(self) -> str:
50-
name = self._name
50+
name: str = self._name
5151

5252
if self._features:
5353
features = ",".join(sorted(self._features))

src/poetry/core/pyproject/tables.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from pathlib import Path
55
from typing import TYPE_CHECKING
66

7-
from poetry.core.utils.helpers import canonicalize_name
7+
from packaging.utils import canonicalize_name
88

99

1010
if TYPE_CHECKING:

src/poetry/core/utils/helpers.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
from __future__ import annotations
22

33
import os
4-
import re
54
import shutil
65
import stat
76
import tempfile
@@ -14,22 +13,17 @@
1413
from typing import Iterator
1514
from typing import no_type_check
1615

17-
from poetry.core.version.pep440 import PEP440Version
18-
16+
from packaging.utils import canonicalize_name
1917

20-
_canonicalize_regex = re.compile(r"[-_.]+")
18+
from poetry.core.version.pep440 import PEP440Version
2119

2220

2321
def combine_unicode(string: str) -> str:
2422
return unicodedata.normalize("NFC", string)
2523

2624

27-
def canonicalize_name(name: str) -> str:
28-
return _canonicalize_regex.sub("-", name).lower()
29-
30-
3125
def module_name(name: str) -> str:
32-
return canonicalize_name(name).replace(".", "_").replace("-", "_")
26+
return canonicalize_name(name).replace("-", "_")
3327

3428

3529
def normalize_version(version: str) -> str:

tests/utils/test_helpers.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
import pytest
99

10-
from poetry.core.utils.helpers import canonicalize_name
1110
from poetry.core.utils.helpers import combine_unicode
1211
from poetry.core.utils.helpers import normalize_version
1312
from poetry.core.utils.helpers import parse_requires
@@ -144,11 +143,6 @@ def test_parse_requires() -> None:
144143
assert result == expected
145144

146145

147-
@pytest.mark.parametrize("raw", ["a-b-c", "a_b-c", "a_b_c", "a-b_c", "a.b-c"])
148-
def test_utils_helpers_canonical_names(raw: str) -> None:
149-
assert canonicalize_name(raw) == "a-b-c"
150-
151-
152146
def test_utils_helpers_combine_unicode() -> None:
153147
combined_expected = "é"
154148
decomposed = "é"

0 commit comments

Comments
 (0)