brush v0.2.23
🚀 Release Notes
This is a targeted release with a fix for brush --version
.
🗒️ Details
Full Changelog: brush-shell-v0.2.22...brush-shell-v0.2.23
brush v0.2.22
🚀 Release Notes
This release contains a few focused changes and dependency upgrades.
Notable changes:
- Added initial (optional)
miette
integration for improved error messages. (Thanks to @lu-zero for making this happen!)
- Resolved some warnings and errors with the experimental Windows build of
brush
. (Thanks to @twz123 for identifying issues with the homedir
crate!)
- Excluded from history commands executed by
bind
bindings.
🗒️ Details
- fix: exclude bind-bound commands from history by @reubeno in #650
- build(deps): bump the cargo group with 4 updates by @dependabot[bot] in #654
- build(deps): bump the github-actions group with 5 updates by @dependabot[bot] in #655
- Add minimal miette support by @lu-zero in #648
- fix(cmdline): improve error handling for unknown cmdline options by @reubeno in #656
- docs: update readme by @reubeno in #657
- build(deps): bump the github-actions group with 7 updates by @dependabot[bot] in #658
- build(deps): bump the cargo group with 4 updates by @dependabot[bot] in #659
- chore: additional clippy fixes by @reubeno in #661
- chore: downgrade homedir by @reubeno in #662
- chore: address warnings on windows targets by @reubeno in #663
- build(deps): bump tracing-subscriber from 0.3.19 to 0.3.20 in the cargo group by @dependabot[bot] in #664
- chore: prepare release by @reubeno in #665
Full Changelog: brush-shell-v0.2.21...brush-shell-v0.2.22
brush-parser-v0.2.20
chore: Release package brush-parser version 0.2.20
brush-interactive-v0.2.22
chore: Release package brush-interactive version 0.2.22
brush-core-v0.3.5
chore: Release package brush-core version 0.3.5
brush v0.2.21
🚀 Release Notes
This release contains several bug fixes to improve compatibility with bash
, as well as some feature work focused on command history. We are now also publishing more complete license notices along with the binaries we release on GitHub.
Notable features and fixes:
- Implemented
history
builtin! This has been in the works for a while, but we saw it reach stability during this release cycle.
- Resolved a handful of issues discovered by users trying to run Arch's
makepkg
script under brush
, including some missing functionality in brace expansion and arithmetic expression parsing. (Thanks to @theoparis for finding and reporting these!)
- Resolved panics occurring with strings containing multi-byte characters. (Thanks to @colindean for catching and root-causing these!)
- Adds support for
(<"$file")
special-case supported by bash.
Notable installation improvements:
brush
is now installable via homebrew
! (Thanks to @colindean for updating our readme with instructions.)
brush
is installable (more officially) from Arch! (Thanks to @roland-5 for readme updates on that.)
🗒️ Details
- fix(ci): correct CD workflow run name by @reubeno in #603
- build(deps): bump the github-actions group with 3 updates by @dependabot[bot] in #605
- Arch Linux - update installation instruction by @roland-5 in #604
- fix: prepare tests to run against bash-5.3 by @reubeno in #610
- build(deps): bump the github-actions group across 1 directory with 4 updates by @dependabot[bot] in #611
- build(deps): bump the cargo group across 1 directory with 5 updates by @dependabot[bot] in #609
- build(deps): bump the cargo group with 3 updates by @dependabot[bot] in #612
- build(deps): bump the cargo group with 2 updates by @dependabot[bot] in #613
- build(deps): bump the github-actions group with 3 updates by @dependabot[bot] in #617
- build(deps): bump tokio from 1.46.1 to 1.47.0 in the cargo group by @dependabot[bot] in #616
- build(deps): bump the cargo group with 2 updates by @dependabot[bot] in #619
- build(deps): bump the github-actions group with 2 updates by @dependabot[bot] in #620
- build(deps): bump the cargo group with 2 updates by @dependabot[bot] in #621
- feat(history): implement history builtin by @reubeno in #599
- ci: publish license notices by @reubeno in #622
- chore: update dependencies by @reubeno in #623
- fix(parser): resolve issue with parser confusing subshell for arith expr by @reubeno in #624
- fix(expansion): support broader set of nested brace expansions by @reubeno in #625
- fix(unset): correct unset of associative array element by @reubeno in #626
- build(deps): bump indenter from 0.3.3 to 0.3.4 in the cargo group by @dependabot[bot] in #627
- build(deps): bump the github-actions group with 7 updates by @dependabot[bot] in #628
- fix(declare): refine varname validation by @reubeno in #629
- fix: hyphenated script args by @reubeno in #630
- fix: special case for command subst by @reubeno in #632
- chore: update lock file by @reubeno in #633
- chore: remove unused import from python script by @reubeno in #634
- ci: pin rust-toolchain tasks by @reubeno in #635
- chore: remove unused global variable by @reubeno in #636
- chore: remove unused global variable by @reubeno in #637
- build(deps): bump slab from 0.4.10 to 0.4.11 in the cargo group by @dependabot[bot] in #640
- Adds Homebrew nudge to installation section by @colindean in #638
- fix: correct obvious string indexing errors by @reubeno in #641
- fix: fixes for preexec-style bash extensions by @reubeno in #643
- chore: cleanup allow attributes, switch to expect where possible by @reubeno in #642
- chore: rename license notice document by @reubeno in #645
- chore: prepare release by @reubeno in #644
- fix: add back 2 suppressions by @reubeno in #647
New Contributors
Full Changelog: brush-shell-v0.2.20...brush-shell-v0.2.21
brush-parser-v0.2.19
chore: Release package brush-parser version 0.2.19
brush-interactive-v0.2.21
chore: Release package brush-interactive version 0.2.21
brush-core-v0.3.4
chore: Release package brush-core version 0.3.4
brush v0.2.20
🚀 Release Notes
This release includes a targeted change to the project's default compiler flags (see #600 for details). Prior to this change, release
builds defaulted to optimizing for the build host's hardware platform; while useful for individuals, this is problematic for users who plan to use the built binaries on a different system.
Notable features and fixes:
- Fixed "illegal instruction" issue sometimes seen when building
brush
on one system and running on another. (Thanks to @kachick for diagnosing and fixing this!)
- Added support for
+o
/-o
on the brush
command line.
- Corrected behavior of positional parameter shadowing with
source
/.
builtin.
Notable API improvements:
- Ergonomics improvements to
Shell::invoke_function
, ShellValue
construction, and a few other places. (Thanks to @Elsie19 for contributions here!)
🗒️ Details
- chore: suppress cognitive complexity errors (for now) by @reubeno in #583
- fix(dot): only shadow args when provided to
source
by @reubeno in #582
- docs: README.md installation updates by @reubeno in #580
- ci: fix dry-run PR trigger on CD workflow by @reubeno in #584
- chore: update dependencies + deny policy by @reubeno in #586
- tests: tag test binary dependencies by @reubeno in #585
- tests: add test cases for open issues by @reubeno in #587
- docs: update README.md badges by @reubeno in #588
- fix(input): multiline input with basic input backend by @reubeno in #589
- feat: enable -o/+o on brush command line by @reubeno in #590
- tests: add not-yet-passing history tests by @reubeno in #591
- build(deps): bump the github-actions group with 5 updates by @dependabot in #592
- build(deps): bump test-with from 0.15.1 to 0.15.2 in the cargo group by @dependabot in #593
- chore: remove unneeded dev deps by @reubeno in #594
- chore: add some tools to devcontainer by @reubeno in #595
- ci: enable advanced codeql scanning by @reubeno in #597
- feat(api): API usability improvements for
Shell::invoke_function
by @reubeno in #596
- chan(ShellValue): take in an
Into
by @Elsie19 in #598
- perf: avoid CPU-specific optimization by @kachick in #600
- chore: update dependencies by @reubeno in #601
- chore: prepare release by @reubeno in #602
Full Changelog: brush-shell-v0.2.19...brush-shell-v0.2.20