Skip to content

Migrate static metadata to pyproject.toml for improved packaging standards #487

@dnerini

Description

@dnerini

The current setup.py-based installation is fully functional, but it could benefit from adopting pyproject.toml to follow modern packaging standards (PEP 517/518). This doesn't require removing setup.py, instead, we can gradually migrate static metadata and build requirements to a pyproject.toml while keeping the install scripts in setup.py, if needed.

# Motivation

  • Standardization: pyproject.toml is the officially recommended way to define build systems and package metadata.
  • Tool compatibility: Improves compatibility with modern packaging tools like uv.
  • Cleaner separation: Metadata becomes declarative and easier to manage, while setup.py can be reserved for the custom install logic.
  • Better developer experience: IDEs, linters, formatters, and test runners already use pyproject.toml for config, this aligns build configuration with that.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions