From d6426dc1b67a3030c6ed60e6bf74d875a4a13ca7 Mon Sep 17 00:00:00 2001 From: link2xt Date: Sat, 1 Apr 2023 23:54:29 +0000 Subject: [PATCH 1/3] imex: run migrations after receiving a transferred backup Similarly to how `imex_inner()` runs migrations after successful call to `import_backup()`, migrations should be run after receiving a backup using `transfer_from_provider()`. --- CHANGELOG.md | 6 ++++++ src/imex/transfer.rs | 1 + 2 files changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 658c13925..76659da70 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 1.112.5 - unrelesaed + +### Fixes + +- Run SQL database migrations after receiving a backup from the network. #4287 + ## [1.112.4] - 2023-03-31 ### Fixes diff --git a/src/imex/transfer.rs b/src/imex/transfer.rs index 6156628a6..a9e7ff739 100644 --- a/src/imex/transfer.rs +++ b/src/imex/transfer.rs @@ -408,6 +408,7 @@ async fn get_backup_inner(context: &Context, qr: Qr) -> Result<()> { match transfer_from_provider(context, &ticket).await { Ok(()) => { delete_and_reset_all_device_msgs(context).await?; + context.sql.run_migrations(context).await?; context.emit_event(ReceiveProgress::Completed.into()); Ok(()) } From f6d27516cb7dce521dd128502f5e907f95284638 Mon Sep 17 00:00:00 2001 From: link2xt Date: Sun, 2 Apr 2023 08:12:23 +0000 Subject: [PATCH 2/3] Run migrations before delete_and_reset_all_device_msgs() Both when importing a backup from file or receiving it over the network. --- src/imex.rs | 4 ++-- src/imex/transfer.rs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/imex.rs b/src/imex.rs index 885187cae..3b0846e3b 100644 --- a/src/imex.rs +++ b/src/imex.rs @@ -397,8 +397,7 @@ async fn imex_inner( export_backup(context, path, passphrase.unwrap_or_default()).await } ImexMode::ImportBackup => { - import_backup(context, path, passphrase.unwrap_or_default()).await?; - context.sql.run_migrations(context).await + import_backup(context, path, passphrase.unwrap_or_default()).await } } } @@ -474,6 +473,7 @@ async fn import_backup( } } + context.sql.run_migrations(context).await?; delete_and_reset_all_device_msgs(context).await?; Ok(()) diff --git a/src/imex/transfer.rs b/src/imex/transfer.rs index a9e7ff739..e2a257511 100644 --- a/src/imex/transfer.rs +++ b/src/imex/transfer.rs @@ -407,8 +407,8 @@ async fn get_backup_inner(context: &Context, qr: Qr) -> Result<()> { match transfer_from_provider(context, &ticket).await { Ok(()) => { - delete_and_reset_all_device_msgs(context).await?; context.sql.run_migrations(context).await?; + delete_and_reset_all_device_msgs(context).await?; context.emit_event(ReceiveProgress::Completed.into()); Ok(()) } From c9879f863bc9a30ec61ef3bb0b675d9fcfe620e9 Mon Sep 17 00:00:00 2001 From: link2xt Date: Sun, 2 Apr 2023 09:47:29 +0000 Subject: [PATCH 3/3] Prepare 1.112.5 release --- CHANGELOG.md | 3 ++- Cargo.lock | 10 +++++----- Cargo.toml | 2 +- deltachat-ffi/Cargo.toml | 2 +- deltachat-jsonrpc/Cargo.toml | 2 +- deltachat-jsonrpc/typescript/package.json | 2 +- deltachat-repl/Cargo.toml | 2 +- deltachat-rpc-server/Cargo.toml | 2 +- package.json | 2 +- 9 files changed, 14 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 76659da70..4073efa8b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## 1.112.5 - unrelesaed +## [1.112.5] - 2023-04-02 ### Fixes @@ -2362,3 +2362,4 @@ https://github.com/deltachat/deltachat-core-rust/pulls?q=is%3Apr+is%3Aclosed [1.112.2]: https://github.com/deltachat/deltachat-core-rust/compare/v1.112.1...v1.112.2 [1.112.3]: https://github.com/deltachat/deltachat-core-rust/compare/v1.112.2...v1.112.3 [1.112.4]: https://github.com/deltachat/deltachat-core-rust/compare/v1.112.3...v1.112.4 +[1.112.5]: https://github.com/deltachat/deltachat-core-rust/compare/v1.112.4...v1.112.5 diff --git a/Cargo.lock b/Cargo.lock index 8e1805f19..2aeaff170 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1061,7 +1061,7 @@ dependencies = [ [[package]] name = "deltachat" -version = "1.112.4" +version = "1.112.5" dependencies = [ "ansi_term", "anyhow", @@ -1135,7 +1135,7 @@ dependencies = [ [[package]] name = "deltachat-jsonrpc" -version = "1.112.4" +version = "1.112.5" dependencies = [ "anyhow", "async-channel", @@ -1158,7 +1158,7 @@ dependencies = [ [[package]] name = "deltachat-repl" -version = "1.112.4" +version = "1.112.5" dependencies = [ "ansi_term", "anyhow", @@ -1173,7 +1173,7 @@ dependencies = [ [[package]] name = "deltachat-rpc-server" -version = "1.112.4" +version = "1.112.5" dependencies = [ "anyhow", "deltachat", @@ -1197,7 +1197,7 @@ dependencies = [ [[package]] name = "deltachat_ffi" -version = "1.112.4" +version = "1.112.5" dependencies = [ "anyhow", "deltachat", diff --git a/Cargo.toml b/Cargo.toml index f47a1c1a7..9ff90b60f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat" -version = "1.112.4" +version = "1.112.5" edition = "2021" license = "MPL-2.0" rust-version = "1.64" diff --git a/deltachat-ffi/Cargo.toml b/deltachat-ffi/Cargo.toml index 28e3e8f0a..bdac367da 100644 --- a/deltachat-ffi/Cargo.toml +++ b/deltachat-ffi/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat_ffi" -version = "1.112.4" +version = "1.112.5" description = "Deltachat FFI" edition = "2018" readme = "README.md" diff --git a/deltachat-jsonrpc/Cargo.toml b/deltachat-jsonrpc/Cargo.toml index 80ebe0b71..5a4504924 100644 --- a/deltachat-jsonrpc/Cargo.toml +++ b/deltachat-jsonrpc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat-jsonrpc" -version = "1.112.4" +version = "1.112.5" description = "DeltaChat JSON-RPC API" edition = "2021" default-run = "deltachat-jsonrpc-server" diff --git a/deltachat-jsonrpc/typescript/package.json b/deltachat-jsonrpc/typescript/package.json index c75c62be3..5121a87e2 100644 --- a/deltachat-jsonrpc/typescript/package.json +++ b/deltachat-jsonrpc/typescript/package.json @@ -55,5 +55,5 @@ }, "type": "module", "types": "dist/deltachat.d.ts", - "version": "1.112.4" + "version": "1.112.5" } diff --git a/deltachat-repl/Cargo.toml b/deltachat-repl/Cargo.toml index a830272dd..91a72738e 100644 --- a/deltachat-repl/Cargo.toml +++ b/deltachat-repl/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat-repl" -version = "1.112.4" +version = "1.112.5" license = "MPL-2.0" edition = "2021" diff --git a/deltachat-rpc-server/Cargo.toml b/deltachat-rpc-server/Cargo.toml index c13ccea4d..c06856bbe 100644 --- a/deltachat-rpc-server/Cargo.toml +++ b/deltachat-rpc-server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat-rpc-server" -version = "1.112.4" +version = "1.112.5" description = "DeltaChat JSON-RPC server" edition = "2021" readme = "README.md" diff --git a/package.json b/package.json index 71d20d605..a06a0c3f5 100644 --- a/package.json +++ b/package.json @@ -60,5 +60,5 @@ "test:mocha": "mocha -r esm node/test/test.js --growl --reporter=spec --bail --exit" }, "types": "node/dist/index.d.ts", - "version": "1.112.4" + "version": "1.112.5" }