Skip to content

Plan for v8 #589

@antonmedv

Description

@antonmedv

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

  • Set $.verbose = false by default ∅
    • stderr should be echoed by default.
    • stdout should not be printed by default.
  • Refactor $ to support const $$ = $({...}) syntax.
    • AbortController support by $.
    • Split $ into a separate package with minimum dependencies. (probably)
      • Add zx/core.
    • Remove ps-tree dependency.
    • (probably) Deprecate within().
      • Refactor process.cwd() calls
    • Add trim to ProcessOutput::valueOf(): string
    • Add $.sync API.
  • Use bash by default on Windows (and fail if not found, with ZX_SHELL env config).
  • Use node18 by default (but allow zx to run on node16 too).
    • Remove node-fetch dependency (node18 already has fetch, this allows to drop DOM lib in ts).
  • Add some CI tests for deno.
  • Bundle deps.

Future

  • Better support for multiline commands.
  • Better support for dotenv.
  • $.log refactoring (probably)
  • Remove fs-extra dependency (probably)
  • Add exit()
  • Add pool()
  • Add progressBar()
  • Improve retry()
  • Improve --install
  • Add API for plugins*

Note: Before submitting PR, discuss implementation and API.
Note: * - complex task.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions