Skip to content

Commit f86f4b1

Browse files
doublegateclaude
andauthored
build(deps): consolidate 18 dependency-update PRs + broader version sweep (#33)
Consolidates all 18 open dependabot PRs (#7-#32) into a single CI-verified update, plus a broader sweep bringing every other Cargo, npm, GitHub Actions, and submodule dependency to its latest compatible version. Also fixes real RUSTSEC TLS/DNS vulnerabilities upstream in the prtip and wraith-protocol submodules. See PR #33 description for full details. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1 parent 9fa27f3 commit f86f4b1

18 files changed

Lines changed: 2456 additions & 1883 deletions

File tree

.cargo/audit.toml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,13 @@ ignore = [
4242
"RUSTSEC-2025-0057", # fxhash - used by HTML parsing (selectors), no known vulns
4343
"RUSTSEC-2025-0119", # number_prefix - used by indicatif progress bars, cosmetic
4444
"RUSTSEC-2025-0141", # bincode - used by WRAITH discovery (internal comms only)
45+
46+
# RUSTSEC-2026-0194/0195: quick-xml 0.38.4 quadratic runtime / memory exhaustion
47+
# - Transitive: tauri 2.11.5 (latest) -> plist 1.8.0 -> quick-xml 0.38.4
48+
# - Only used for macOS Info.plist bundle-metadata parsing at build/packaging time,
49+
# not attacker-reachable network input
50+
# - No fix available: tauri's own `plist` dependency hasn't moved to quick-xml >=0.41.0
51+
# yet; re-check on the next tauri/plist release and remove this entry once resolved
52+
"RUSTSEC-2026-0194",
53+
"RUSTSEC-2026-0195",
4554
]

.github/workflows/ci.yml

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,12 @@ jobs:
2929
runs-on: ubuntu-22.04
3030
steps:
3131
- uses: actions/checkout@v6
32-
- uses: actions/setup-node@v4
32+
- uses: actions/setup-node@v6
3333
with:
3434
node-version: '22'
35-
- uses: pnpm/action-setup@v2
35+
- uses: pnpm/action-setup@v6
3636
with:
37-
version: 9
37+
version: 11
3838
- name: Install dependencies
3939
run: |
4040
cd crates/spectre-gui/frontend
@@ -74,12 +74,12 @@ jobs:
7474
libpcap-dev
7575
7676
# Setup Node.js and pnpm for frontend
77-
- uses: actions/setup-node@v4
77+
- uses: actions/setup-node@v6
7878
with:
7979
node-version: '22'
80-
- uses: pnpm/action-setup@v2
80+
- uses: pnpm/action-setup@v6
8181
with:
82-
version: 9
82+
version: 11
8383

8484
# Build frontend (required before Rust build for Tauri)
8585
- name: Build frontend
@@ -146,12 +146,12 @@ jobs:
146146
echo "LIB=${{ github.workspace }}\npcap-sdk\Lib\x64" >> $env:GITHUB_ENV
147147
148148
# Setup Node.js and pnpm for frontend (all platforms)
149-
- uses: actions/setup-node@v4
149+
- uses: actions/setup-node@v6
150150
with:
151151
node-version: '22'
152-
- uses: pnpm/action-setup@v2
152+
- uses: pnpm/action-setup@v6
153153
with:
154-
version: 9
154+
version: 11
155155

156156
# Build frontend (required before Rust build for Tauri)
157157
- name: Build frontend
@@ -200,12 +200,12 @@ jobs:
200200
libpcap-dev
201201
202202
# Setup Node.js and pnpm for frontend
203-
- uses: actions/setup-node@v4
203+
- uses: actions/setup-node@v6
204204
with:
205205
node-version: '22'
206-
- uses: pnpm/action-setup@v2
206+
- uses: pnpm/action-setup@v6
207207
with:
208-
version: 9
208+
version: 11
209209

210210
# Build frontend (required before Rust build for Tauri)
211211
- name: Build frontend
@@ -263,12 +263,12 @@ jobs:
263263
libpcap-dev
264264
265265
# Setup Node.js and pnpm for frontend
266-
- uses: actions/setup-node@v4
266+
- uses: actions/setup-node@v6
267267
with:
268268
node-version: '22'
269-
- uses: pnpm/action-setup@v2
269+
- uses: pnpm/action-setup@v6
270270
with:
271-
version: 9
271+
version: 11
272272

273273
# Build frontend (required before Rust build for Tauri)
274274
- name: Build frontend
@@ -312,12 +312,12 @@ jobs:
312312
libpcap-dev
313313
314314
# Setup Node.js and pnpm for frontend
315-
- uses: actions/setup-node@v4
315+
- uses: actions/setup-node@v6
316316
with:
317317
node-version: '22'
318-
- uses: pnpm/action-setup@v2
318+
- uses: pnpm/action-setup@v6
319319
with:
320-
version: 9
320+
version: 11
321321

322322
# Build frontend (required before Rust build for Tauri)
323323
- name: Build frontend
@@ -334,7 +334,7 @@ jobs:
334334
- name: Generate coverage
335335
run: cargo tarpaulin --workspace --out Xml
336336
- name: Upload coverage to Codecov
337-
uses: codecov/codecov-action@v5
337+
uses: codecov/codecov-action@v7
338338
with:
339339
token: ${{ secrets.CODECOV_TOKEN }}
340340
files: ./cobertura.xml

.github/workflows/gui.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@ jobs:
2222
steps:
2323
- uses: actions/checkout@v6
2424

25-
- uses: pnpm/action-setup@v4
25+
- uses: pnpm/action-setup@v6
2626
with:
27-
version: 9
27+
version: 11
2828

29-
- uses: actions/setup-node@v4
29+
- uses: actions/setup-node@v6
3030
with:
3131
node-version: 22
3232
cache: 'pnpm'
@@ -120,11 +120,11 @@ jobs:
120120
key: ${{ matrix.platform.target }}
121121
prefix-key: "v2"
122122

123-
- uses: pnpm/action-setup@v4
123+
- uses: pnpm/action-setup@v6
124124
with:
125-
version: 9
125+
version: 11
126126

127-
- uses: actions/setup-node@v4
127+
- uses: actions/setup-node@v6
128128
with:
129129
node-version: 22
130130
cache: 'pnpm'

.github/workflows/release.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ jobs:
104104
Compress-Archive -Path dist/* -DestinationPath "${{ matrix.artifact }}.zip"
105105
106106
- name: Upload Release Asset
107-
uses: softprops/action-gh-release@v2
107+
uses: softprops/action-gh-release@v3
108108
with:
109109
files: |
110110
${{ matrix.artifact }}.tar.gz
@@ -185,11 +185,11 @@ jobs:
185185
key: ${{ matrix.platform.target }}
186186
prefix-key: "v2"
187187

188-
- uses: pnpm/action-setup@v4
188+
- uses: pnpm/action-setup@v6
189189
with:
190-
version: 9
190+
version: 11
191191

192-
- uses: actions/setup-node@v4
192+
- uses: actions/setup-node@v6
193193
with:
194194
node-version: 22
195195
cache: 'pnpm'

CHANGELOG.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,27 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
### Changed
11+
12+
- Consolidated 18 open dependabot PRs (#7-#32) into a single dependency-update sweep, plus a
13+
broader pass to bring every other Cargo, npm, GitHub Actions, and submodule dependency to its
14+
latest compatible version.
15+
- GitHub Actions: `softprops/action-gh-release` v2->v3, `pnpm/action-setup` v2/v4->v6
16+
(standardized across all workflows, including pinned pnpm 9->11), `codecov/codecov-action`
17+
v5->v7, `actions/setup-node` v4->v6.
18+
- Cargo: `sha2` 0.10->0.11, `ipnetwork` 0.20->0.21, `toml` 0.8->1.1, `toml_edit` 0.22->0.25,
19+
`quick-xml` 0.37->0.41, `rand` 0.8->0.10, `bollard` 0.18->0.21 (migrated
20+
`crates/spectre-core/src/chef/docker.rs` to bollard's relocated `query_parameters`/`models`
21+
API), plus transitive bumps to openssl, quinn-proto, and keccak. `rusqlite` and `mlua` remain
22+
pinned (0.32, 0.11) due to a shared native-library (`sqlite3`, `lua`) version constraint with
23+
the `prtip` submodule's own dependencies.
24+
- npm (GUI frontend): `rollup` (transitive via vite) and other packages within existing semver
25+
ranges.
26+
- Submodules: `components/prtip` and `components/wraith-protocol` synced to their latest pushed
27+
commits; `components/cyberchef-mcp` fast-forwarded to latest upstream master.
28+
- Fixed 5 pre-existing `clippy::unnecessary_sort_by` failures (`sort_by` -> `sort_by_key`) that
29+
were already failing CI on the current toolchain independent of this dependency sweep.
30+
1031
## [0.5.0] - 2026-02-06
1132

1233
### Added - Sprint 5.8: Polish & Release (v0.5.0 Stable)

0 commit comments

Comments
 (0)