From 4b82fa82a76a07944a32f74dfd2e4e668af62150 Mon Sep 17 00:00:00 2001 From: thesimplekid Date: Sun, 29 Jun 2025 17:15:38 +0100 Subject: [PATCH] chore: release summary --- CHANGELOG.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index bcf918f2..8f6db7ad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,30 @@ + + ## [0.11.0](https://github.com/cashubtc/cdk/releases/tag/v0.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](https://github.com/cashubtc/cdk/pull/802) ([thesimplekid]). - Support for Keyset v2 [PR](https://github.com/cashubtc/cdk/pull/702) ([lollerfirst]).