Skip to content

Move project metadata to pyproject.toml, use dependency groups - #139

Open
mwtoews wants to merge 1 commit into
aboutcode-org:mainfrom
mwtoews:pyproject-toml
Open

mwtoews wants to merge 1 commit into
aboutcode-org:mainfrom
mwtoews:pyproject-toml

Conversation

@mwtoews

@mwtoews mwtoews commented Sep 16, 2026

Copy link
Copy Markdown

This moves the project metadata to pyproject.toml following PEP 621, as supported by setuptools. This is intended as a minimal conversion, but there are a few other changes:

  • Use improved license metadata (PEP 639), which requires setuptools>=77
  • Use dependency groups (PEP 735) to provide dependencies for development
    • The dev extra is removed -- extras are published with the metadata to PyPI and should normally be user-facing and not for developers.
    • Developers need a recent version of pip (v25.1) to do: pip install --group dev (can be combined with -e . for an "editable" project install)
    • Developers that use uv can simply type uv sync (since the dev group is included by default)
    • Individual development groups lint, tests and docs are also created, to help organise these a bit, or if they need to be installed for a single purpose, e.g. building docs.
  • Remove setup.cfg and setup.py files, as they are no longer needed
  • Add *.lock to .gitignore to ignore lock files, e.g. created by uv, pixi and others.

This pr does not attempt to reconfigure how the "requirements*txt" files work, as it' not sure what their purpose is.

@mwtoews mwtoews mentioned this pull request Sep 16, 2026
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant