feat(pyproject): migrate to PEP 621 compliance#15
feat(pyproject): migrate to PEP 621 compliance#15Nagato-Yuzuru wants to merge 1 commit intoakutayural:mainfrom
Conversation
- Updated project metadata to use `[project]` table. - Moved dependencies and development dependencies to PEP 621 format. - Adjusted URLs, authors, and classifiers in line with PEP 621. - Retained `[tool.poetry].packages` for backward compatibility. This migration simplifies compatibility with modern packaging tools.
There was a problem hiding this comment.
Pull Request Overview
This PR migrates the project's pyproject.toml from Poetry-specific configuration to PEP 621 compliant format while maintaining backward compatibility with Poetry. The primary goal is to enable compatibility with modern Python packaging tools like uv that require PEP 621 compliance.
Key changes:
- Converted project metadata from
[tool.poetry]to standardized[project]table - Migrated dependencies to PEP 621 format using
[project]and[dependency-groups] - Standardized URL and script definitions to use PEP 621 conventions
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| "uvicorn>=0.32.0", | ||
| "mypy>=1.17.1,<2.0.0", | ||
| "types-requests>=2.32.4.20250809,<3.0.0", | ||
| "types-click>=7.1.8,<8.0.0", |
There was a problem hiding this comment.
The version constraints have been changed from Poetry's caret operator (^) to explicit upper bounds (<). While this is valid, it differs from the original Poetry semantics: ^1.17.1 allows >=1.17.1,<2.0.0 but also permits pre-release versions, while the new format excludes them by default. Verify that this behavior change is intentional for these development dependencies.
| "types-click>=7.1.8,<8.0.0", | |
| "types-click^7.1.8", |
Summary
[project]table.[tool.poetry].packagesfor backward compatibility.Uv cannot work on the pyproject.toml configured for poetry. The Change simplifies compatibility with modern packaging tools.