Skip to content

Bump to Rust 1.95, modernize deps and frontend, refresh docs - #4

Merged
jspwrd merged 2 commits into
mainfrom
chore/msrv-1.95-and-doc-refresh
Apr 22, 2026
Merged

Bump to Rust 1.95, modernize deps and frontend, refresh docs#4
jspwrd merged 2 commits into
mainfrom
chore/msrv-1.95-and-doc-refresh

Conversation

@jspwrd

@jspwrd jspwrd commented Apr 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • Workspace MSRV 1.82 → 1.95; tokio 1.41 → 1.52, sha1/sha2 0.10 → 0.11, rand 0.8 → 0.10, reqwest 0.12 → 0.13 (rustls-tls feature renamed → rustls + rustls-native-certs), dirs 5 → 6, uuid 1.11 → 1.23, regex 1.11 → 1.12, bytes 1.9 → 1.11
  • oxidebt-disk and oxidebt-net migrated to consume workspace deps directly instead of pinning their own versions
  • rand 0.10 migration: thread_rng()rng(), Rng::gen()random() / RngExt::random(), and rand::random::<usize>() % nrand::random_range(..n) (also removes modulo bias)
  • Removed an unwrap() in tracker IPv6 peer parsing (oxidebt-tracker/src/response.rs) in favor of an explicit byte-array literal
  • Frontend: React 18 → 19, Vite 6 → 8, TypeScript 5.6 → 6, @vitejs/plugin-react 4 → 6, @types/react 18 → 19, gsap 3.13 → 3.15
  • Docs: switched build instructions to bun (the project's actual package manager), bumped Rust prereq to 1.95 and Node to 20.19+/22.12+ (Vite 8 requirement), trimmed the v2/hybrid protocol claim from the README (those BEPs aren't yet implemented), and added oxidebt-cache and oxidebt-constants to the crate table

Test plan

  • cargo clippy --workspace -- -D warnings clean
  • cargo test --workspace — 309 tests pass
  • cargo build --release --workspace
  • bun run build — 361 KB JS, 33 KB CSS, no TS errors

🤖 Generated with Claude Code

jasper and others added 2 commits April 21, 2026 19:59
Workspace MSRV moved from 1.82 to 1.95 with matching dep refresh:
tokio 1.41 → 1.52, sha1/sha2 0.10 → 0.11, rand 0.8 → 0.10, reqwest
0.12 → 0.13 (rustls-tls feature renamed to rustls + rustls-native-certs),
dirs 5 → 6, uuid 1.11 → 1.23, regex 1.11 → 1.12, bytes 1.9 → 1.11.

oxidebt-disk and oxidebt-net now consume workspace deps directly
instead of pinning their own versions.

rand 0.10 migration: thread_rng() → rng(), Rng::gen() → random() /
RngExt::random(), and rand::random::<usize>() % n → random_range(..n)
(also removes modulo bias). Removed an unwrap() in tracker IPv6 peer
parsing in favor of an explicit byte-array literal.

Frontend: React 18 → 19, Vite 6 → 8, TypeScript 5.6 → 6, plus
@vitejs/plugin-react 4 → 6, @types/react 18 → 19, gsap 3.13 → 3.15.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Updates README and CLAUDE.md to use bun (the project's actual package
manager per bun.lock) instead of npm, bumps the documented Rust MSRV
to 1.95, and notes Vite 8's Node 20.19 / 22.12 requirement. Trims the
v2/hybrid protocol claim from the README — those BEPs aren't yet
implemented in the oxidebt crates — and adds oxidebt-cache and
oxidebt-constants to the crate table.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@jspwrd
jspwrd merged commit c47e9eb into main Apr 22, 2026
4 checks passed
@jspwrd
jspwrd deleted the chore/msrv-1.95-and-doc-refresh branch April 22, 2026 03:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant