Releases: tbidne/shrun
Releases · tbidne/shrun
shrun 0.9.1
shrun 0.9.1
Release Notes
Click to expand changelog
Changed
- Updated blessed GHC to 9.8.2.
Added
- Add
--command-log-read-strategy (command-log.read-strategy)
option that
allows for line buffering. - Add
--command-log-buffer-length
and--command-log-buffer-timeout
options
for use with--command-log-read-strategy block-line-buffer
. - Added GHC 9.10 support.
Fixed
- Line truncation
detect
option now subtracts one, so terminals do not add
an extra newline. - More
HasCallStack
annotations for better callstacks in case something goes
wrong. - Increase default
--command-log-read-size
to16 kb
to better prevent
command log splitting. - Improved formatting. Leading/trailing whitespace is no longer stripped from
file logs, so original formatting is preserved. - Simplify reading final error message.
- Hide
--version
from primary usage section.
Release Binaries
sha256 checksums
λ. sha256sum ./shrun_0.9.1-*
c59b64d76ce50d6555e2668706c9b0d7c2e473cd866dba9af90d2ede8e826c44 ./shrun_0.9.1-arm64-macos_14.5-darwin.xz
18bc28ecb8893c81564ee1a455cf33d2032983b20fcf5cab71ea8ec21b1a8e9a ./shrun_0.9.1-x86_64-linux-static.xz
f8a26631de6bd40cdf3818bee65e50ad3640a90c1bb607d4fabd8a1f58f14e65 ./shrun_0.9.1-x86_64-linux-ubuntu_22.04.xz
116a64a063e0a3b16289a458f4339b32916c3d92f5c99ac3779bc4ce2a112d6d ./shrun_0.9.1-x86_64-macos_12.7.5-darwin.xz
73f3c4cf44cf6999743047112a7cae5f076395d2648e5b299042f1d310d5baef ./shrun_0.9.1-x86_64-macos_13.6.7-darwin.xz
Full Changelog: 0.9...0.9.1
shrun 0.9
shrun 0.9
Release Notes
Click to expand changelog
Changed
--notify-action command
(notify.action = "command"
) no longer implies
--notify-action final
. There is a new option--notify-action all
for
that.--file-log-size-mode
now defaults towarn 50 mb
(i.e. warn when the log
file exceeds 50 mb). There is a new optionnothing
to disable this.- Extensive CLI/toml option changes/renaming:
--key-hide
:- CLI:
--common-log-key-hide
. - Toml:
common-log.key-hide
. -k
removed.
- CLI:
--timer-format
:- CLI:
--console-log-timer-format
. - Toml:
console-log.timer-format
.
- CLI:
--poll-interval
:- CLI:
--command-log-poll-interval
. - Toml:
command-log.poll-interval
. -p
removed.
- CLI:
--cmd-log
:- CLI:
--console-log-command
. - Toml:
console-log.command
. -l
removed.
- CLI:
--cmd-name-trunc
:- CLI:
--console-log-command-name-trunc
. - Toml:
console-log.command-name-trunc
. -x
removed.- Applies to all console logs, not just command logs.
- CLI:
--cmd-log-line-trunc
:- CLI:
--console-log-line-trunc
. -y
removed.- Toml:
console-log.line-trunc
.
- CLI:
--cmd-log-strip-control
:- CLI:
--console-log-strip-control
. - Toml:
console-log.strip-control
. -s
removed.
- CLI:
Added
- Added stack support back.
- New option
--command-log-read-size
(toml:command-log.read-size
) that controls
the size of logs we read from command with--console-cmd-log
and
--file-log
. - New option
--file-log-command-name-trunc
(toml:file-log.command-name-trunc
)
for command name truncation in the file logs. - New option
--file-log-delete-on-success
(toml:file-log.delete-on-success
) that deletes the log file upon a
successful exit. - New option
--file-log-line-trunc
(toml:file-log.line-trunc
) for line truncation in the file logs. - Options taking
NATURAL
numbers now allow underscore separators.
Fixed
- Improved
strip-control
optionsall
andsmart
to replace newlines with
a single whitespace, rather than stripping them. - Notification failures are no longer swallowed; errors do not kill shrun,
but they are logged and cause the program to exit with a failure code. - Fixed bug where
--notify-system notify-send
failed when given legend
commands containing quotes and--log-key-hide
was active.
Release Binaries
sha256 checksums
λ. sha256sum ./shrun_0.9-*
f553d5a42055d7412f0ce245d037f98eead81bd9c4c01bf2ce89dc44ce9300de ./shrun_0.9-arm64-macos_14.4.1-darwin.xz
6a28e95426bea95c56863e8bb67a977d09bd4f7059b82deeb61611545f20df2d ./shrun_0.9-x86_64-linux-static.xz
1f1e616043eb0ccb01795d93d8633b69e9bc2b8ab9d40a12c8256a7fd7d6ffd7 ./shrun_0.9-x86_64-linux-ubuntu_22.04.xz
f459e6f0ffbe33c4dcdd38f2adc6e93357a290a202a0e979560dcb195d8a605c ./shrun_0.9-x86_64-macos_12.7.4-darwin.xz
7262dcf06e1ea731e225c5cfa7cfc6c07fd7508062a85452f74c8f871281aa49 ./shrun_0.9-x86_64-macos_13.6.6-darwin.xz
Full Changelog: 0.8.1...0.9
shrun 0.8.1
shrun 0.8.1
Release Notes
Click to expand changelog
Changed
- Default log renamed from
XDG_STATE/shrun/log
to
XDG_STATE/shrun/shrun.log
.
Added
- Added feature for sending notifications upon command/shrun completion.
The new CLI options (toml
) are:--notify-action (notify.action)
--notify-system (notify.system)
--notify-timeout (notify.timeout)
- Added new (
--timer-format
/timer-format
) feature for formatting the
timer. Options are:digital_compact
digital_full
prose_compact
prose_full
- Add
no-x
options to allow selectively disabling options (e.g. disable a
single field set by the toml file).
Fixed
- Fixed bug where command logs with newlines in them were rendered in the same
log. These are now split across multiple logs. - Help page improved.
Full Changelog: 0.8...0.8.1
shrun 0.8
shrun 0.8
Release Notes
Click to expand changelog
Removed
stack
support removed.
Changed
- If any commands fail, shrun now exits with an error code. Previously, shrun
would exit successfully in this scenario, returning an exit code only when
shrun itself died. - Similarly, error code is now set if any commands time out.
- File logging now respects
--key-hide
i.e. default behavior matches
--cmd-log
and prints the key name over the literal command. - We now default logging to the XDG State directory rather than XDG config
i.e.~/.local/state/shrun/log
.
Added
--init
(toml:init
) option that allows one to specify logic that should
be run before each command. This can be useful when we want to load
functions/aliases e.g.shrun --init ". ~/.bashrc" foo
.osx
support.
Fixed
- File logs are now streamed, do not buffer.
- Previously, if
--cmd-log
or--file-log
were specified, then a CPU thread
would be maxed out polling commands for logs. We have now set a delay,
defaulting to 10,000 microseconds, to keep the CPU reasonable. This value
can be configured through the new--poll-interval
option.
Full Changelog: 0.7...0.8
shrun 0.7
shrun 0.7
Release Notes
Click to expand changelog
Removed
log-disable
option removed from CLI and TOML.
Changed
- Logs
- Slightly more compact now (spaces between labels removed)
- Success/Finished message now have specific labels
- Timer logs not sent to file
Fixed
- Fixed bug where legend key with multiple values i.e.
k = [v1, v2, ...]
would consider eachvi
to have key namek
. This meant output could be
ambiguous withkey-hide = false
(the default) because multiple values
would have the same key name. Now we only consider a value to have a key
name when it is unique i.e.k = v
. - File logging thread no longer polls when file logging is disabled.
- File logging no longer crashes if the log file does not already exist.
- Final log message now consistently show up in the log file.
- Fixed bug where ansi control chars could "bleed" over into other logs
- Control chars stripped from command names every time.
- Fixed bug where the toml file's
cmd-log.line-trunc
and
strip-control.cmd-log
were not overridden by the CLI unless the CLI also
specified--cmd-log
.
Release Binaries
sha256 checksums
5c79f5a6f123b1f398a6fa0e38cec4f69c89f836ae5e6db1a37e57dca25e4dfb shrun-0.7-linux-x86_64.xz
shrun 0.6
shrun 0.6
Release Notes
Click to expand changelog
Changed
- CLI
cmd-line-trunc
renamed tocmd-log-line-trunc
.strip-control
renamed tocmd-log-strip-control
.disable-log
renamed tolog-disable
.
- TOML
- Commands logging is now part of the table
cmd-log
.cmd-line-trunc
renamed tocmd-log.line-trunc
.strip-control
renamed tocmd-log.strip-control
.
- File logging is now part of the table
file-log
.file-log
renamed tofile-log.path
.file-log-mode
renamed tofile-log.mode
.file-log-strip-control
renamed tofile-log.strip-control
.
- Commands logging is now part of the table
- Timestamps in logs are now simpler: No timezone or fractions of a second.
Fixed
- Fix redundant COMMANDS... on help page.
Release Binaries
sha256 checksums
457a310e4184b09f61147e8964409ff758c52bb6dcfb3169ba789279e54579bd shrun-0.6-linux-x86_64.xz
shrun 0.5
shrun 0.5
Release Notes
Click to expand changelog
Changed
- Renamed executable from
shell-run
toshrun
. - Added toml configuration. This subsumes the old
--legend
file, as that is
part of the new toml file. --key-show
is now the default behavior. The flag has thus been renamed
--key-hide
, and is off by default.--file-log
no longer interpretsd
as the default path. Only the string
default
is expected.- Renamed toml's
--file-logging
to--file-log
for consistency with CLI.
Added
--file-log-strip-control
for adding--strip-control
functionality
to file logs.--file-log-mode
option for choosing betweenappend
andwrite
file
modes.--file-log-size-mode
option for warning or automatically deleting the
log file if it crosses a user-specified threshold.
Fixed
- Improve
--strip-control
.all
should no longer leave ansi remnants, and
smart
is much more aggressive about removing everything but harmless
styling. - Improve benchmarking to more accurately describe memory usage.
- File logging handled more intelligently: no longer opening/closing on each
write.
Release Binaries
sha256 checksums
1327cd9bd1732df0aa2b40624b13db12d347e8ed3eda7af7195af9921e9fad5f shrun-0.5-linux-x86_64.xz
shell-run 0.4
shell-run 0.4
Click to expand changelog
Release Notes
- File logging in local time, not UTC.
- Internal improvements (type safety, linting/ci ease).
- Improve integration test.
Release Binaries
sha256 checksums
b19faec5fa5027353cc75626e3900ecfc6029c5be3f5c4d666dd328fcbba2113 shell-run-0.4-linux-x86_64.xz
shell-run 0.3
shell-run 0.3
Click to expand changelog
Release Notes
- Adds new
--strip-control
argument for handling control chars in logs.
Release Binaries
sha256 checksums
a6103825a2f916696a536e241273862f94990cd4a6691a1d5f659e2932775a15 shell-run-0.3-linux-x86_64.xz
shell-run 0.2.0.1
shell-run 0.2.0.1
Click to expand changelog
Release Notes
- Update documentation
- Update CI jobs
- Add INLINEABLE
Release Binaries
sha256 checksums
1d1a8166e967b5327d6935a5f8c1aa2a2ee60405c1c1b4b93043b99979ea8d87 shell-run-0.2.0.1-linux-x86_64.xz