Skip to main content

max / audiofiles

Move to rusqlite 0.40 with the rest of the tree The pin comment here was wrong twice over: it blamed a sqlx-sqlite that audiofiles has never depended on, and it described a gate that is now gone. `cargo tree -i libsqlite3-sys` shows one consumer chain, synckit -> rusqlite. Rewritten to say what actually holds the pin, which is that synckit puts rusqlite::Connection in its public API and libsqlite3-sys cannot co-link two versions.
Co-Authored-By
Claude Opus 5 (1M context) <noreply@anthropic.com>
Author: Max Johnson <me@maxj.phd> · 2026-08-08 01:12 UTC
Signed with PGP, not checked
Commit: 583acbbbaa9d96cc03cd181b030fee30febd5a91
Parent: 4cb2262
2 files changed, +29 insertions, -30 deletions
M Cargo.lock +24 -24
@@ -1243,7 +1243,7 @@
1243 1243 "libc",
1244 1244 "option-ext",
1245 1245 "redox_users",
1246 - "windows-sys 0.59.0",
1246 + "windows-sys 0.61.2",
1247 1247 ]
1248 1248
1249 1249 [[package]]
@@ -1554,7 +1554,7 @@
1554 1554 checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
1555 1555 dependencies = [
1556 1556 "libc",
1557 - "windows-sys 0.59.0",
1557 + "windows-sys 0.61.2",
1558 1558 ]
1559 1559
1560 1560 [[package]]
@@ -2249,11 +2249,11 @@
2249 2249
2250 2250 [[package]]
2251 2251 name = "hashlink"
2252 - version = "0.11.1"
2252 + version = "0.12.1"
2253 2253 source = "registry+https://github.com/rust-lang/crates.io-index"
2254 - checksum = "824e001ac4f3012dd16a264bec811403a67ca9deb6c102fc5049b32c4574b35f"
2254 + checksum = "32069d97bb81e38fa67eab65e3393bf804bb85969f2bc06bf13f64aef5aba248"
2255 2255 dependencies = [
2256 - "hashbrown 0.16.1",
2256 + "hashbrown 0.17.1",
2257 2257 ]
2258 2258
2259 2259 [[package]]
@@ -2892,9 +2892,9 @@
2892 2892
2893 2893 [[package]]
2894 2894 name = "libsqlite3-sys"
2895 - version = "0.37.0"
2895 + version = "0.38.1"
2896 2896 source = "registry+https://github.com/rust-lang/crates.io-index"
2897 - checksum = "b1f111c8c41e7c61a49cd34e44c7619462967221a6443b0ec299e0ac30cfb9b1"
2897 + checksum = "f6c19a05435c21ac299d71b6a9c13db3e3f47c520517d58990a462a1397a61db"
2898 2898 dependencies = [
2899 2899 "cc",
2900 2900 "pkg-config",
@@ -3113,7 +3113,7 @@
3113 3113 "once_cell",
3114 3114 "png",
3115 3115 "thiserror 2.0.19",
3116 - "windows-sys 0.60.2",
3116 + "windows-sys 0.61.2",
3117 3117 ]
3118 3118
3119 3119 [[package]]
@@ -3192,7 +3192,7 @@
3192 3192 source = "registry+https://github.com/rust-lang/crates.io-index"
3193 3193 checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5"
3194 3194 dependencies = [
3195 - "windows-sys 0.59.0",
3195 + "windows-sys 0.61.2",
3196 3196 ]
3197 3197
3198 3198 [[package]]
@@ -3295,7 +3295,7 @@
3295 3295 source = "registry+https://github.com/rust-lang/crates.io-index"
3296 3296 checksum = "680998035259dcfcafe653688bf2aa6d3e2dc05e98be6ab46afb089dc84f1df8"
3297 3297 dependencies = [
3298 - "proc-macro-crate 1.3.1",
3298 + "proc-macro-crate 3.5.0",
3299 3299 "proc-macro2",
3300 3300 "quote",
3301 3301 "syn 2.0.119",
@@ -4385,9 +4385,9 @@
4385 4385
4386 4386 [[package]]
4387 4387 name = "rusqlite"
4388 - version = "0.39.0"
4388 + version = "0.40.1"
4389 4389 source = "registry+https://github.com/rust-lang/crates.io-index"
4390 - checksum = "a0d2b0146dd9661bf67bb107c0bb2a55064d556eeb3fc314151b957f313bcd4e"
4390 + checksum = "11438310b19e3109b6446c33d1ed5e889428cf2e278407bc7896bc4aaea43323"
4391 4391 dependencies = [
4392 4392 "bitflags 2.13.1",
4393 4393 "fallible-iterator",
@@ -4456,7 +4456,7 @@
4456 4456 "errno",
4457 4457 "libc",
4458 4458 "linux-raw-sys 0.12.1",
4459 - "windows-sys 0.59.0",
4459 + "windows-sys 0.61.2",
4460 4460 ]
4461 4461
4462 4462 [[package]]
@@ -4513,7 +4513,7 @@
4513 4513 "security-framework",
4514 4514 "security-framework-sys",
4515 4515 "webpki-root-certs",
4516 - "windows-sys 0.59.0",
4516 + "windows-sys 0.61.2",
4517 4517 ]
4518 4518
4519 4519 [[package]]
@@ -4903,7 +4903,7 @@
4903 4903 checksum = "c3d1e2c7f27f8d4cb10542a02c49005dbd6e93095799d6f3be745fae9f8fedd4"
4904 4904 dependencies = [
4905 4905 "libc",
4906 - "windows-sys 0.60.2",
4906 + "windows-sys 0.61.2",
4907 4907 ]
4908 4908
4909 4909 [[package]]
@@ -5473,10 +5473,10 @@
5473 5473 checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd"
5474 5474 dependencies = [
5475 5475 "fastrand",
5476 - "getrandom 0.3.4",
5476 + "getrandom 0.4.3",
5477 5477 "once_cell",
5478 5478 "rustix 1.1.4",
5479 - "windows-sys 0.59.0",
5479 + "windows-sys 0.61.2",
5480 5480 ]
5481 5481
5482 5482 [[package]]
@@ -5884,7 +5884,7 @@
5884 5884 "once_cell",
5885 5885 "png",
5886 5886 "thiserror 2.0.19",
5887 - "windows-sys 0.60.2",
5887 + "windows-sys 0.61.2",
5888 5888 ]
5889 5889
5890 5890 [[package]]
@@ -5916,7 +5916,7 @@
5916 5916 dependencies = [
5917 5917 "memoffset",
5918 5918 "tempfile",
5919 - "windows-sys 0.60.2",
5919 + "windows-sys 0.61.2",
5920 5920 ]
5921 5921
5922 5922 [[package]]
@@ -6490,7 +6490,7 @@
6490 6490 source = "registry+https://github.com/rust-lang/crates.io-index"
6491 6491 checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
6492 6492 dependencies = [
6493 - "windows-sys 0.59.0",
6493 + "windows-sys 0.61.2",
6494 6494 ]
6495 6495
6496 6496 [[package]]
@@ -7297,6 +7297,10 @@
7297 7297 "winnow 1.0.4",
7298 7298 ]
7299 7299
7300 + [[patch.unused]]
7301 + name = "docengine"
7302 + version = "0.4.0"
7303 +
7300 7304 [[patch.unused]]
7301 7305 name = "kberg"
7302 7306 version = "0.1.0"
@@ -7304,7 +7308,3 @@
7304 7308 [[patch.unused]]
7305 7309 name = "painhours"
7306 7310 version = "0.1.0"
7307 -
7308 - [[patch.unused]]
7309 - name = "docengine"
7310 - version = "0.4.0"
M Cargo.toml +5 -6
@@ -18,12 +18,11 @@
18 18 egui_extras = { version = "0.35", default-features = false }
19 19 eframe = { version = "0.35", default-features = false, features = ["default_fonts", "glow"] }
20 20 cpal = "0.18"
21 - # Pinned to 0.39 deliberately: 0.39 uses libsqlite3-sys 0.37, matching the
22 - # sqlx-sqlite 0.9 that synckit-client's SyncStore pulls in (it caps libsqlite3-sys
23 - # at <0.38, so both share one 0.37). rusqlite 0.40 moves to libsqlite3-sys 0.38,
24 - # which co-links a second version and fails the build. Hold at 0.39 until
25 - # sqlx-sqlite raises its libsqlite3-sys ceiling. (0.39 still provides u64: FromSql.)
26 - rusqlite = { version = "0.39", features = ["bundled", "functions"] }
21 + # Keep this in step with synckit, which puts `rusqlite::Connection` in its public
22 + # API: a version here that disagrees with synckit-client's co-links two
23 + # libsqlite3-sys and fails the build rather than merely warning. The whole tree
24 + # moved to 0.40 together on 2026-08-07 -- see wiki `sql-library-standard`.
25 + rusqlite = { version = "0.40", features = ["bundled", "functions"] }
27 26 thiserror = "2.0.18"
28 27 sha2 = "0.11.0"
29 28 hex = "0.4.3"