CW-875 BackupServiceV3 (#2064)

* implement v3 backup system

- Add new BackupServiceV3 with chunked backup support and checksums
- Implement json-based metadata in backup system
- Instead of binary file export a .zip file that user can open and
see that it is a cake backup
(should also prevent 3rd party software from corrupting binary
data inside of the file, in case it doesn't checksum will fail,
and user will know for sure that backup got corrupted)
- Update flutter to 3.27.4 to use archive ^4.x.x (it offers in memory
archive operations)

* fix wallets not getting restored properly

* prevent out of memory errors on files that are way too big during restore

* Update lib/view_model/backup_view_model.dart [skip ci]

* Update lib/core/backup_service.dart [skip ci]

* Update lib/core/backup_service.dart

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
This commit is contained in:
cyan 2025-03-22 02:16:54 +01:00 committed by GitHub
parent a085eff984
commit 102ab8dbe6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
36 changed files with 1193 additions and 807 deletions

View file

@ -45,7 +45,7 @@ dependencies:
url: https://github.com/MrCyjaneK/uni_links
ref: 8e9efa4d9beb19e4ac44009576337f1ce51c22e2
path: uni_links
lottie: ^1.3.0
lottie: ^3.3.1
animate_do: ^2.1.0
cupertino_icons: ^1.0.5
encrypt: 5.0.2
@ -57,13 +57,13 @@ dependencies:
connectivity_plus: ^5.0.2
keyboard_actions: ^4.0.1
another_flushbar: ^1.12.29
archive: ^3.3.0
archive: ^4.0.3
cryptography: ^2.0.5
file_picker:
git:
url: https://github.com/cake-tech/flutter_file_picker.git
ref: master
permission_handler: ^10.0.0
ref: c414574bc5ac349450f601e7f72c7b9f31b4d087
permission_handler: 11.4.0
device_display_brightness:
git:
url: https://github.com/MrCyjaneK/device_display_brightness.git
@ -72,7 +72,7 @@ dependencies:
flutter_mailer:
git:
url: https://github.com/taljacobson/flutter_mailer
ref: 2a7d04d61f56e1ca166ab42e91e0daf1bfddfaf2
ref: 9c4ed111a9151a2bbfb9afe2c18a37599c6f84f3
device_info_plus: ^9.1.0
base32: 2.1.3
in_app_review: ^2.0.6
@ -96,7 +96,7 @@ dependencies:
git:
url: https://github.com/cake-tech/ens_dart.git
ref: main
fluttertoast: 8.2.8
fluttertoast: 8.2.12
# tor:
# git:
# url: https://github.com/cake-tech/tor.git
@ -142,7 +142,6 @@ dev_dependencies:
git:
url: https://github.com/cake-tech/google-translator.git
version: 1.0.0
archive: ^3.6.1
dependency_overrides:
bech32: