Vue d'ensemble
Typer 0.7, publié le 5 novembre 2022, ajoute le support de l'intégration Rich et améliore la gestion des types.
Fonctionnalités principales
Intégration Rich
Typer utilise Rich pour l'affichage de l'aide, les messages d'erreur et les invites, offrant un rendu coloré et structuré.
python
import typer
from rich import print
app = typer.Typer(rich_markup_mode='rich')
@app.command()
def process(
name: str = typer.Argument(help='[bold]Nom[/] du fichier'),
):
"""Traite un [green]fichier[/green]."""
print(f'[bold green]Traitement de {name}...[/]')
Types améliorés
Meilleur support des types Python modernes : Enum, Path, types optionnels et valeurs par défaut.
python
from enum import Enum
from pathlib import Path
import typer
class Format(str, Enum):
json = 'json'
csv = 'csv'
@typer.run
def convert(input: Path, fmt: Format = Format.json):
typer.echo(f'{input} -> {fmt.value}')
