Skip to content

fix(ci): version flet-mcp like the other packages on publish#6633

Merged
FeodorFitsner merged 1 commit into
flet-0.86from
fix-flet-mcp-version
Jul 2, 2026
Merged

fix(ci): version flet-mcp like the other packages on publish#6633
FeodorFitsner merged 1 commit into
flet-0.86from
fix-flet-mcp-version

Conversation

@FeodorFitsner

@FeodorFitsner FeodorFitsner commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Problem

The v0.86.0.dev0 publish failed (run) with:

error: Failed to publish dist/flet_mcp-0.1.0-py3-none-any.whl
  Caused by: 400 Bad Request. Server says: 400 File already exists ('flet_mcp-0.1.0-py3-none-any.whl' ...)

Every other package published at the release version 0.86.0.dev0; only flet_mcp went up as 0.1.0 (its static pyproject.toml version), which was already on PyPI from an earlier run — so uv publish 400s and, under bash -eo pipefail, aborts the whole publish job.

Root cause

Extension wheels get their version stamped at build time — build_flet_extensions runs patch_toml_versions "packages/<pkg>/pyproject.toml" "$PYPI_VER" before uv build for each package. flet-mcp has its own build job (build_flet_mcp, because it needs the flet mcp build data step), and that job only calls patch_python_package_versions — which stamps just the core flet / flet-cli / flet-desktop / flet-web packages. So flet-mcp was never stamped and built at 0.1.0.

Fix

Add the same per-package stamp to the build_flet_mcp job so flet-mcp ships at the unified release version like every other package:

patch_toml_versions "packages/flet-mcp/pyproject.toml" "$PYPI_VER"

Notes

  • flet-mcp 0.1.0 already exists on PyPI and can't be reused, but that's harmless — future releases now publish flet-mcp at the release version (0.86.0.dev0, 0.86.0, …), which supersedes it.
  • The other 0.86.0.dev0 wheels from the failed run were all uploaded successfully before the abort, so this only affects future publishes.

Based on / targets flet-0.86.

Summary by Sourcery

Build:

  • Update the CI build job for flet-mcp to patch its pyproject.toml version with the release PYPI_VER before building.

The `build_flet_mcp` job built the wheel at flet-mcp's static pyproject
version (0.1.0) instead of the release version, because it only ran
`patch_python_package_versions` (which stamps just the core flet/flet-cli/
flet-desktop/flet-web packages) and skipped the per-extension
`patch_toml_versions` stamp that `build_flet_extensions` applies to every
other package. So every publish re-attempted `flet_mcp-0.1.0`, which already
exists on PyPI, and `uv publish` aborted the whole job with `400 File already
exists`.

Stamp flet-mcp's pyproject with $PYPI_VER before `uv build`, exactly as the
extensions job does, so flet-mcp ships at the unified release version.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

We've reviewed this pull request using the Sourcery rules engine

@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying flet-website-v2 with  Cloudflare Pages  Cloudflare Pages

Latest commit: e797ef7
Status: ✅  Deploy successful!
Preview URL: https://7eadb9c3.flet-website-v2.pages.dev
Branch Preview URL: https://fix-flet-mcp-version.flet-website-v2.pages.dev

View logs

@FeodorFitsner FeodorFitsner merged commit d1e8c03 into flet-0.86 Jul 2, 2026
36 of 49 checks passed
@FeodorFitsner FeodorFitsner deleted the fix-flet-mcp-version branch July 2, 2026 19:04
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.

1 participant