Skip to content

build: migrate from poetry to uv#99

Merged
FelixAbrahamsson merged 1 commit into
masterfrom
uv-migration
Jul 1, 2026
Merged

build: migrate from poetry to uv#99
FelixAbrahamsson merged 1 commit into
masterfrom
uv-migration

Conversation

@FelixAbrahamsson

Copy link
Copy Markdown
Contributor

Migrates the project from Poetry to uv.

Changes

  • pyproject.toml: converted [tool.poetry] to PEP 621 [project]. Build backend is now uv_build (flat layout preserved via [tool.uv.build-backend] module-root = "", module-name = "datastream" so the wheel ships the datastream package). Dev deps moved to [dependency-groups].
  • lockfile: poetry.lock removed, uv.lock added (82 packages, no git sources).
  • .python-version: pinned to 3.10 (pandas 1.5.3 has no cp312 wheels and fails to build from source on 3.12; repo targets 3.9/3.10).
  • CI: test.yml, publish.yml, gh-pages.yml migrated to astral-sh/setup-uv + uv sync --locked / uv run / uv build. Publish uses uv version "$(git tag --points-at HEAD)" + uv build + uv publish to PyPI (PYPI_TOKEN).

Library, published to PyPI. No Dockerfiles, no private index dependencies.

Validation

  • uv lock --check: passes
  • Tests: uv run pytest -> 54 passed (Python 3.10)
  • uv build: wheel + sdist build, wheel contains the datastream package
  • mkdocs build: succeeds
  • All workflow YAML parses

🤖 Generated with Claude Code

Convert to PEP 621 pyproject with uv_build backend (flat layout:
module-root="", module-name="datastream"). Replace poetry.lock with
uv.lock, pin Python 3.10. Migrate test, publish, and gh-pages CI
workflows to setup-uv + uv sync/run/build/publish. Library (published
to PyPI); no Dockerfiles, no private deps.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@FelixAbrahamsson FelixAbrahamsson marked this pull request as ready for review July 1, 2026 12:17
@FelixAbrahamsson FelixAbrahamsson merged commit a39bf2e into master Jul 1, 2026
2 checks passed
@FelixAbrahamsson FelixAbrahamsson deleted the uv-migration branch July 1, 2026 12:20
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.

2 participants