diff --git a/platforms/cli/Cargo.lock b/platforms/cli/Cargo.lock index ff243788..67b913e5 100644 --- a/platforms/cli/Cargo.lock +++ b/platforms/cli/Cargo.lock @@ -8,18 +8,6 @@ version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" -[[package]] -name = "ahash" -version = "0.8.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - [[package]] name = "aho-corasick" version = "1.1.5" @@ -681,6 +669,12 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + [[package]] name = "foreign-types" version = "0.3.2" @@ -844,11 +838,11 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.5" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" dependencies = [ - "ahash", + "foldhash", ] [[package]] @@ -856,14 +850,17 @@ name = "hashbrown" version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" +dependencies = [ + "foldhash", +] [[package]] name = "hashlink" -version = "0.9.1" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" +checksum = "32069d97bb81e38fa67eab65e3393bf804bb85969f2bc06bf13f64aef5aba248" dependencies = [ - "hashbrown 0.14.5", + "hashbrown 0.17.1", ] [[package]] @@ -1235,9 +1232,9 @@ dependencies = [ [[package]] name = "libsqlite3-sys" -version = "0.28.0" +version = "0.38.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c10584274047cb335c23d3e61bcef8e323adae7c5c8c760540f73610177fc3f" +checksum = "f1d20bef17f513b9b3004532233187769cd072d790971f4e4da0e346eb6401e8" dependencies = [ "cc", "pkg-config", @@ -1905,11 +1902,21 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "rsqlite-vfs" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c51c9ae4df8a7fba42103df5c621fa3c37eccf3a3c650879e90fc48b11cc192c" +dependencies = [ + "hashbrown 0.16.1", + "thiserror 2.0.20", +] + [[package]] name = "rusqlite" -version = "0.31.0" +version = "0.40.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b838eba278d213a8beaf485bd313fd580ca4505a00d5871caeb1457c55322cae" +checksum = "23f2a97da3e3873c73cb2a2e71b35c40ff95e0b1eefa8d72d8499a6928c3b5b3" dependencies = [ "bitflags 2.13.1", "chrono", @@ -1918,6 +1925,7 @@ dependencies = [ "hashlink", "libsqlite3-sys", "smallvec 1.15.2", + "sqlite-wasm-rs", ] [[package]] @@ -2182,6 +2190,18 @@ dependencies = [ "winapi", ] +[[package]] +name = "sqlite-wasm-rs" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc3efc0da82635d7e1ced0053bbbfa8c7ab9645d0bf36ceb4f7127bb85315d75" +dependencies = [ + "cc", + "js-sys", + "rsqlite-vfs", + "wasm-bindgen", +] + [[package]] name = "stable_deref_trait" version = "1.2.1" diff --git a/platforms/cli/Cargo.toml b/platforms/cli/Cargo.toml index 207e486f..e2ac9daa 100644 --- a/platforms/cli/Cargo.toml +++ b/platforms/cli/Cargo.toml @@ -41,7 +41,7 @@ clap = { version = "4", features = ["derive"] } # the same versions means Cargo unifies them (no new crates in the lock graph). # rusqlite for the read/write SQL the CLI runs against the engine's DB; the # engine's wider feature set (blob/chrono/limits/modern_sqlite) is unified in. -rusqlite = { version = "0.31", features = ["bundled"] } +rusqlite = { version = "0.40", features = ["bundled"] } serde = { version = "1", features = ["derive"] } serde_json = "1" anyhow = "1" diff --git a/platforms/windows/src/engine/Cargo.toml b/platforms/windows/src/engine/Cargo.toml index 8252a94a..c8394136 100644 --- a/platforms/windows/src/engine/Cargo.toml +++ b/platforms/windows/src/engine/Cargo.toml @@ -40,7 +40,7 @@ uuid = { version = "1", features = ["v4", "serde"] } chrono = { version = "0.4.20", features = ["serde"] } # SQLite. Bundled libsqlite3 + FTS5 for byte-faithful schema parity. -rusqlite = { version = "0.31", features = ["bundled", "blob", "chrono", "limits", "modern_sqlite"] } +rusqlite = { version = "0.40", features = ["bundled", "blob", "chrono", "limits", "modern_sqlite"] } # FTS5 ships in `bundled` since rusqlite 0.31; explicit feature flag isn't needed but documented here. # Logs — structured local-only tracing. Replaces JSONLog.swift. NEVER goes off-device.