-
Notifications
You must be signed in to change notification settings - Fork 23
Open
Description
Summary:
The repository currently exposes conflicting packaging metadata: the PEP 621/PEP 517 configuration in pyproject.toml lists the license as Apache-2.0 and uses hatchling as the build backend, while setup.py sets license="GPL" and declares legacy fields such as python_requires=">=2.7". Having two authoritative sources with different values creates legal and tooling ambiguity.
Impact:
- Legal uncertainty for downstream users and redistributors due to conflicting license declarations.
- Packaging and release tooling may produce mismatched metadata in published artifacts.
- Contributor confusion about project policy (license, supported Python versions).
- CI/dependency automation may behave inconsistently.
Recommended resolution:
- Choose a single canonical metadata source (prefer pyproject.toml since the project already uses hatchling) and document it in README.md or CONTRIBUTING.md.
- Make license metadata consistent: update pyproject.toml or setup.py so both show the same license, and ensure the LICENSE file matches.
- Align Python support (python_requires / project.requires-python) to supported versions (recommend dropping Python 2 and declaring >=3.8).
- Simplify or remove redundant setup.py (if kept, make it a minimal shim that reads metadata from pyproject.toml).
- Add CI checks to validate package metadata during builds (e.g., python -m build + inspect generated METADATA).
Suggested PR scope:
- Update license fields to Apache-2.0 (or change both files to GPL if that is intended).
- Add/update LICENSE file if needed.
- Add a short note in README.md/CONTRIBUTING.md clarifying that pyproject.toml is authoritative.
- Run a local build and report metadata verification in PR description.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels