Amending PEP 427 (and PEP 625) on package normalization rules

Flit doesn’t seem to support names with . at all, but it does lowercase the produced wheel names.

Poetry produces wheels with a . in their name and caps:

Building Foo.bar (0.1.0)
  - Building sdist
  - Built Foo.bar-0.1.0.tar.gz
  - Building wheel
  - Built Foo.bar-0.1.0-py3-none-any.whl

Hatch normalizes fully:

[sdist]
dist/foo_bar-0.0.1.tar.gz

[wheel]
dist/foo_bar-0.0.1-py3-none-any.whl

Setuptools does not.

Hatch only can work to release to PyPI because it doesn’t actually let you have a . in your name either, it hard normalizes all names and removes the concept of display names completely.

1 Like