PackageTrack
Sign in Get early access

cli_script

Write scripts that call subprocesses with the ease of shell scripting and the power of Dart.

1.0.0 12K downloads/mo #2669 most downloaded on pub.dev google/dart_cli_script

What this package is like to depend on

Last release 3 years ago

no release in 18 months

Release timing varies

gaps range from 1 weeks to 8 months

Nearly every release is documented

notes for 13 of 13 stable releases

Nothing withdrawn

no release was ever pulled

5 years old

13 releases · first in 2021

0 releases in the last 12 months

see the full history below

Release timeline

13 releases · May 2021 to Jul 2023
2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 13
  1. 1.0.0 06 Jul 2023
    Release notes

    This was always intended for public use, it was just left out
    accidentally.

    This also makes a stable 1.0.0 release.

    Open source →
    Release notes
    • Stable release.

    • Expose the args() function, which shell-escapes multiple arguments at once.

    • Update internal type annotations for compatibility with dart-lang/sdk#52801.

    Open source →
  2. 0.3.1 23 Feb 2023
    Release notes
    • Add Script.outputBytes, which works like Script.output but returns the raw bytes instead of a string representation.
    Open source →
  3. 0.3.0 19 Dec 2022
    Release notes
    • stream scripts can be interrupted, capturing scripts can't but their signal can be reacted to
    • xargs won't execute a callback on the last chunk
    • streams signal handlers no longer need to explicitly check for exit code
    Open source →
    Release notes
    • Add Script.kill() to send a ProcessSignal such as SIGKILL or SIGTERM to terminate a script or stream. Defaults to SIGTERM. Capturing functions like Script.capture or silenceUntilFailure can't terminate their callbacks but the ProcessSignal can be reacted to via their new onSignal handler.
    Open source →
  4. 0.2.6 19 Apr 2022
    Release notes

    This parameter allows callers to silence or buffer only a script's
    standard error and still handle its standard output.

    Open source →
    Release notes
    • Add a stderrOnly parameter to BufferedScript.capture() and silenceUntilFailure(). If this parameter is true, only the stderr from the callbacks will be buffered or silenced, and the stdout will be emitted normally.
    Open source →
  5. 0.2.5 12 Apr 2022
    Release notes

    Add support for associating spans with line streams (#40)

    Open source →
    Release notes
    • Add LineStreamExtensions.withSpans(), which adds SourceSpanWithContexts to a stream's lines for better error messaging and debugging.

    • Add readWithSpans(), which adds SourceSpanWithContexts to a file's lines for better error messaging and debugging.

    • Add LineAndSpanStreamExtensions, which provides various extension methods that preserve source spans.

    Open source →
  6. 0.2.4 17 Feb 2022
    Release notes

    Add a silenceUntilFailure() function (#39)

    Open source →
    Release notes
    • Add a silenceUntilFailure() function that suppresses output for a block of code until it emits an error.
    Open source →
  7. 0.2.3 17 Aug 2021
    Release notes

    Co-authored-by: Jennifer Thakar [email protected]

    Open source →
    Release notes
    • Add an onlyMatching flag to grep() which prints the sections of input lines that match the given regular expression.

    • Add a teeToStderr transformer and extension method on Stream<List<String>>. This passes a stream to stderr without modifying it, which is useful for debugging.

    • Add a Script.mapLines constructor that returns a script that maps stdin lines according to a String Function(String).

    • Add support for passing a String Function(String) to Script.pipeline and Script.operator | to map stdin lines.

    • Fold stack frames for a few more packages used internally.

    Open source →
  8. 0.2.3+1 27 Aug 2021
    Release notes

    Properly respect onlyMatching in the top-level grep() method (#35)

    Open source →
    Release notes
    • Properly respect onlyMatching in the top-level grep() method.
    Open source →
  9. 0.2.3+2 25 Jan 2022
    Release notes

    Closes #11

    Open source →
    Release notes
    • Documentation improvements only.
    Open source →
  10. 0.2.2 26 Jul 2021
    Release notes

    This buffers output from a Script until it's explicitly released,
    making it easier to run multiple script in parallel without having
    their outputs collide with one another.

    Open source →
    Release notes
    • Add a BufferedScript class that buffers output from a Script until it's explicitly released, making it easier to run multiple script in parallel without having their outputs collide with one another.

    • If the same capture() block both calls print() and writes to currentStdout, ensure that the order of prints is preserved.

    • If the same capture() block writes to both currentStdout and currentStderr, ensure that the relative order of those writes is preserved when collected with combineOutput().

    Open source →
  11. 0.2.1 14 Jun 2021
    Release notes

    Add human-readable toStrings to StreamTransformers (#26)

    Open source →
    Release notes
    • Give the stream transformers exposed by this package human-readable toString()s.
    Open source →
  12. 0.2.0 09 Jun 2021
    Release notes
    • Add a debug option to wrapMain() to print extra diagnostic information.

    • Add a runInShell argument for subprocesses.

    • Accept Iterable<String> instead of List<String> for subprocess arguments.

    • Use 257 rather than 256 as the sentinel value for ScriptExceptions caused by Dart exceptions.

    • Fix a bug where Dart exceptions could cause the script to exit before their debug information was printed to stderr.

    Open source →
  13. 0.1.0 25 May 2021
    Release notes
    • Initial release.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive