Update v4 install instructions for the stable SDK pins

This commit is contained in:
Jeremiah Lowin 2026-07-27 15:09:50 -04:00
commit 5d5ec591f0
No known key found for this signature in database
3 changed files with 11 additions and 9 deletions

View file

@ -22,7 +22,7 @@ FastMCP v4.0 is an engine swap. Three forces drive the major version:
The migration merges to `main` and development continues there with subsequent PRs. Releases follow the SDK's own beta timeline:
- **`main` carries the beta pins.** While the SDK is on `mcp==2.0.0b1` / `mcp-types==2.0.0b1`, `main` cuts **pre-releases** (`4.0.0b1`, `4.0.0b2`, …). No stable PyPI release goes out until `mcp 2.0.0` reaches GA — at which point the pins swap to the stable SDK and `4.0.0` ships. The pin-swap is a tracked checklist item on the [Known Gaps](known-gaps.md) page.
- **`main` cuts pre-releases.** While the SDK was on exact beta pins, `main` cut the `4.0.0a*` alphas. When `mcp 2.0.0` reaches GA the pins move to stable ranges (`>=2.0.0,<3.0.0`) and the line continues through `4.0.0b1` before `4.0.0` ships — the stable SDK is what a beta needs, not a reason to skip straight to GA. The pin-swap is a tracked checklist item on the [Known Gaps](known-gaps.md) page.
- **`release/3.x` is the maintenance line.** A `release/3.x` branch is cut from pre-merge `main`. It stays on the SDK v1 line, receives upstream security patches, and serves users who cannot move to the SDK v2 beta yet.
### Release codenames

View file

@ -80,6 +80,6 @@ Separately, the [SDK delegation round two](feature-program.md#sdk-delegation-rou
The beta-to-stable transition is a small set of tracked steps:
- **Swap the pins.** When `mcp 2.0.0` reaches GA, change `mcp-types==2.0.0b1` (core) and the `mcp` pin (the `[mcp]` extra) in `fastmcp_slim/pyproject.toml` from the beta to the stable release, and cut `4.0.0` instead of another pre-release.
- **Swap the pins.** When `mcp 2.0.0` reaches GA, change the exact `mcp-types` pin (core) and the `mcp` pin (the `[mcp]` extra) in `fastmcp_slim/pyproject.toml` from the beta to a stable range (`>=2.0.0,<3.0.0`), then regenerate `uv.lock` and confirm the suite and conformance run green against the stable SDK. The published install snippet in the upgrade guide pins these too, so it has to change in the same commit — a `2.0.0b2` constraint does not satisfy `>=2.0.0` and would break the very resolution it is meant to enable. FastMCP still ships a beta on the stable SDK before `4.0.0`.
- **Re-run the xfail suite against the GA SDK.** Any strict xfail that starts passing means a gap closed — remove the marker and, where applicable, the corresponding shim.
- **Confirm `release/3.x`** is cut from pre-merge `main` and receiving upstream security patches for users who stay on the SDK v1 line.