Skip to content

Releases: vrypan/stash

0.9.0

17 Apr 14:53
bd23c10

Choose a tag to compare

Release Notes

  • Color attribute keys in stash attr output (cyan when stdout is a
    terminal; disable with --color false).
  • Add attribute value listing, so attribute-oriented workflows can inspect
    the distinct values stored for a given key.
  • Performance improvements in listing hot paths:
    • Replace sort + reverse with a single descending sort in
      list_entry_ids.
    • Eliminate intermediate Vec allocation when building the inline
      attribute string in ls -A.
    • write_list_cache now takes ownership of items to avoid cloning
      the full entry list on cache writes.
    • all_attr_keys computes the key index from already-loaded items
      instead of re-reading the cache file.
  • Add in-process Criterion benchmarks (BenchmarkLsLib1000,
    BenchmarkLsLibAll1000, BenchmarkLsJsonLib1000) for reliable
    regression detection without process-spawn variance.
  • Improve stash rm confirmation output:
    • show entry previews before deletion
    • reuse the long-listing rendering for a more informative confirmation
  • Expand stash-switching workflows:
    • add chstash.sh helper for switching between named stashes
    • add pocket-based stash selection (STASH_POCKET)
    • update chstash to use pockets in the selector flow

Install stash-cli 0.9.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.9.0/stash-cli-installer.sh | sh

Download stash-cli 0.9.0

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.8.1

14 Apr 17:59
bed22b8

Choose a tag to compare

Release Notes

  • Extend stash cat selection:
    • allow multiple refs in one call
    • add -a/--attr filtering with name and name=value
    • add -r/--reverse to reverse the output order
  • Extend stash ls -a/--attr filtering:
    • allow -a name=value for exact-value filtering
    • allow -a ++name=value as shorthand for -a name=value -a +name
  • Update the ls help text and docs so ++name and ++name=value are
    described as shorthand aliases.

Install stash-cli 0.8.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.8.1/stash-cli-installer.sh | sh

Download stash-cli 0.8.1

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.8.0

14 Apr 05:08
37390f9

Choose a tag to compare

Release Notes

Breaking UI change: The meaning of stash ls -a key and stash ls -a +key
has been swapped. Now -a key means "filter where key exists" and
-a +key means "show key (value) where set".

  • Remove the in-process stash completion subcommand in favor of the
    standalone stash-completion helper binary.
  • Refine stash ls -a/--attr selection:
    • -a name filters on the attribute
    • -a +name shows the attribute column
    • -a ++name filters and shows in one argument
  • Add -a/--attr to stash cat
  • Add -r/--reverse to stash cat.
  • Update the README, reference docs, and demos to match the current ls
    attribute behavior.

Install stash-cli 0.8.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.8.0/stash-cli-installer.sh | sh

Download stash-cli 0.8.0

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.7.1

13 Apr 11:48
1f0f09c

Choose a tag to compare

  • Reduce the binary size by about 40%.
  • Improve stash cat throughput by using a 64KB BufReader.

Install stash-cli 0.7.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.7.1/stash-cli-installer.sh | sh

Download stash-cli 0.7.1

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.7.0

13 Apr 09:12
cd62ace

Choose a tag to compare

Release Notes

stash log has been removed in favor of stash ls.

  • stash log removed.
  • stash ls is now the single listing command.
  • Expand stash ls output modes:
    • add --json with rich per-entry output
    • add --attrs=list|count|flag
    • add --headers for labeled tabular output
    • make -l expand to --date --size --attrs=flag --preview
    • color explicit -a columns and inline -A output in cyan
  • Improve listing and store hot paths:
    • reduce allocations in ls
    • reuse output buffers in tabular rendering
    • tighten cache validation and id resolution
    • add and tune Criterion benchmarks for ls, attr, and push
  • Add stash rm --after to remove entries newer than a referenced entry.
  • Migrate the internal list cache serialization from bincode to rkyv.
  • Update signal-hook to 0.4.4.
  • Keep empty -A/--attrs=list cells aligned across stash ls rows.
  • Refine stash ls -a/--attr selection:
    • -a name shows the attribute column
    • -a +name filters on the attribute
    • -a ++name filters and shows in one argument
  • Improve the stash-fzf.zsh helper:
    • use a richer multiline ref picker
    • fix picker cancel and insertion behavior
    • add fzf-powered attribute completion from stash attrs --count
    • support -a, -a +, and -a ++ attr completion prefixes

Install stash-cli 0.7.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.7.0/stash-cli-installer.sh | sh

Download stash-cli 0.7.0

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.6.0

10 Apr 08:47
ab33e60

Choose a tag to compare

Release Notes

This is a major code refactor with small perf improvements and significant
code quality improvements.

  • Add stash attrs for listing attribute keys across the stash, with optional
    per-key counts.
  • Improve stash-rg, the helper script for searching through stashed
    attributes and data.
  • Refactor the Rust codebase into smaller modules:
    • split the old cli.rs monolith into per-command modules under cmd/
    • split store.rs into a store/ module
    • extract shared display/rendering code into a display module
  • Simplify and tighten the store/cache implementation:
    • store Meta directly in the list cache
    • move MetaSelection into store-related code
    • keep newest() on the cache-based path
  • Improve performance in several hot paths:
    • avoid extra item passes in ls --preview
    • fix N+1 cache reads in stash attrs
    • reduce allocations in preview and ANSI-trimming helpers
    • speed up attr parsing and ULID encoding
  • General internal cleanup and deduplication:
    • deduplicate the push/tee read loop
    • consolidate UTC date conversion helpers
    • simplify path handling and attribute-selection internals

Install stash-cli 0.6.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.6.0/stash-cli-installer.sh | sh

Download stash-cli 0.6.0

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.5.7

08 Apr 10:04
78efacd

Choose a tag to compare

Release Notes

  • Escape control characters like \n in plain-text attribute output for
    stash attr, stash ls, and stash log.
  • Add stash-rg, a helper script for searching across stashed attributes and
    data with rg.
  • Add rstash, a helper script for pushing stdin or files to a remote stash
    host over ssh.

Install stash-cli 0.5.7

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.5.7/stash-cli-installer.sh | sh

Download stash-cli 0.5.7

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.5.6

06 Apr 20:55
8c833c0

Choose a tag to compare

Release Notes

  • Make --print require an explicit value to avoid ambiguity with
    stash push [file].
  • Save captured input on Ctrl-C in both stash tee and stdin-driven
    stash when --save-on-error=true applies.
  • Align interruption handling more closely with tee:
    • SIGINT returns 130
    • SIGTERM returns 143
    • non-signal partial saves return 1
  • Treat downstream broken pipes as successful exits while still keeping any
    captured output.
  • Keep partial=true only for input interruption/failure, not downstream
    output closure.

Install stash-cli 0.5.6

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.5.6/stash-cli-installer.sh | sh

Download stash-cli 0.5.6

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.5.5

05 Apr 22:22
d60713f

Choose a tag to compare

Release Notes

  • Replace the earlier quiet flag with --print=stdout|stderr|null for
    stash, stash push, and stash tee, with numeric aliases 1, 2,
    and 0.
  • Rename --partial to --save-on-error, default it to true, and keep
    downstream broken pipes out of the saved-on-error path.
  • Treat broken pipes as normal exits in pipeline use.

Install stash-cli 0.5.5

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.5.5/stash-cli-installer.sh | sh

Download stash-cli 0.5.5

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.5.4

05 Apr 20:28
b94778d

Choose a tag to compare

Release Notes

  • Add smart default behavior for bare stash:
    • in the middle of a pipeline, it behaves like stash tee
    • otherwise, it behaves like stash push
  • Simplify stash attr syntax:
    • stash attr <ref> lists all attributes
    • stash attr <ref> key... reads selected attributes
    • stash attr <ref> key=value... writes attributes
    • stash attr <ref> --unset key... removes attributes
  • Add stash rm -a for attribute-based entry removal with confirmation.
  • Allow stash rm to remove multiple refs in one command.
  • Add --quiet for stash, stash push, and stash tee to suppress the
    generated entry ID.
  • Refine ls and log attribute flags:
    • -a/--attr selects attribute filters
    • -A/--attrs shows all attributes
  • Add cargo install stash-cli to the installation docs.
  • Use stash-cli-* release asset names for the custom Homebrew formula updater.

Install stash-cli 0.5.4

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/vrypan/stash/releases/download/v0.5.4/stash-cli-installer.sh | sh

Download stash-cli 0.5.4

File Platform Checksum
stash-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
stash-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
stash-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
stash-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum