Cleo 3.0 writeup
@Secrus arbeitet bereits daran.
Seit 30.3.2024.
Bewertung
Dieses Issue wurde noch nicht bewertet.
Beschreibung
Below is a list of changes, required bugfixes and planned features for the next version of Cleo, Cleo 3.0. The list is not finished, it might evolve, change and expand. It's, basically, a download of my plans and ideas for Cleo.
Cleo 3.0 writeup
Docs
- Rewrite docs from scratch
- user docs
- usage examples
New features
- new CLI parser
- introduce dynamic and static (user's choice) completions
- introduce Powershell completions
- introduce
TreeUI component (extract the implementation frompoetry showcommand) - replace the usage of
rapidfuzzwithdifflib(dependent on new parser semantics) - remove namespace commands in favor of subcommands registered on commands (dependent on new parser semantics)
- integration with
logging - add helper functions for text transformations (colors, underline etc)
Refactorings
- use
@property.getter/@property.setterinstead ofget_*/set_*methods - UI components should be behind proxy
UI()object instead of as methods onCommand - Commands should not need
Applicationreference - cleanup Windows support options into a separate module
helpandlistcommands replacement (should be handled by the new parser)- colors and ansi escape sequences should be properly handled along with FORCE_COLOR/NO_COLOR and terminal features detection
- strict API design (consider which methods/functions/classes need to be available and make stuff private/hidden, use
__all__) - simplify lazy command loading (still easy to register new commands for
poetryplugins)
Typing
- remove all (or as much as possible) usage of optional types and
Any - for types, all complex (more than 1 level deep) types should have a nice alias
To consider
- drop event handling (
cleo.events)
Misc
- "inbox-zero" on issue tracker (aka resolve all issues)
- test coverage in 90+% range
Best case scenario
This is a list of optional requirements that will not stop a release from happening if not completed
- make highlighter extendable (json highlighting etc)
- provide Protocols/hooks/base classes to easily modify or extend default behavior
- dev docs with deep dive into inner works of every part of code
"I want to help!"
First of all, thank you.
Second, if you want to tackle one of the issues mentioned here or an issue from the issue tracker, please comment under this issue what you want to take care of. That will allow us to avoid duplicating our work. When in doubt, feel free to reach out in issues or on our Discord channel
- Vorherrschende Sprache
- Python
- Sterne
- 1.4k
- Forks
- 108
- Ø Merge
- 15 Min.
- Gemergte PRs (30 T.)
- 1
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus python-poetry/cleo
-
question
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
python-poetry/cleo#471 · 2 Kommentare ·
-
feature
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
python-poetry/cleo#467 · 1 Reaktion ·
-
Poetry run doesn't work with --directory=Evtl. vergeben @DSeaStar hat das vor 84 Tagen übernommen. Offenbug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 45/100
python-poetry/cleo#434 · 1 Kommentar ·
-
feature
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
python-poetry/cleo#433 · 4 Kommentare ·
-
Formatter's `is_decorated` property is temporarily disabled during `remove_format` breaking concurrent threadsEvtl. vergeben @ShipItAndPray hat das vor 193 Tagen übernommen. Offenbug
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 40/100
python-poetry/cleo#423 · 9 Kommentare ·
Alle Issues in python-poetry/cleo
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
SpikeInterface/spikeinterface#4924 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 88/100
aws-samples/sample-per-model-bedrock#782 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug javascript
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
No-op PreToolUse:Bash hook (bash_hook.py) still registered synchronously; adds latency and can time out at 10 sEvtl. vergeben @alexgr-agent hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
alexgreensh/token-optimizer#313 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100