Skip to content

Commit c094f1f

Browse files
authored
chore: prepare release (#318)
1 parent 94e6a83 commit c094f1f

File tree

7 files changed

+91
-16
lines changed

7 files changed

+91
-16
lines changed

CHANGELOG.md

+75
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,81 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
55

66
All notable changes to this project will be documented in this file.
77

8+
## [0.2.14] - 2025-01-10
9+
10+
### 🚀 Features
11+
12+
- *(prompts)* Enable PS0, custom right-side prompts, more ([#278](https://github.com/reubeno/brush/pull/278))
13+
- *(completion)* Programmable completion support for filters + commands
14+
- *(non-posix)* Implement `time` keyword ([#310](https://github.com/reubeno/brush/pull/310))
15+
- *(builtins)* Implement suspend ([#311](https://github.com/reubeno/brush/pull/311))
16+
- *(set)* Implement nullglob option ([#279](https://github.com/reubeno/brush/pull/279))
17+
- *(set)* Implement nocaseglob + nocasematch options ([#282](https://github.com/reubeno/brush/pull/282))
18+
- *(builtins)* Add minimal mapfile + bind impls
19+
- *(debug)* Improved function tracing capabilities
20+
- *(options)* Implement lastpipe option
21+
- Implement brace expansion ([#290](https://github.com/reubeno/brush/pull/290))
22+
- *(options)* Implement noclobber option (a.k.a. -C) ([#291](https://github.com/reubeno/brush/pull/291))
23+
- *(builtins)* Implement more of kill builtin ([#305](https://github.com/reubeno/brush/pull/305))
24+
- *(builtins)* Implement times builtin ([#309](https://github.com/reubeno/brush/pull/309))
25+
26+
### 🐛 Bug Fixes
27+
28+
- Correct sh mode vs posix mode confusion for syntax extensions
29+
- Assorted non-fatal clippy warnings ([#274](https://github.com/reubeno/brush/pull/274))
30+
- *(builtins)* Correct behavior of set builtin with no args
31+
- More consistently honor shell options when invoking the tokenizer
32+
- Update COMP_WORDBREAKS default value
33+
- Honor extglob for expansion transformations
34+
- Sync PWD with actual workdir on launch
35+
- *(jobs)* Only report job status when job control option is enabled ([#306](https://github.com/reubeno/brush/pull/306))
36+
- Stop incorrectly parsing assignment as function def ([#273](https://github.com/reubeno/brush/pull/273))
37+
- Multiple issues blocking docker cmd completion ([#275](https://github.com/reubeno/brush/pull/275))
38+
- Improve substring ops with multi-byte chars ([#280](https://github.com/reubeno/brush/pull/280))
39+
- Better handle escape chars in pattern bracket exprs ([#281](https://github.com/reubeno/brush/pull/281))
40+
- *(completion)* Multiple fixes for compgen builtin usage
41+
- *(regex)* Work around incompatibilities between shell + rust regexes
42+
- *(extendedtests)* Add missing arithmetic eval in extended tests
43+
- *(command)* Handle sending basic command errors to redirected stderr
44+
- Improve accuracy of negative extglobs
45+
- Implement date and time in prompts ([#298](https://github.com/reubeno/brush/pull/298))
46+
- *(completion)* Handle -o {default,dirnames,plusdirs} ([#300](https://github.com/reubeno/brush/pull/300))
47+
- *(expansion)* Correct length for 1-element arrays ([#316](https://github.com/reubeno/brush/pull/316))
48+
- Correct issues with `!` extglobs and compgen -X ([#317](https://github.com/reubeno/brush/pull/317))
49+
50+
### 📚 Documentation
51+
52+
- Update README to reflect test expansion
53+
54+
### ⚡ Performance
55+
56+
- Cache parsing for arithmetic expressions ([#301](https://github.com/reubeno/brush/pull/301))
57+
- Remove unneeded async from arithmetic eval ([#312](https://github.com/reubeno/brush/pull/312))
58+
- Remove setup operations from microbenchmarks ([#307](https://github.com/reubeno/brush/pull/307))
59+
- Reimplement colon command as a "simple builtin" ([#315](https://github.com/reubeno/brush/pull/315))
60+
61+
### 🧪 Testing
62+
63+
- *(completion)* Add another completion test
64+
- *(completion)* Enable use of pexpect et al. with basic input backend
65+
66+
### ⚙️ Miscellaneous Tasks
67+
68+
- Update comments
69+
- Improve tracing for completion function invocation
70+
- Remove unneeded helper code
71+
- Address warnings ([#313](https://github.com/reubeno/brush/pull/313))
72+
73+
### Build
74+
75+
- *(deps)* Bump the cargo group with 3 updates ([#285](https://github.com/reubeno/brush/pull/285))
76+
- *(deps)* Bump the cargo group with 4 updates ([#289](https://github.com/reubeno/brush/pull/289))
77+
- *(deps)* Bump the cargo group with 3 updates ([#294](https://github.com/reubeno/brush/pull/294))
78+
- *(deps)* Bump anyhow from 1.0.94 to 1.0.95 in the cargo group ([#297](https://github.com/reubeno/brush/pull/297))
79+
- *(deps)* Bump the cargo group with 2 updates ([#299](https://github.com/reubeno/brush/pull/299))
80+
- *(deps)* Bump the cargo group with 2 updates ([#304](https://github.com/reubeno/brush/pull/304))
81+
82+
<!-- generated by git-cliff -->
883
## [0.2.13] - 2024-11-26
984

1085
### 🚀 Features

Cargo.lock

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

brush-core/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "brush-core"
33
description = "Reusable core of a POSIX/bash shell (used by brush-shell)"
4-
version = "0.2.13"
4+
version = "0.2.14"
55
categories.workspace = true
66
edition.workspace = true
77
keywords.workspace = true
@@ -19,7 +19,7 @@ workspace = true
1919
[dependencies]
2020
async-recursion = "1.1.1"
2121
async-trait = "0.1.84"
22-
brush-parser = { version = "^0.2.11", path = "../brush-parser" }
22+
brush-parser = { version = "^0.2.12", path = "../brush-parser" }
2323
cached = "0.54.0"
2424
cfg-if = "1.0.0"
2525
chrono = "0.4.39"

brush-interactive/Cargo.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "brush-interactive"
33
description = "Interactive layer of brush-shell"
4-
version = "0.2.13"
4+
version = "0.2.14"
55
authors.workspace = true
66
categories.workspace = true
77
edition.workspace = true
@@ -25,8 +25,8 @@ workspace = true
2525

2626
[dependencies]
2727
async-trait = "0.1.84"
28-
brush-parser = { version = "^0.2.11", path = "../brush-parser" }
29-
brush-core = { version = "^0.2.13", path = "../brush-core" }
28+
brush-parser = { version = "^0.2.12", path = "../brush-parser" }
29+
brush-core = { version = "^0.2.14", path = "../brush-core" }
3030
crossterm = { version = "0.28.1", features = ["serde"], optional = true }
3131
indexmap = "2.7.0"
3232
nu-ansi-term = { version = "0.50.1", optional = true }

brush-parser/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "brush-parser"
33
description = "POSIX/bash shell tokenizer and parsers (used by brush-shell)"
4-
version = "0.2.11"
4+
version = "0.2.12"
55
authors.workspace = true
66
categories.workspace = true
77
edition.workspace = true

brush-shell/Cargo.toml

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "brush-shell"
33
description = "Rust-implemented shell focused on POSIX and bash compatibility"
4-
version = "0.2.13"
4+
version = "0.2.14"
55
authors.workspace = true
66
categories.workspace = true
77
edition.workspace = true
@@ -40,8 +40,8 @@ workspace = true
4040

4141
[dependencies]
4242
async-trait = "0.1.84"
43-
brush-parser = { version = "^0.2.11", path = "../brush-parser" }
44-
brush-core = { version = "^0.2.13", path = "../brush-core" }
43+
brush-parser = { version = "^0.2.12", path = "../brush-parser" }
44+
brush-core = { version = "^0.2.14", path = "../brush-core" }
4545
cfg-if = "1.0.0"
4646
clap = { version = "4.5.21", features = ["derive", "env", "wrap_help"] }
4747
const_format = "0.2.34"
@@ -52,13 +52,13 @@ tracing-subscriber = "0.3.19"
5252
human-panic = "2.0.2"
5353

5454
[target.'cfg(not(any(windows, unix)))'.dependencies]
55-
brush-interactive = { version = "^0.2.13", path = "../brush-interactive", features = [
55+
brush-interactive = { version = "^0.2.14", path = "../brush-interactive", features = [
5656
"minimal",
5757
] }
5858
tokio = { version = "1.42.0", features = ["rt", "sync"] }
5959

6060
[target.'cfg(any(windows, unix))'.dependencies]
61-
brush-interactive = { version = "^0.2.13", path = "../brush-interactive", features = [
61+
brush-interactive = { version = "^0.2.14", path = "../brush-interactive", features = [
6262
"basic",
6363
"reedline",
6464
] }

xtask/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ rust-version.workspace = true
1313

1414
[dependencies]
1515
anyhow = "1.0.95"
16-
brush-shell = { version = "^0.2.13", path = "../brush-shell" }
16+
brush-shell = { version = "^0.2.14", path = "../brush-shell" }
1717
clap = { version = "4.5.21", features = ["derive"] }
1818
clap_mangen = "0.2.24"
1919
clap-markdown = "0.1.4"

0 commit comments

Comments
 (0)