bdo-cli 0.47.1 → 0.48.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +36 -0
- package/README.md +16 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,42 @@ All notable changes to Bushido (bdo) will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.48.1] (2026-10-21)
|
|
9
|
+
|
|
10
|
+
### Security
|
|
11
|
+
|
|
12
|
+
- **Hook permission gate: ANSI-C quoting and line-continued substitutions are
|
|
13
|
+
never auto-allowed.** `$'...'` quoting can hide real separators behind
|
|
14
|
+
escaped quotes (`git status $'a\'b'; other-cmd; echo $'c\'d'` looked like
|
|
15
|
+
one allowed `git status`), and a backslash-newline between `$`/`<`/`>` and
|
|
16
|
+
`(` (`$\⏎(…)`) slipped a command substitution past the gate, letting two
|
|
17
|
+
allowed commands combine (`git log $\⏎(echo --output=/path)` writes a file).
|
|
18
|
+
Both now defer to the agent's own permission prompt, across the Claude,
|
|
19
|
+
Cursor, Gemini and Copilot hooks.
|
|
20
|
+
- **rustls-webpki 0.103.15 → 0.103.16 and webpki-roots 1.0.6 → 1.0.10**
|
|
21
|
+
(via `ureq`), fixing RUSTSEC-2026-0382 (certificate verification may accept
|
|
22
|
+
distrusted intermediates) and RUSTSEC-2026-0381 (bundled roots trust
|
|
23
|
+
distrusted emSign intermediates). Caught by the daily scheduled audit.
|
|
24
|
+
- **`bdo curl` no longer buffers a whole response in memory.** Piped / redirected
|
|
25
|
+
output now goes straight from curl to the consumer (bytes arrive before the
|
|
26
|
+
transfer ends, exit status and failure bodies unchanged). On a terminal,
|
|
27
|
+
bdo captures at most 16 MiB to summarize; a larger response is streamed
|
|
28
|
+
byte-exact instead of growing memory without bound.
|
|
29
|
+
|
|
30
|
+
## [0.48.0] (2026-10-17)
|
|
31
|
+
|
|
32
|
+
### Features
|
|
33
|
+
|
|
34
|
+
- **`bdo map --grep <PATTERN>`**: keep only the signatures matching a regex
|
|
35
|
+
(files with no match are dropped), e.g. `bdo map src --grep 'Tracker'`. The
|
|
36
|
+
footer reports how many of the tree's signatures matched. Combines with
|
|
37
|
+
`--changed`.
|
|
38
|
+
|
|
39
|
+
### Fixed
|
|
40
|
+
|
|
41
|
+
- `bdo map <file>` (a single file) printed an empty header line instead of the
|
|
42
|
+
file's path.
|
|
43
|
+
|
|
8
44
|
## [0.47.1] (2026-10-17)
|
|
9
45
|
|
|
10
46
|
### Security
|
package/README.md
CHANGED
|
@@ -104,7 +104,7 @@ gh attestation verify bushido-aarch64-apple-darwin.tar.xz --repo tedorigawa001/T
|
|
|
104
104
|
### Verify Installation
|
|
105
105
|
|
|
106
106
|
```bash
|
|
107
|
-
bdo --version # Should show "bdo 0.
|
|
107
|
+
bdo --version # Should show "bdo 0.48.1"
|
|
108
108
|
bdo gain # Should show token savings stats
|
|
109
109
|
```
|
|
110
110
|
|
|
@@ -196,6 +196,21 @@ C++, Java, and Python; respects `.gitignore`.
|
|
|
196
196
|
`--against origin/main` for the whole-branch diff) — the API surface you touched,
|
|
197
197
|
ideal alongside `bdo review`.
|
|
198
198
|
|
|
199
|
+
`bdo map --grep <PATTERN>` keeps only the signatures matching a regex, so
|
|
200
|
+
"where is `Tracker` defined, and what takes or returns one?" is one command
|
|
201
|
+
(`(?i)` for case-insensitive, `^pub` for the public surface). Drill into a hit
|
|
202
|
+
with `bdo map <file>` or `bdo read <file> -l outline`.
|
|
203
|
+
|
|
204
|
+
```
|
|
205
|
+
$ bdo map src --grep 'struct Tracker\b|pub fn is_quiet'
|
|
206
|
+
core/quiet.rs
|
|
207
|
+
pub fn is_quiet() -> bool { … }
|
|
208
|
+
core/tracking.rs
|
|
209
|
+
pub struct Tracker { … }
|
|
210
|
+
|
|
211
|
+
— 2 files, 2 of 2206 signatures match /struct Tracker\b|pub fn is_quiet/ (full source: 2208 lines)
|
|
212
|
+
```
|
|
213
|
+
|
|
199
214
|
For Python, function bodies are elided with a `…` marker (the analogue of
|
|
200
215
|
`{ … }`), `async def` is handled like `def`, and multi-line signatures are
|
|
201
216
|
folded onto one line:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"artifactDownloadUrls": [
|
|
3
|
-
"https://github.com/tedorigawa001/TokenReductionTool-BDO/releases/download/v0.
|
|
3
|
+
"https://github.com/tedorigawa001/TokenReductionTool-BDO/releases/download/v0.48.1"
|
|
4
4
|
],
|
|
5
5
|
"author": "Patrick Szymkowiak",
|
|
6
6
|
"bin": {
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
"zipExt": ".tar.xz"
|
|
92
92
|
}
|
|
93
93
|
},
|
|
94
|
-
"version": "0.
|
|
94
|
+
"version": "0.48.1",
|
|
95
95
|
"volta": {
|
|
96
96
|
"node": "18.14.1",
|
|
97
97
|
"npm": "9.5.0"
|