Adyen / Adyen/adyen-python-api-library
chore: consolidate package metadata into pyproject.toml (PEP 621)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 68
- Forks
- 49
- Avg merge
- 2h 3m
- Merged PRs (30d)
- 2
Description
Context
Raised as a follow-up from PR #468.
Currently, package metadata (version, dependencies, etc.) is duplicated across setup.py and pyproject.toml, which led to the inconsistency fixed in PR #468 where pydantic>=2.0 was missing from setup.py.
Proposed Change
Consolidate all package metadata into pyproject.toml as the single source of truth, following modern Python packaging standards (PEP 621).
Steps:
- Move package discovery logic into
pyproject.tomlvia a[tool.setuptools.packages.find]section - Simplify
setup.pyto justfrom setuptools import setup; setup() - Update
build-system.requiresinpyproject.tomltosetuptools>=61.0.0
Example configuration:
[build-system]
requires = ["setuptools>=61.0.0", "wheel"]
[tool.setuptools.packages.find]
include = ["Adyen*"]
exclude = ["tests", "tests.*"]
Benefit
Prevents metadata from becoming out of sync in the future.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the metadata and package discovery in setup.py and pyproject.toml, then review the proposed [tool.setuptools.packages.find] and build-system changes. Done means pyproject.toml is the single source of package metadata, setup.py only delegates to setuptools, and the Adyen package remains included while tests are excluded.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Refactor
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 72/100