Skip to content

ci(framework:skip): Replace framework Poetry setup with uv#7202

Merged
tanertopal merged 20 commits into
mainfrom
codex/replace-framework-poetry-backend
May 23, 2026
Merged

ci(framework:skip): Replace framework Poetry setup with uv#7202
tanertopal merged 20 commits into
mainfrom
codex/replace-framework-poetry-backend

Conversation

@tanertopal
Copy link
Copy Markdown
Member

@tanertopal tanertopal commented May 19, 2026

Follow-up to #6693.

The framework build-backend switch has been split out into #7223.

What changed

  • Migrated dev/bootstrap.sh to install framework dependencies with uv sync instead of installing Poetry and running python -m poetry install; the default Python now follows the current framework baseline, 3.11.14.
  • Removed the legacy dev/bootstrap-uv.sh, dev/setup-defaults.sh, dev/venv-*.sh, and framework/dev/build-uv.sh wrappers/helpers so the uv-backed scripts are the single entry points.
  • Updated the devcontainer to install uv, run uv sync during post-create, and skip installing the taplo package into the venv because the Dockerfile already installs the working GitHub-sourced taplo binary globally.
  • Migrated framework release publish helpers from Poetry commands to uv version, uv build, and uv publish.
  • Updated framework contributor/dev docs, dev/README.md, and framework/uv.md so framework setup, build, docs, and development-version instructions describe uv instead of Poetry.

Scope

This PR removes Poetry from the framework setup, devcontainer, docs, and release-helper paths left after #6693. It does not switch the package build backend; that change is now in #7223.

Validation

  • bash -n dev/bootstrap.sh
  • bash -n .devcontainer/post-create.sh
  • bash -n framework/dev/build.sh
  • bash -n framework/dev/publish-nightly.sh
  • bash -n framework/dev/release/publish-wheel.sh
  • python -m json.tool .devcontainer/devcontainer.json
  • UV_CACHE_DIR=/private/tmp/flower-uv-cache-7202 uv lock --check --project framework
  • UV_CACHE_DIR=/private/tmp/flower-uv-cache-7202 uv run --project dev python -m devtool.check_pr_title 'ci(framework:skip): Replace framework Poetry setup with uv'

Copilot AI review requested due to automatic review settings May 19, 2026 13:23
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Flower framework Python package build configuration to use uv_build (PEP 517) instead of the Poetry build backend, while preserving the existing package layout (flwr under py/) and excluding *_test.py from build artifacts.

Changes:

  • Switched [build-system] from poetry-core to uv_build.
  • Migrated package layout configuration from [tool.poetry] to [tool.uv.build-backend] (module name/root).
  • Kept *_test.py excluded via source-exclude.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@tanertopal tanertopal changed the title ci(framework:skip): Replace Poetry build backend with uv ci(framework:skip): Replace framework Poetry setup with uv May 19, 2026
@tanertopal tanertopal changed the base branch from main to migrate-ci-to-uv May 19, 2026 14:29
@github-actions github-actions Bot added the Maintainer Used to determine what PRs (mainly) come from Flower maintainers. label May 19, 2026
Base automatically changed from migrate-ci-to-uv to main May 21, 2026 07:16
@tanertopal tanertopal marked this pull request as ready for review May 21, 2026 07:28
@tanertopal tanertopal enabled auto-merge (squash) May 21, 2026 11:13
panh99
panh99 previously approved these changes May 21, 2026
Comment thread framework/pyproject.toml Outdated
[build-system]
requires = ["poetry-core>=2.1.3"]
build-backend = "poetry.core.masonry.api"
requires = ["uv_build>=0.11.15,<0.12"]
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's no uv_build on PyPI, only uv-build

tanertopal and others added 3 commits May 22, 2026 21:28
…backend

* origin/main:
  feat(framework): Add token-file support to Task Executors (#7206)
  break(framework): Raise Python baseline to 3.11 and update CI/dev tooling (#7190)

# Conflicts:
#	dev/bootstrap-uv.sh
#	dev/setup-defaults.sh
#	dev/venv-create.sh
#	dev/venv-delete.sh
#	dev/venv-reset.sh
#	framework/AGENTS.md
#	framework/docs/source/contributor-how-to-set-up-a-virtual-env.rst
#	framework/docs/source/contributor-tutorial-get-started-as-a-contributor.rst
#	framework/uv.md
@tanertopal tanertopal merged commit 8b1ce64 into main May 23, 2026
114 of 115 checks passed
@tanertopal tanertopal deleted the codex/replace-framework-poetry-backend branch May 23, 2026 18:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Maintainer Used to determine what PRs (mainly) come from Flower maintainers.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants