2
2
Fork
You've already forked overpass-api-python-wrapper
2

Modernize packaging, validation, and contributor workflow #195

Merged
mvexel merged 29 commits from dev into main 2026年05月03日 00:30:51 +02:00

Summary

Completes the modernization and test-hardening track.

This PR updates the project to a current, deterministic development workflow and prepares the repository for future feature work.

Highlights

  • Move packaging metadata to PEP 621 in pyproject.toml
  • Remove legacy setup.py, setup.cfg, poetry.lock, tox.ini
  • Adopt uv and uv.lock
  • Add scripts/check as the canonical validation entrypoint
  • Support and validate Python 3.10 through 3.14
  • Add Ruff lint/format checks, ty type checking, coverage reporting, and package build verification
  • Add Forgejo/Codeberg workflow for self-hosted validation
  • Make default tests hermetic; live API checks are opt-in only
  • Expand API/error behavior test coverage
  • Modernize low-risk internals while preserving public API behavior
  • Refresh README, examples, changelog, and release checklist
  • Mark modernization plan complete and unblock small follow-up feature slices

Validation

Final local validation passed with:

scripts/check

Covered:

  • Ruff lint
  • Ruff format check
  • ty type check
  • coverage run
  • test matrix on Python 3.10, 3.11, 3.12, 3.13, 3.14
  • package build verification

Notes

Release publication is intentionally deferred to a follow-up after this PR is merged and hosted Forgejo/Codeberg validation is green on dev and main.

Deferred follow-up work remains for targeted parser/error-response/status-parser behavior improvements.

## Summary Completes the modernization and test-hardening track. This PR updates the project to a current, deterministic development workflow and prepares the repository for future feature work. ## Highlights - Move packaging metadata to PEP 621 in `pyproject.toml` - Remove legacy `setup.py`, `setup.cfg`, `poetry.lock`, `tox.ini` - Adopt `uv` and `uv.lock` - Add `scripts/check` as the canonical validation entrypoint - Support and validate Python 3.10 through 3.14 - Add Ruff lint/format checks, `ty` type checking, coverage reporting, and package build verification - Add Forgejo/Codeberg workflow for self-hosted validation - Make default tests hermetic; live API checks are opt-in only - Expand API/error behavior test coverage - Modernize low-risk internals while preserving public API behavior - Refresh README, examples, changelog, and release checklist - Mark modernization plan complete and unblock small follow-up feature slices ## Validation Final local validation passed with: ```bash scripts/check ``` Covered: - Ruff lint - Ruff format check - ty type check - coverage run - test matrix on Python 3.10, 3.11, 3.12, 3.13, 3.14 - package build verification Notes Release publication is intentionally deferred to a follow-up after this PR is merged and hosted Forgejo/Codeberg validation is green on dev and main. Deferred follow-up work remains for targeted parser/error-response/status-parser behavior improvements.
docs: reconcile modernization completion state
All checks were successful
Check / check (pull_request) Successful in 50s
12a8c22cdc
Sign in to join this conversation.
No reviewers
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
mvexel/overpass-api-python-wrapper!195
Reference in a new issue
mvexel/overpass-api-python-wrapper
No description provided.
Delete branch "dev"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?