Date: 2026-01-18 | Project: beads_rust | Language: Rust
- Updated: 4 | Skipped: 1 | Failed: 0 | Needs attention: 0
- Breaking: None documented; version bump aligns criterion-plot dependency
- Migration: None required
- Tests: Passed (649)
- Breaking:
usize/u64ToSql/FromSql disabled by default; statement cache optional; min SQLite 3.34.1 - Migration: Added
fallible_uintfeature flag to re-enableusizeToSql support - Tests: Passed (649)
- Breaking: Control characters now return
Some(1)instead ofNone - Migration: Code already uses
unwrap_or(0)which handles the change gracefully - Tests: Passed (649)
- Breaking: None found in project usage
- Tests: Passed (649)
- Reason: Blocked by Rust version constraint; vergen-gix 9.x may require newer Rust than 1.85
- Action: Investigate if project can bump rust-version in rust-toolchain.toml, or wait for compat release
These were automatically updated as dependencies of direct dependencies:
- hashlink: 0.9.1 -> 0.11.0 (rusqlite dependency)
- libsqlite3-sys: 0.30.1 -> 0.36.0 (rusqlite dependency)
- criterion-plot: 0.6.0 -> 0.8.1 (criterion dependency)
- Various gix-* crates (vergen-gix dependencies)
# Check for outdated dependencies
cargo outdated
# Update specific package
cargo update -p rusqlite
# Run tests after each update
cargo test --libDate: 2026-02-19 | Project: beads_rust | Language: Rust
- Updated: 24 | Replaced: 1 (serde_yaml -> serde_yml) | Skipped: 4 | Failed: 0
- Change: Pinned
rust-toolchain.tomlfrom genericnightlytonightly-2026-02-19(rustc 1.95.0-nightly, 2026-02-18) - Reason: Reproducible builds; generic
nightlychannel was corrupted on this machine - Tests: All pass
- Breaking:
RootSchemaremoved (replaced bySchema),schema_name()returnsCow<'static, str>instead ofString,schemars::genmodule renamed toschemars::generate, featurechronorenamed tochrono04, schemas now target JSON Schema draft 2020-12 - Migration: Updated Cargo.toml features, replaced
RootSchemawithSchemainschema.rs, updated manualJsonSchemaimpl inmodel/mod.rsto use new trait signatures - Files changed:
Cargo.toml,src/model/mod.rs,src/cli/commands/schema.rs - Tests: Pass
- Reason:
serde_yamlis deprecated and unmaintained;serde_ymlis a maintained fork with compatible API - Migration: Renamed all
serde_yaml::references toserde_yml::across 4 source files. Fixed amatch_same_armsclippy lint exposed by the reformatting - Files changed:
Cargo.toml,src/error/mod.rs,src/config/mod.rs,src/cli/commands/config.rs,tests/conformance.rs - Tests: Pass
- Breaking:
KeyModifiersdisplay now uses+separators; new defaultderive-morefeature - Impact: This project only uses
crossterm::style::Stylize-- no impact - Tests: Pass
- Breaking:
Rngextension trait renamed toRngExt,StdRngno longer implementsClone,SeedableRng::from_os_rng()removed - Migration: Updated
use rand::Rngtouse rand::RngExtintests/bench_synthetic_scale.rs - Files changed:
Cargo.toml,tests/bench_synthetic_scale.rs - Tests: Pass
| Crate | From | To | Notes |
|---|---|---|---|
| clap | 4.5 | 4.5.60 | Semver-compatible |
| clap_complete | 4.5 | 4.5.66 | Semver-compatible |
| serde | 1.0 | 1.0.228 | Semver-compatible |
| serde_json | 1.0 | 1.0.149 | Semver-compatible |
| chrono | 0.4 | 0.4.43 | Semver-compatible |
| sha2 | 0.10 | 0.10.9 | Semver-compatible |
| anyhow | 1.0 | 1.0.102 | Semver-compatible |
| tracing | 0.1 | 0.1.44 | Semver-compatible |
| tracing-subscriber | 0.3 | 0.3.22 | Semver-compatible |
| indicatif | 0.18 | 0.18.4 | Semver-compatible |
| dunce | 1.0 | 1.0.5 | Semver-compatible |
| once_cell | 1.19 | 1.21 | Semver-compatible |
| regex | 1.11 | 1.12 | Semver-compatible |
| unicode-width | 0.2 | 0.2.2 | Semver-compatible |
| semver | 1.0 | 1.0.27 | Semver-compatible |
| tempfile | 3.10 | 3.25 | Semver-compatible |
| assert_cmd | 2.0 | 2.1 | Semver-compatible |
| predicates | 3.1 | 3.1.4 | Semver-compatible |
| criterion | 0.8 | 0.8.2 | Semver-compatible |
| walkdir | 2.4 | 2.5 | Semver-compatible |
| insta | 1.38 | 1.46 | Semver-compatible |
| proptest | 1.6 | 1.10 | Semver-compatible |
| Crate | Version | Reason |
|---|---|---|
| rusqlite | 0.38 | Already at latest stable |
| thiserror | 2.0.18 | Already at latest stable |
| rich_rust | 0.2.0 | Already at latest stable |
| toon_rust | git:788589d | Git dependency, preserving pinned revision |
cargo check --all-targets: Passcargo clippy --all-targets -- -D warnings: Passcargo fmt --check: Passcargo test --lib: 775 passed, 0 failedcargo test --test conformance: 320 passed, 0 failed, 26 ignoredcargo test(full): 1 pre-existing failure ine2e_close_blocked_requires_force(unrelated to upgrades)