github z-shell/zi v2.0.0
Zi v2.0.0

4 hours ago

Zi v2.0.0 is the breaking milestone release from the reviewed next to
main promotion in #467.

Breaking change: message output

The message-output contract was rebuilt in
#457:

  • safe automatic formatting is now the default
  • normal messages end with a line feed unless -n is requested
  • +zi-progress owns carriage-return progress rendering
  • dynamic or raw text should use literal mode and --
  • invalid options and descriptors return status 2
  • contextual recognition is opt-in

Custom callers that depend on exact bytes, newlines, progress rendering, or
file-descriptor behavior should follow the updated
message API guide.

Security

  • Stage archive extraction and reject traversal and unsafe symlink members
    (#441).
  • Reject unsafe symlinks in GitHub directory snippets
    (#439).

Features and reliability

  • Add transactional sparse Git support for GitHub /trunk/ directory
    snippets while retaining SVN for other hosts
    (#443).
  • Make parallel updates deterministic
    (#453).
  • Persist Plugin Standard callbacks by effective plugin ID
    (#454).
  • Track and remove plugin-owned hook callbacks
    (#459).
  • Preserve system MANPATH entries
    (#460).
  • Stop the scheduler timer when no work remains
    (#466).

Validation

The promotion passed 135 pull-request checks and all post-merge main
workflows. Coverage included the full Zsh syntax and behavior matrix, exact
candidate clean startup, ZD compatibility and five integration suites, Trunk,
CodeQL, public-contract impact, and downstream consumer review.

Full comparison: v1.1.0...v2.0.0

Don't miss a new zi release

NewReleases is sending notifications on new releases.