github cashubtc/cdk v0.11.0

latest releases: v0.12.1, v0.12.0, v0.11.1...
2 months ago

0.11.0

Summary

Version 0.11.0 brings significant architectural changes to enhance database reliability and performance. The major changes include:

  1. Database Engine Change: Replaced sqlx with rusqlite as the SQLite database driver and removed support for redb. This change provides better performance and reliability for database operations.

  2. Transaction Management: Introduced robust database transaction support that encapsulates all database changes. The new Transaction trait implements a rollback operation on Drop unless explicitly committed, ensuring data integrity.

  3. Race Condition Prevention: Added READ-and-lock operations to securely read and lock records from the database for exclusive access, preventing race conditions in concurrent operations.

⚠️ Important Migration Note for redb Users

If you are currently running a mint with redb, you must migrate to SQLite before upgrading to v0.11. Follow these steps:

  1. Stop your current mint
  2. Back up your database
  3. Use the migration script available at: https://github.com/cashubtc/cdk/blob/main/misc/convert_redb_to_sqlite.sh
  4. Update your config file to target the SQLite database engine
  5. Start your mint with v0.11

Added

  • cdk-lnbits: Support lnbits v1 and pre-v1 PR ([thesimplekid]).
  • Support for Keyset v2 PR ([lollerfirst]).
  • Add option to limit the token size of a send PR ([davidcaseria]).
  • Database transaction support PR ([crodas]).
  • Support for multsig refund PR ([thesimplekid]).
  • Convert unit helper fn PR ([davidcaseria]).

Changed

  • cdk-sqlite: remove sqlx in favor of rusqlite ([crodas]).
  • cdk-lnd: use custom tonic gRPC instead of fedimint-tonic-grpc PR ([thesimplekid]).
  • cdk-cln: remove the us of mutex on cln client PR ([thesimplekid]).

Fixed

  • mint start up check was not checking unpaid quotes PR ([gudnuf]).
  • Naming of blinded_message column on blind_signatures was y PR ([thesimplekid]).
  • cdk-cli: Create wallets for non sat units if supported PR ([thesimplekid]).

Removed

  • cdk-redb support for the mint PR ([thesimplekid]).
  • cdk-sqlite remove unused melt_request table PR ([crodas])

New Contributors

Full Changelog: v0.10.0...v0.11.0

Don't miss a new cdk release

NewReleases is sending notifications on new releases.