Skip to main content Brad's PyNotes

Posts on Packaging

  1. PEP 420 - Implicit Namespace Packages

    TL;DR

    PEP 420 introduced implicit namespace packages, allowing Python packages to be split across multiple directories without requiring an __init__.py file. The import machinery automatically discovers and combines all portions of the package, enabling flexible distribution and avoiding file conflicts.

  2. PEP 621: Storing Project Metadata in pyproject.toml

    TL;DR

    PEP 621 established a standardized [project] table in pyproject.toml for declaring Python project metadata. It provided a tool-agnostic, static format that replaced executable setup.py code and tool-specific setup.cfg files with declarative TOML that could be parsed without running code.