chore: move to packaging with pyproject.toml by rhamzeh · Pull Request #220 · openfga/python-sdk

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

CI workflow switches to uv for installs, lint, build, and tests. Packaging and dependency files are removed/trimmed (setup.py deleted; requirements and test-requirements pruned/removed). OpenAPI generator ignore/manifests updated to exclude packaging files. Static analysis exclusions corrected in pyproject.toml.

Changes

Cohort / File(s) Summary of Changes
CI workflow (uv migration)
.github/workflows/main.yaml
Replaced pip-based steps with uv: install via pip install uv, run lint/format/build with uv, run tests via uv run pytest with coverage, and invoke ruff via uv. Removed caching of requirements files.
OpenAPI generator config
.openapi-generator-ignore, .openapi-generator/FILES
Added setup.py, requirements.txt, and test-requirements.txt to ignore list; removed the same from generator FILES manifest. No code generation logic changes.
Packaging and dependencies
setup.py, requirements.txt, test-requirements.txt
Deleted setup.py. Removed multiple dependencies from requirements.txt (aiohttp, python-dateutil, setuptools, build, urllib3, opentelemetry-api). Deleted contents of test-requirements.txt.
Static analysis config
pyproject.toml
Fixed exclusions for Ruff/MyPy to openfga_sdk/models (corrected path).

Sequence Diagram(s)

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Pre-merge checks (3 passed)

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title "chore: move to packaging with pyproject.toml" accurately and concisely captures the primary change in the PR — migrating packaging to pyproject.toml (evidenced by deletion of setup.py and updates to pyproject.toml and related workflow files) — and is appropriately scoped and readable for repository history. It avoids noise and clearly signals the intent of the changeset to reviewers.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/packaging

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.