"Despite its popularity, Typer has some traits that I (and others) find less than ideal. Part of this stems from Typer's age, with its first release in late 2019, soon after Python 3.8's release. Because of this, most of its API was initially designed around assigning proxy default values to function parameters. This made the decorated command functions difficult to use outside of Typer."
"Free-threaded support now reached phase II, meaning it's no longer considered experimental. The implementation is now completed, meaning that the workarounds introduced in Python 3.13 to make code sound without the GIL are now gone, and the free-threaded implementation now uses the adaptive interpreter as the GIL enabled variant. These facts, plus additional optimizations make the performance penalty now way better, moving from a 35% penalty to a 5-10% difference."
Cyclopts is a CLI library that addresses thirteen shortcomings found in Typer by adopting direct type annotations instead of proxy default values. Typer's early design tied defaults to function parameters, which made decorated commands hard to reuse outside the CLI context. The availability of Annotated in Python 3.9 enables clearer, annotation-driven APIs that remove those proxy defaults. Python 3.14 advances the free-threaded Python variant to phase II and completes its implementation, eliminating previous workarounds for GIL-free execution. The free-threaded variant now uses the adaptive interpreter and reduces performance penalties from roughly 35% to about 5–10%, improving viability for web services.
Read at Pythonbytes
Unable to calculate read time
Collection
[
|
...
]