- 
                Notifications
    You must be signed in to change notification settings 
- Fork 54
[WIP][Experiment] zwe TS #4325
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: v3.x/staging
Are you sure you want to change the base?
[WIP][Experiment] zwe TS #4325
Conversation
…shell overhead in command processing Signed-off-by: 1000TurquoisePogs <[email protected]>
Signed-off-by: 1000TurquoisePogs <[email protected]>
Signed-off-by: 1000TurquoisePogs <[email protected]>
| build 7630 SUCCEEDED. | 
| Test workflow 6599 is started. | 
Signed-off-by: 1000TurquoisePogs <[email protected]>
| build 7633 SUCCEEDED. | 
| Test workflow 6602 is started. | 
Signed-off-by: 1000TurquoisePogs <[email protected]>
| build 7634 FAILED. | 
This PR is a PoC of having the majority of
zwerun in TS rather than shell.It affects operations such as
--help, being much faster. Basically every command is faster because a lot of shell stuff is skipped.This is mostly a 1-to-1 rewrite, but during the rewrite I found code that was doing things never implemented, so I took some liberties to make cleaner code.
It has several exclusions and likely needs more - when a non --help operation is done, a --config is needed. So, if an operation has no --config, this new code should not run and you should see the old code execute instead.
I've also tried to exclude commands that aren't written in TS yet.
The design has a limitation. quickjs cannot do conditional or dynamic imports, so you need to import every command, and that brings in the requirement to have a configuration file specified.
I am trying to work around this by giving a dummy config file to those commands that dont need it.
DO NOT MERGE. It is just a PoC.