Skip to content

uv install/upgrade silently resolves to 0.22.1 — 0.23.2 pins a prerelease (fastmcp==4.0.0b1) #1338

Description

@nellins

Summary

uv tool install basic-memory / uv tool upgrade basic-memory silently resolves to 0.22.1 instead of the latest 0.23.2, because 0.23.2 pins a prerelease dependency and uv excludes prereleases by default.

Repro

$ uv tool upgrade basic-memory
...
Installed 2 executables: basic-memory, bm
$ bm --version
Basic Memory version: 0.22.1        # expected 0.23.2

Asking for it explicitly explains why:

$ uv tool install "basic-memory==0.23.2" --force
  × No solution found when resolving dependencies:
  ╰─▶ Because there is no version of fastmcp==4.0.0b1 and basic-memory==0.23.2
      depends on fastmcp==4.0.0b1, we can conclude that basic-memory==0.23.2
      cannot be used.

      hint: `fastmcp` was requested with a pre-release marker (e.g.,
      fastmcp==4.0.0b1), but pre-releases weren't enabled (try:
      `--prerelease=allow`)

Works only with the extra flag:

$ uv tool install "basic-memory==0.23.2" --force --prerelease=allow
$ bm --version
Basic Memory version: 0.23.2

Why this matters beyond one machine

  1. The upgrade path fails silently. No error, no warning — the user believes they're current and is a release behind. I only noticed because the version didn't match what the docs described.
  2. The harness plugins are affected. Both the OpenClaw and Hermes plugins auto-install the CLI via uv tool install basic-memory on first start. They'll install 0.22.1 while the docs document v0.23 behavior.
  3. Docs assume v0.23. Anyone following current docs against a silently-0.22.1 install may hit behavior mismatches.

Suggested fix

Depend on a stable fastmcp release rather than 4.0.0b1, so the default resolver path works. Failing that, document the --prerelease=allow requirement prominently in the install instructions and in the harness plugin pages.

Environment

macOS, uv-managed tool install, Python 3.13.1. Observed 2026-08-26 upgrading 0.15.0 → latest.


Filed on behalf of Drew.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions