What's Changed
[v2.0.0]
Added
- New
antidote snapshotcommand lets you save, restore, and list point-in-time snapshots of your plugin stateantidote snapshot savewrites a snapshot file capturing the exact commit SHA of every cloned bundleantidote snapshot restorerestores your bundles to a previous state (uses the most recent snapshot if no file is given)antidote snapshot removeremoves snapshot files (interactive multi-select withfzfif available)antidote snapshot listshows all available snapshots
- Snapshots are saved automatically during
antidote update(static mode only) - To disable automatic snapshotting during updates, set this zstyle in your config (eg: ~/.config/antidote/config.zsh):
zstyle ':antidote:snapshot:automatic' enabled no - If
fzfis installed,antidote snapshot restoregives you an interactive picker with a preview of each snapshot - Snapshot storage location and rolling history limit are configurable via
zstyle - New
pin:annotation lets you lock a bundle to a specific commit SHA (full 40-character SHA required)- Example:
zsh-users/zsh-autosuggestions pin:85919cd1ffa7d2d5412f6d3fe437ebdbeeec4fc5
- Example:
- Pinned bundles are skipped during
antidote updateand are recorded as commit SHAs in the snapshot antidote update --dry-run/-n: check for available updates without touching anythingantidote listnow shows URLs by defaultantidote list --long/-l: show verbose key-value info per bundle (repo, path, URL, SHA, pin status)antidote list --dirs/-d: show bundle directory pathsantidote list --jsonl/-j: machine-readable JSONL output (includes pin status when pinned)- antidote can now read an optional config
~/.config/antidote/config.zshon startup (respects$XDG_CONFIG_HOME) - A template config file is included showing all available zstyles (see
templates/config.zsh) - New
path-stylezstyle controls how bundle directories are named on disk:full(default):$ANTIDOTE_HOME/github.com/owner/reposhort:$ANTIDOTE_HOME/owner/repoescaped:$ANTIDOTE_HOME/https-COLON--SLASH--SLASH-github.com-SLASH-owner-SLASH-repo(legacy antibody style)
zstyle ':antidote:bundle' path-style short - New git zstyles let you clone from non-GitHub hosts or default to SSH for clones:
zstyle ':antidote:git' site gitlab.com zstyle ':antidote:git' protocol ssh
- Interactive selection uses
fzfwhen available - Color output now respects
NO_COLOR,CLICOLOR_FORCE, and terminal capabilities - Dockerfiles included for reproducible test environments
- Tons of new unit tests to verify correctness and provide stability
Changed
- The codebase has been consolidated from many small functions into a single self-contained
antidote.zsh - Internal dispatching has been rewritten and streamlined
antidote listflags have been redesigned and many removed and replaced by--long,--dirs, and--jsonl
Removed
- Antibody compatibility mode has been removed
antidote listold flags (--short,--short-name,--url,--sha,--short-sha,--pinned) have been removed in favor of--long
Notes
- Pin any repos you want to keep on a certain release. They will be skipped when running
antidote update. Useantidote list --longto see current SHAs, then addpin:<SHA>annotations to your .zsh_plugins.txt.
Full Changelog: v1.10.3...v2.0.0