Path to this page:
./
sysutils/bkt,
Subprocess caching utility
Branch: CURRENT,
Version: 0.8.1,
Package name: bkt-0.8.1,
Maintainer: pkgsrc-usersbkt (pronounced bucket) is a subprocess caching utility written in Rust,
inspired by bash-cache.
Wrapping expensive process invocations with bkt allows callers to reuse recent
invocations without complicating their application logic. This can be useful in
shell prompts, interactive applications such as fzf, and long-running programs
that poll other processes.
When bkt is passed a command it hasn't seen before (or recently) it executes
the command synchronously and caches its stdout, stderr, and exit code.
Calling bkt again with the same command reads the data from the cache and
outputs it as if the command had been run again.
Master sites:
Filesize: 36.394 KB
Version history: (Expand)
- (2024-09-30) Updated to version: bkt-0.8.1
- (2024-01-25) Updated to version: bkt-0.8.0
- (2023-08-29) Updated to version: bkt-0.7.1
- (2023-08-28) Updated to version: bkt-0.7.0
- (2023-04-13) Updated to version: bkt-0.6.1
- (2023-04-03) Updated to version: bkt-0.6.0
CVS history: (Expand)
2024-01-25 11:02:10 by pin | Files touched by this commit (3) | |
Log message:
sysutils/bkt: update to 0.8.0
What's Changed
- --ttl is now a required flag. Historically it arbitrarily defaulted to one
minute; to preserve this behavior you can set BKT_TTL=1m in the environment
that's executing bkt (#48 and #27)
- Swapped from Instant to SystemTime for TTL arithmetic and related operations
(#45)
- Scopes are now base-64 encoded to support scope names that don't happen to
be valid file names (#51)
- Improve error message on permission failures (#35)
API Changes
- CacheStatus::Hit(Instant) has been replaced with CacheStatus::Hit(SystemTime)
|
2023-08-29 08:31:50 by pin | Files touched by this commit (2) | |
Log message:
sysutils/bkt: update to 0.7.1
- Patch release to pick up the fix for #44 which was a regression
introduced in 0.7.0.
|
2023-08-28 10:18:51 by pin | Files touched by this commit (2) | |
Log message:
sysutils/bkt: update to 0.7.0
What's Changed
- stdout/stderr are now streamed as the subprocess is executing, rather than
output only once the subprocess completes (#43).
- NotFound errors during cleanup are now ignored (#42).
- Improved error handling for malformed executables (#37).
API Changes
- New methods Bkt::retrieve_streaming and Bkt::refresh_streaming have been
added for library users that want to stream output, however these methods
are subject to change and should be treated as experimental.
|
2023-04-13 20:07:05 by pin | Files touched by this commit (3) | |
Log message:
sysutils/bkt: update to 0.6.1
- Patch release adjusting how --help's output is wrapped.
|
2023-04-03 13:04:04 by pin | Files touched by this commit (3) | |
Log message:
sysutils/bkt: update to 0.6.0
What's Changed
- Support environment variables BKT_TTL, BKT_SCOPE, and BKT_CACHE_DIR as
alternatives for flags --ttl, --scope, and --cache-dir, respectively (#15)
- Added support for keying the cache off one or more files' last-modified time
via the --modtime flag (#10).
- --discard_failures is included in the cache key, meaning bkt -- foo and bkt
--discard_failures -- foo will be cached separately.
- Added CI test coverage of feature="debug" behavior.
- Fixed flaky tests that relied unnecessarily on how file modtimes change (#14)
API Changes
- Bkt::discard_failures() is now set on CommandDesc, and affects the cache key.
- Added a CommandState type, making CommandDesc safe to persist and pass
around. Environment details like the working directory and environment
variables are captured when the CommandState instance is constructed.
- Bkt::retrieve and Bkt::refresh now return more metadata about the cache state
(e.g. whether there was a cache hit or miss).
- Upgraded to Clap v4 (#25).
|
2022-04-06 11:55:37 by pin | Files touched by this commit (3) | |
Log message:
sysutils/bkt: update to 0.5.4
-Patch release to aid packaging for Debian (see #12).
No new functionality vs. 0.5.2
|
2022-03-14 11:18:08 by pin | Files touched by this commit (3) | |
Log message:
sysutils/bkt: update to 0.5.3
-Patch release to aid packaging for Debian (see #12).
No new functionality vs. 0.5.2.
|
2022-02-07 10:17:55 by pin | Files touched by this commit (2) | |
Log message:
sysutils/bkt: update to 0.5.2
-Handle (i.e. ignore) BrokenPipe errors, which indicate stdout/stderr were
closed without reading all output.
|