Embedding compatibility: CDK version pin and MSRV #9

Closed
opened 2026-10-09 11:20:34 +00:00 by thesimplekid · 1 comment
Owner

Summary

satsettle pins cdk = "=0.18.0" from crates.io and requires Rust 1.95 and edition 2024. An application that already depends on CDK, for example a git revision on 0.18.1, ends up with two CDK copies. cdk-common types are then incompatible across them, and the application cannot pass its own wallet or database in (#6).

Suggestion

  • Use >=0.18.0, <0.19, or a caret requirement, instead of =0.18.0, so the application's resolution or [patch] picks one CDK.
  • Document the supported CDK range, and test against the latest 0.18.x in CI.
  • Consider an MSRV of 1.94 if nothing needs 1.95. Otherwise state the reason, so applications can plan toolchain bumps.
## Summary satsettle pins `cdk = "=0.18.0"` from crates.io and requires Rust 1.95 and edition 2024. An application that already depends on CDK, for example a git revision on 0.18.1, ends up with two CDK copies. `cdk-common` types are then incompatible across them, and the application cannot pass its own wallet or database in (#6). ## Suggestion - Use `>=0.18.0, <0.19`, or a caret requirement, instead of `=0.18.0`, so the application's resolution or `[patch]` picks one CDK. - Document the supported CDK range, and test against the latest 0.18.x in CI. - Consider an MSRV of 1.94 if nothing needs 1.95. Otherwise state the reason, so applications can plan toolchain bumps.
Author
Owner

Related: #2 and #3 (caller-provided wallets). Passing in a wallet only works if satsettle and the application resolve to the same CDK version, which is what the version-range change here addresses.

Related: #2 and #3 (caller-provided wallets). Passing in a wallet only works if satsettle and the application resolve to the same CDK version, which is what the version-range change here addresses.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
thesimplekid/satsettle#9
No description provided.