pyroscope-io is abi3-only, unmaintained, ships no free-threaded wheels and has no pure-Python
fallback, so lite-bootstrap[pyroscope] — and every *-all extra that rolls it up (free-all,
fastapi-all, litestar-all, faststream-all, fastmcp-all) — cannot install on free-threaded CPython (3.14t is the leg CI runs).
pyroscope is excluded from the free-threaded CI leg in .github/workflows/_checks.yml for this
reason.
Nothing is actionable from this repository: the instrument is already behind
import_checker.is_pyroscope_installed, so a free-threaded service simply composes its extras
without it. This is tracked so the exclusion is not mistaken for an oversight.
Revisit trigger: pyroscope-io ships free-threaded wheels, or a maintained ft-capable
replacement appears. Then add pyroscope to the ft leg's extras, drop it from the exclusion note in
the _checks.yml step name, and drop it from the README's list of extras with no ft wheels.
pyroscope-iois abi3-only, unmaintained, ships no free-threaded wheels and has no pure-Pythonfallback, so
lite-bootstrap[pyroscope]— and every*-allextra that rolls it up (free-all,fastapi-all,litestar-all,faststream-all,fastmcp-all) — cannot install on free-threaded CPython (3.14t is the leg CI runs).pyroscopeis excluded from the free-threaded CI leg in.github/workflows/_checks.ymlfor thisreason.
Nothing is actionable from this repository: the instrument is already behind
import_checker.is_pyroscope_installed, so a free-threaded service simply composes its extraswithout it. This is tracked so the exclusion is not mistaken for an oversight.
Revisit trigger:
pyroscope-ioships free-threaded wheels, or a maintained ft-capablereplacement appears. Then add
pyroscopeto the ft leg's extras, drop it from the exclusion note inthe
_checks.ymlstep name, and drop it from the README's list of extras with no ft wheels.