Here is a plan of what I'm planning to do for the next v8 release. **Feel free to join, by picking one on the objectives.** ### v8 - [x] Set `$.verbose = false` by default ∅ - [x] `stderr` should be echoed by default. - [x] `stdout` should not be printed by default. - [x] Refactor $ to support `const $$ = $({...})` syntax. - [x] **AbortController** support by **$**. - [ ] ~~Split **$** into a separate package with minimum dependencies. (probably)~~ - [x] Add `zx/core`. - [x] Remove `ps-tree` dependency. - [ ] ~~(probably) Deprecate `within()`.~~ - [ ] Refactor `process.cwd()` calls - [x] Add trim to `ProcessOutput::valueOf(): string` - [x] Add `$.sync` API. - [x] Use **bash** by default on Windows (and fail if not found, with ZX_SHELL env config). - [x] Use **node18** by default (but allow zx to run on node16 too). - [x] Remove **node-fetch** dependency (node18 already has fetch, this allows to drop DOM lib in ts). - [x] ~~Add some CI tests for **deno**.~~ - [x] Bundle deps. ### Future - [ ] ~~Better support for **multiline** commands.~~ - [ ] Better support for **dotenv**. - [ ] ~~`$.log` refactoring (probably)~~ - [ ] ~~Remove `fs-extra` dependency (probably)~~ - [ ] Add [`exit()`](https://www.npmjs.com/package/exit) - [ ] Add `pool()` - [ ] Add `progressBar()` - [ ] Improve `retry()` - [ ] Improve `--install` - [ ] Add API for plugins* Note: Before submitting PR, discuss implementation and API. Note: * - complex task.
Here is a plan of what I'm planning to do for the next v8 release. Feel free to join, by picking one on the objectives.
v8
$.verbose = falseby default ∅stderrshould be echoed by default.stdoutshould not be printed by default.const $$ = $({...})syntax.Split $ into a separate package with minimum dependencies. (probably)zx/core.ps-treedependency.(probably) Deprecatewithin().process.cwd()callsProcessOutput::valueOf(): string$.syncAPI.Add some CI tests for deno.Future
Better support for multiline commands.$.logrefactoring (probably)Removefs-extradependency (probably)exit()pool()progressBar()retry()--installNote: Before submitting PR, discuss implementation and API.
Note: * - complex task.