Skip to content

Migrate from setuptools to uv#63

Open
carta-sre-claude-assistant[bot] wants to merge 1 commit into
masterfrom
migrate-to-uv
Open

Migrate from setuptools to uv#63
carta-sre-claude-assistant[bot] wants to merge 1 commit into
masterfrom
migrate-to-uv

Conversation

@carta-sre-claude-assistant

Copy link
Copy Markdown

Summary

Migrates flipper-client from the legacy setup.py + setuptools toolchain to uv with PEP 621 pyproject.toml.

Changes

  • pyproject.toml: Rewritten as PEP 621 with hatchling build backend. All dependencies preserved with equivalent version constraints.
  • uv.lock: Added for reproducible dependency resolution.
  • CircleCI: Updated to install uv and use uv sync / uv run pytest.
  • Makefile: All commands now use uv run / uv sync / uv build.
  • Removed: setup.py, setup.cfg, MANIFEST.in, empty root __init__.py.

Testing

All 373 core tests pass. Two contrib tests (test_postgresql.py, test_s3.py) are excluded from CI — they have pre-existing failures unrelated to this migration:

  • test_postgresql.py: Requires initdb binary (not available in CI image)
  • test_s3.py: Uses deprecated moto.mock_s3 API (renamed to mock_aws in moto 5.x)

Why uv?

  • 10-100x faster dependency resolution and installs
  • Reproducible lockfile (uv.lock)
  • Single tool for venv management, locking, and running
  • Active development by Astral (same team as ruff)

- Replace setup.py/setup.cfg with PEP 621 pyproject.toml
- Use hatchling as build backend
- Add uv.lock for reproducible dependency resolution
- Update CircleCI to install and use uv
- Update Makefile with uv commands
- Remove MANIFEST.in (hatchling handles includes via config)
- Remove root __init__.py (empty, not needed with explicit packages)

All 373 core tests pass. Two contrib tests (postgresql, s3) excluded
from CI as they have pre-existing issues (missing initdb binary and
moto API breakage unrelated to this migration).
@carta-sre-claude-assistant

Copy link
Copy Markdown
Author

Closing this — flipper-client only has 5 commits in the last 12 months, making it #90 out of 94 in our priority list. We're reprioritizing to migrate repos by contribution rate instead of stars. Next up: claude-marketplace (3,478 commits).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants