Skip to content

Commit 95a41c7

Browse files
runonthespotclaude
andcommitted
fix(deps): pin ort to =2.0.0-rc.11 so cargo install doesn't break
Reported by @gianpaj after trying \`cargo install ck-search\` on 0.7.6: 36 errors cascading out of ck-embed::mixedbread, all of the form "cannot convert ort::Error<SessionBuilder> to anyhow::Error". Root cause: cargo install (without --locked) ignores Cargo.lock and re-solves dependencies from scratch. Our \`ort = "2.0.0-rc.11"\` is a caret range that lets cargo pick 2.0.0-rc.12. rc.12 made SessionOptionsPointer wrap a NonNull<OrtSessionOptions> which is !Sync, which propagates up: SessionBuilder is no longer Sync, so ort::Error<SessionBuilder> is no longer Send+Sync, so it can't be ?-converted into anyhow::Error (which requires both). Workaround for users: \`cargo install ck-search --locked\` honors the published lockfile. But that's a footgun we shouldn't ship with. Real fix: pin to \`=2.0.0-rc.11\` exact so any resolution path picks the version we tested against. Follow-up: evaluate rc.12 upgrade separately — likely needs ck-embed::mixedbread to map ort errors manually via .map_err instead of relying on `From` blanket impl. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent d94cf3f commit 95a41c7

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,13 @@ base64 = "0.22"
7272
sha2 = "0.10"
7373
hf-hub = { version = "0.4.3", default-features = false, features = ["ureq"] }
7474
tokenizers = "0.20.1"
75-
ort = { version = "2.0.0-rc.11", default-features = false, features = ["download-binaries", "tls-native", "ndarray", "std"] }
75+
# Pinned exactly to rc.11. ort 2.0.0-rc.12 made SessionOptionsPointer
76+
# !Sync, which removes Send+Sync from ort::Error<SessionBuilder> and
77+
# breaks `?`-conversion into anyhow::Error throughout ck-embed::mixedbread.
78+
# Without the `=` pin, a fresh `cargo install ck-search` (no --locked)
79+
# upgrades to rc.12 and 36 errors cascade. See:
80+
# https://github.com/BeaconBay/ck/pull/<TODO> for follow-up to evaluate rc.12.
81+
ort = { version = "=2.0.0-rc.11", default-features = false, features = ["download-binaries", "tls-native", "ndarray", "std"] }
7682
once_cell = "1.19"
7783
ndarray = { version = "0.17", default-features = false, features = ["std"] }
7884
num_cpus = "1.16"

0 commit comments

Comments
 (0)