Skip to content

Zi v2.0.0

Latest

Choose a tag to compare

@ss-o ss-o released this 31 Aug 05:10
Immutable release. Only release title and notes can be modified.
v2.0.0
38c63c2

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