{"id":5735,"library":"typer-slim","title":"Typer (Slim)","description":"Typer-slim was initially conceived as a minimal version of the Typer library for building CLI applications, omitting dependencies like `rich` and `shellingham`. However, since version 0.22.0, `typer-slim` merely installs the full `typer` package, rendering its 'slim' purpose obsolete. As of version 0.24.1, `typer-slim` has been officially abandoned, with no further updates or releases planned. Users are strongly advised to install `typer` directly instead.","status":"abandoned","version":"0.24.0","language":"en","source_language":"en","source_url":"https://github.com/fastapi/typer","tags":["cli","command-line","deprecated","abandoned","typer","fastapi"],"install":[{"cmd":"pip install typer-slim","lang":"bash","label":"Install Typer-Slim (Not Recommended)"},{"cmd":"pip install typer","lang":"bash","label":"Install Typer (Recommended Alternative)"}],"dependencies":[{"reason":"Since 0.22.0, typer-slim is a shallow wrapper around the main typer package.","package":"typer"},{"reason":"Always required by typer (and thus typer-slim since 0.22.0) for rich formatting.","package":"rich"},{"reason":"Always required by typer (and thus typer-slim since 0.22.0) for shell auto-completion.","package":"shellingham"}],"imports":[{"symbol":"Typer","correct":"from typer import Typer"}],"quickstart":{"code":"import typer\n\napp = typer.Typer()\n\n@app.command()\ndef hello(name: str = 'World'):\n    \"\"\"Say hello to NAME.\"\"\"\n    typer.echo(f\"Hello {name}!\")\n\nif __name__ == '__main__':\n    app()","lang":"python","description":"This quickstart demonstrates a basic Typer CLI application. To run, save as `main.py` and execute `python main.py hello --name Alice` or `python main.py hello`. While this works with `typer-slim`, directly installing and using `typer` is recommended."},"warnings":[{"fix":"Uninstall `typer-slim` and install `typer` directly: `pip uninstall typer-slim && pip install typer`.","message":"`typer-slim` is officially abandoned. No further versions or updates will be released. Users should migrate all dependencies to the main `typer` package.","severity":"breaking","affected_versions":">=0.24.1"},{"fix":"If you wanted a 'slim' version without `rich` and `shellingham`, this package no longer provides that. Migrate to `typer` and consider disabling Rich globally with `TYPER_USE_RICH=0` if desired.","message":"Since version 0.22.0, `typer-slim` became a direct wrapper around the full `typer` package, negating its original purpose of being 'slim' by implicitly installing `rich` and `shellingham`.","severity":"breaking","affected_versions":">=0.22.0"},{"fix":"Always install only `typer` or `typer-slim`, never both. Given the abandonment of `typer-slim`, stick to `typer`.","message":"Installing both `typer` and `typer-slim` in the same environment can lead to package conflicts, file overwrites, and corrupted installations, making one or both packages unusable.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Ensure your project uses Python 3.10 or newer. For older Python versions, you must pin to an earlier `typer-slim` release (e.g., `<0.21.0` for Python 3.8, or `<0.24.0` for Python 3.9).","message":"Support for Python 3.9 was dropped in version 0.24.0, and Python 3.8 was dropped in version 0.21.0.","severity":"breaking","affected_versions":"0.21.0, 0.24.0"},{"fix":"To re-enable locals in Rich tracebacks, you might need to configure Rich or Typer explicitly, or set the environment variable `TYPER_STANDARD_TRACEBACK=1` for standard Python tracebacks.","message":"Starting with version 0.23.0, the default behavior for Rich tracebacks changed to not show local variables, which can make debugging more difficult in some cases.","severity":"gotcha","affected_versions":">=0.23.0"}],"env_vars":null,"last_verified":"2026-03-28T00:00:00.000Z","next_check":"2026-06-28T00:00:00.000Z"}