Creation of Python packages underwent a few significant changes in the last 3-4 years. Here’s my note to self to remember what was changed/deprecated when:
“Eggs” => “Wheel“
“Eggs” was an old Python package format that was deprecated in 2018 in favor of the “wheel” format, and removed in early 2021. Still, “package-name.egg-info” folder remains part of the package metadata, even if the package uses “wheel” distribution format.
setup.py => pyproject.toml
Executable setup.py files used to be the main way to manipulate Python distribution packages until pyproject.toml was introduced in 2018. “pip” package management tool would invoke setup.py to manipulate the project. Support for executable setup.py was deprecated in “pip” in September 2021, but it is still available.
distutils => setuptools
Distutils package was used to author setup.py files. It was deprecated in Python 3.10 (October 2021) in favor of setuptools, and completely removed in Python 3.12 (October 2023).