cyclopts: Ein neues CLI-Framework für Python
(Update 2024-01-05)
cyclopts ist ein einfaches CLI-Framework, das auf type annotations basiert („so wie typer eigentlich sein sollte“, „cyclopts ist knapper, lesbarer und intuitiver zu benutzen“, kann z.B. auch Unions verwenden); es enthält auch eine Aufrufmöglichkeit für eine interaktive Shell.
Im Gegensatz zu typer benutzt es nicht Click unter Putz und kann sich deshalb von dessen
Besonderheiten befreien. Ob Kommandoargumente per Position oder Schlüsselwort (oder auch
alternativ beidem!) adressiert werden, leitet es von den Funktionsargumenten ab (wie z.B.
f(a, /, b, *, c); deshalb ggf. Argumentliste mit * beginnen!).
Choices sind besser implementiert (auch per Literal[…] möglich).
Union-Typen werden akzeptiert (und der Reihe nach geprüft).
Auch wenn nicht mehrere Subkommandos definiert sind, kann der Subkommandoname (Funktionsname)
optional angegeben werden. Helptexte können als Docstrings bereitgestellt werden.