Skip to content

Declare minimum compatible majors for fastmcp and faststream #175

Description

@lesnik512

[project.optional-dependencies] pins a floor where one is known to matter —
litestar>=2.15, prometheus-fastapi-instrumentator>=8.0.1, prometheus-client>=0.20,
opentelemetry-instrumentation-asgi>=0.46b0 — but fastmcp and faststream are declared bare.
Both bootstrappers reach into framework internals that a major bump could move:
FastMcpBootstrapper registers a _TeardownProvider through add_provider()
(docs/adr/0001-fastmcp-teardown-via-provider-lifespan.md), and FastStreamBootstrapper mutates
broker.config.logger.params_storage and calls broker.ping(timeout=...).

lite-bootstrap is a library distributed to downstream services, so an unpinned major means a
breaking upstream release resolves into a user's environment and fails at their bootstrap, not in
our CI. Establish the lowest version each bootstrapper is actually tested against and declare it,
the way litestar>=2.15 already documents which two APIs forced that floor.

Revisit trigger: a fastmcp or faststream major release, or the first user report of a
bootstrap failing against a version this repo never tested.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions