From a047f0843956342621d21e4ab98ce6dad4500eae Mon Sep 17 00:00:00 2001 From: Peter Law Date: Wed, 12 Oct 2022 09:03:20 +0100 Subject: [PATCH] Clarify dots canonicalisation change is breaking The handling of package names within the Python packaging ecosystem is unfortunately not in a great state at the moment. There exist a large number of packages which contain characters which (some of) the specs indicate are invalid, yet there is not a clear migration path nor destination at the moment. Poetry's approach is to normalise project names towards their "canonical" form, meaning that existing projects on PyPI which use the more relaxed name forms will be silently renamed if they move to (recent versions of) Poetry. As well as changing the name of these packages (which maintainers are unlikely to expect nor desire) this unfortunately ends up breaking introspection via `importlib.metadata` in Python 3.8 and 3.9 which are not aware of the canonicalisation rules which Poetry is using. Adding this compatibility note informs maintainers so that they can decide how (and if) they want this name canonicalisation to happen. See also https://github.com/python-poetry/poetry/issues/6198 --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7541f024e01..88e9c41895b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -236,6 +236,10 @@ - Fixed several style issues in the docs ([#6254](https://github.com/python-poetry/poetry/pull/6254)) - Fixed outdated info about `--only` parameter ([#6263](https://github.com/python-poetry/poetry/pull/6263)) +### Breaking + +- Packages with dots in their names will be canonicalised to underscores for compatibility with PEP 503. This will rename projects on PYPI and is potentially breaking on Python versions earlier than 3.10, which may need to use [`importlib-metadata`](https://pypi.org/project/importlib-metadata/) rather than standard library [`importlib.metadata`](https://docs.python.org/3/library/importlib.metadata.html). ([#6022](https://github.com/python-poetry/poetry/pull/6022)) + ## [1.2.0rc2] - 2022-08-26