v4.8.0 and v1.5.0 (#1021)
* Update versions Add Ethereum to MacOS Fix Ethereum config when building Monero.com * Fix Restore from backup issue * Update app build versions Fix minor UI issue
Omar Hatem committed
Aug 7, 2023 at 14:43 UTC
d1684f5be8e1a11408bc7d179cc6bdcde7178b4e
11 files changed
+73
-49
assets/text/Monerocom_Release_Notes.txt
+8
-6
@@ -1,6 +1,8 @@
1
-Improved edit/delete for nodes and wallets
2
-Wallets can now be renamed
3
-Accessibility improvements
4
-Improve Monero wallet rescan
5
-Additional exchange assets: SHIB, AAVE, ARB, BAT, COMP, CRO, ENS, FTM, FRAX, GUSD, GTC, GRT, LDO, NEXO, CAKE, PEPE, STORJ, TUSD, WBTC, WETH, ZRX, DYDX, STETH
6
-Cake Pay is temporarily removed, see https://cakelabs.com/news/cake-pay-mobile-to-shut-down/
\ No newline at end of file
1
+Monero background syncing! See https://guides.cakewallet.com/docs/monero/#background-syncing
2
+Cake 2FA access control settings! See https://guides.cakewallet.com/docs/advanced-features/authentication/#cake-2fa-presets-and-access-control-settings
3
+Support Monero node proxy
4
+UI improvements when sending to Address Book entry
5
+Allow renaming Monero account names
6
+Send templates now support multiple recipients (try using to make Monero change)
7
+Onramper improvements
8
+Scan node QR codes (for Umbrel)
\ No newline at end of file
assets/text/Release_Notes.txt
+9
-7
@@ -1,7 +1,9 @@
1
-Improved edit/delete for nodes and wallets
2
-Wallets can now be renamed
3
-Accessibility improvements
4
-Bitcoin transaction bug fixes
5
-Improve Monero wallet rescan
6
-Additional exchange assets: SHIB, AAVE, ARB, BAT, COMP, CRO, ENS, FTM, FRAX, GUSD, GTC, GRT, LDO, NEXO, CAKE, PEPE, STORJ, TUSD, WBTC, WETH, ZRX, DYDX, STETH
7
-Cake Pay is temporarily removed, see https://cakelabs.com/news/cake-pay-mobile-to-shut-down/
\ No newline at end of file
1
+Ethereum! Store ETH and ERC-20 tokens
2
+Monero background syncing! See https://guides.cakewallet.com/docs/monero/#background-syncing
3
+Cake 2FA access control settings! See https://guides.cakewallet.com/docs/advanced-features/authentication/#cake-2fa-presets-and-access-control-settings
4
+Support Monero node proxy
5
+UI improvements when sending to Address Book entry
6
+Allow renaming Monero/Haven account names
7
+Send templates now support multiple recipients (try using to make Monero change)
8
+Onramper improvements
9
+Scan node QR codes (for Umbrel)
\ No newline at end of file
ios/Podfile.lock
+13
-1
@@ -134,6 +134,8 @@ PODS:
134
- SDWebImage (5.16.0):
135
- SDWebImage/Core (= 5.16.0)
136
- SDWebImage/Core (5.16.0)
137
+ - sensitive_clipboard (0.0.1):
138
+ - Flutter
139
- share_plus (0.0.1):
140
- Flutter
141
- shared_preferences_foundation (0.0.1):
@@ -150,6 +152,8 @@ PODS:
152
- Flutter
153
- wakelock (0.0.1):
154
- Flutter
155
+ - workmanager (0.0.1):
156
+ - Flutter
157
158
DEPENDENCIES:
159
- barcode_scan2 (from `.symlinks/plugins/barcode_scan2/ios`)
@@ -173,12 +177,14 @@ DEPENDENCIES:
177
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/ios`)
178
- permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`)
179
- platform_device_id (from `.symlinks/plugins/platform_device_id/ios`)
180
+ - sensitive_clipboard (from `.symlinks/plugins/sensitive_clipboard/ios`)
181
- share_plus (from `.symlinks/plugins/share_plus/ios`)
182
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/ios`)
183
- uni_links (from `.symlinks/plugins/uni_links/ios`)
184
- UnstoppableDomainsResolution (~> 4.0.0)
185
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
186
- wakelock (from `.symlinks/plugins/wakelock/ios`)
187
+ - workmanager (from `.symlinks/plugins/workmanager/ios`)
188
189
SPEC REPOS:
190
https://github.com/CocoaPods/Specs.git:
@@ -235,6 +241,8 @@ EXTERNAL SOURCES:
241
:path: ".symlinks/plugins/permission_handler_apple/ios"
242
platform_device_id:
243
:path: ".symlinks/plugins/platform_device_id/ios"
244
+ sensitive_clipboard:
245
+ :path: ".symlinks/plugins/sensitive_clipboard/ios"
246
share_plus:
247
:path: ".symlinks/plugins/share_plus/ios"
248
shared_preferences_foundation:
@@ -245,6 +253,8 @@ EXTERNAL SOURCES:
253
:path: ".symlinks/plugins/url_launcher_ios/ios"
254
wakelock:
255
:path: ".symlinks/plugins/wakelock/ios"
256
+ workmanager:
257
+ :path: ".symlinks/plugins/workmanager/ios"
258
259
SPEC CHECKSUMS:
260
barcode_scan2: 0af2bb63c81b4565aab6cd78278e4c0fa136dbb0
@@ -270,11 +280,12 @@ SPEC CHECKSUMS:
280
MTBBarcodeScanner: f453b33c4b7dfe545d8c6484ed744d55671788cb
281
OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c
282
package_info: 873975fc26034f0b863a300ad47e7f1ac6c7ec62
273
- path_provider_foundation: eaf5b3e458fc0e5fbb9940fb09980e853fe058b8
283
+ path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
284
permission_handler_apple: e76247795d700c14ea09e3a2d8855d41ee80a2e6
285
platform_device_id: 81b3e2993881f87d0c82ef151dc274df4869aef5
286
ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825
287
SDWebImage: 2aea163b50bfcb569a2726b6a754c54a4506fcf6
288
+ sensitive_clipboard: d4866e5d176581536c27bb1618642ee83adca986
289
share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68
290
shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126
291
SwiftProtobuf: 40bd808372cb8706108f22d28f8ab4a6b9bc6989
@@ -283,6 +294,7 @@ SPEC CHECKSUMS:
294
UnstoppableDomainsResolution: c3c67f4d0a5e2437cb00d4bd50c2e00d6e743841
295
url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4
296
wakelock: d0fc7c864128eac40eba1617cb5264d9c940b46f
297
+ workmanager: 0afdcf5628bbde6924c21af7836fed07b42e30e6
298
299
PODFILE CHECKSUM: 09df1114e7c360f55770d35a79356bf5446e0100
300
lib/di.dart
+3
-1
@@ -246,7 +246,9 @@ Future setup({
246
getIt.registerSingletonAsync<SharedPreferences>(() => SharedPreferences.getInstance());
247
}
248
249
- getIt.registerFactory(() => BackgroundTasks());
249
+ if (!_isSetupFinished) {
250
+ getIt.registerFactory(() => BackgroundTasks());
251
+ }
252
253
final isBitcoinBuyEnabled = (secrets.wyreSecretKey.isNotEmpty) &&
254
(secrets.wyreApiKey.isNotEmpty) &&
lib/src/screens/dashboard/dashboard_page.dart
+24
-18
@@ -298,24 +298,7 @@ class _DashboardPageView extends BasePage {
298
}
299
});
300
301
- final sharedPrefs = await SharedPreferences.getInstance();
302
- final currentAppVersion =
303
- VersionComparator.getExtendedVersionNumber(dashboardViewModel.settingsStore.appVersion);
304
- final lastSeenAppVersion = sharedPrefs.getInt(PreferencesKey.lastSeenAppVersion);
305
- final isNewInstall = sharedPrefs.getBool(PreferencesKey.isNewInstall);
306
-
307
- if (currentAppVersion != lastSeenAppVersion && !isNewInstall!) {
308
- await Future<void>.delayed(Duration(seconds: 1));
309
- await showPopUp<void>(
310
- context: context,
311
- builder: (BuildContext context) {
312
- return ReleaseNotesScreen(
313
- title: 'Version ${dashboardViewModel.settingsStore.appVersion}');
314
- });
315
- sharedPrefs.setInt(PreferencesKey.lastSeenAppVersion, currentAppVersion);
316
- } else if (isNewInstall!) {
317
- sharedPrefs.setInt(PreferencesKey.lastSeenAppVersion, currentAppVersion);
318
- }
301
+ _showReleaseNotesPopup(context);
302
303
var needToPresentYat = false;
304
var isInactive = false;
@@ -341,4 +324,27 @@ class _DashboardPageView extends BasePage {
324
needToPresentYat = true;
325
});
326
}
327
+
328
+ void _showReleaseNotesPopup(BuildContext context) async {
329
+ final sharedPrefs = await SharedPreferences.getInstance();
330
+ final currentAppVersion =
331
+ VersionComparator.getExtendedVersionNumber(dashboardViewModel.settingsStore.appVersion);
332
+ final lastSeenAppVersion = sharedPrefs.getInt(PreferencesKey.lastSeenAppVersion);
333
+ final isNewInstall = sharedPrefs.getBool(PreferencesKey.isNewInstall);
334
+
335
+ if (currentAppVersion != lastSeenAppVersion && !isNewInstall!) {
336
+ Future<void>.delayed(Duration(seconds: 1), () {
337
+ showPopUp<void>(
338
+ context: context,
339
+ builder: (BuildContext context) {
340
+ return ReleaseNotesScreen(
341
+ title: 'Version ${dashboardViewModel.settingsStore.appVersion}');
342
+ });
343
+ });
344
+
345
+ sharedPrefs.setInt(PreferencesKey.lastSeenAppVersion, currentAppVersion);
346
+ } else if (isNewInstall!) {
347
+ sharedPrefs.setInt(PreferencesKey.lastSeenAppVersion, currentAppVersion);
348
+ }
349
+ }
350
}
macos/Podfile.lock
+2
-2
@@ -110,13 +110,13 @@ SPEC CHECKSUMS:
110
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
111
in_app_review: a850789fad746e89bce03d4aeee8078b45a53fd0
112
package_info: 6eba2fd8d3371dda2d85c8db6fe97488f24b74b2
113
- path_provider_foundation: eaf5b3e458fc0e5fbb9940fb09980e853fe058b8
113
+ path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
114
platform_device_id: 3e414428f45df149bbbfb623e2c0ca27c545b763
115
platform_device_id_macos: f763bb55f088be804d61b96eb4710b8ab6598e94
116
ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825
117
share_plus_macos: 853ee48e7dce06b633998ca0735d482dd671ade4
118
shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126
119
- url_launcher_macos: 5335912b679c073563f29d89d33d10d459f95451
119
+ url_launcher_macos: d2691c7dd33ed713bf3544850a623080ec693d95
120
wakelock_macos: bc3f2a9bd8d2e6c89fee1e1822e7ddac3bd004a9
121
122
PODFILE CHECKSUM: 5107934592df7813b33d744aebc8ddc6b5a5445f
scripts/android/app_env.sh
+4
-4
@@ -14,14 +14,14 @@ TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
14
APP_ANDROID_TYPE=$1
15
16
MONERO_COM_NAME="Monero.com"
17
-MONERO_COM_VERSION="1.4.0"
18
-MONERO_COM_BUILD_NUMBER=52
17
+MONERO_COM_VERSION="1.5.0"
18
+MONERO_COM_BUILD_NUMBER=54
19
MONERO_COM_BUNDLE_ID="com.monero.app"
20
MONERO_COM_PACKAGE="com.monero.app"
21
22
CAKEWALLET_NAME="Cake Wallet"
23
-CAKEWALLET_VERSION="4.7.0"
24
-CAKEWALLET_BUILD_NUMBER=162
23
+CAKEWALLET_VERSION="4.8.0"
24
+CAKEWALLET_BUILD_NUMBER=167
25
CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet"
26
CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet"
27
scripts/ios/app_env.sh
+4
-4
@@ -13,13 +13,13 @@ TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
13
APP_IOS_TYPE=$1
14
15
MONERO_COM_NAME="Monero.com"
16
-MONERO_COM_VERSION="1.4.0"
17
-MONERO_COM_BUILD_NUMBER=50
16
+MONERO_COM_VERSION="1.5.0"
17
+MONERO_COM_BUILD_NUMBER=52
18
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
19
20
CAKEWALLET_NAME="Cake Wallet"
21
-CAKEWALLET_VERSION="4.7.0"
22
-CAKEWALLET_BUILD_NUMBER=165
21
+CAKEWALLET_VERSION="4.8.0"
22
+CAKEWALLET_BUILD_NUMBER=175
23
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
24
25
HAVEN_NAME="Haven"
scripts/macos/app_config.sh
+1
-1
@@ -23,7 +23,7 @@ CONFIG_ARGS=""
23
24
case $APP_MACOS_TYPE in
25
$CAKEWALLET)
26
- CONFIG_ARGS="--monero --bitcoin";; #--haven
26
+ CONFIG_ARGS="--monero --bitcoin --ethereum";; #--haven
27
esac
28
29
cp -rf pubspec_description.yaml pubspec.yaml
scripts/macos/app_env.sh
+2
-2
@@ -15,8 +15,8 @@ if [ -n "$1" ]; then
15
fi
16
17
CAKEWALLET_NAME="Cake Wallet"
18
-CAKEWALLET_VERSION="1.0.7"
19
-CAKEWALLET_BUILD_NUMBER=26
18
+CAKEWALLET_VERSION="1.1.0"
19
+CAKEWALLET_BUILD_NUMBER=28
20
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
21
22
if ! [[ " ${TYPES[*]} " =~ " ${APP_MACOS_TYPE} " ]]; then
tool/configure.dart
+3
-3
@@ -477,8 +477,6 @@ Future<void> generateEthereum(bool hasImplementation) async {
477
478
final outputFile = File(ethereumOutputPath);
479
const ethereumCommonHeaders = """
480
-""";
481
- const ethereumCWHeaders = """
480
import 'package:cake_wallet/view_model/send/output.dart';
481
import 'package:cw_core/crypto_amount_format.dart';
482
import 'package:cw_core/crypto_currency.dart';
@@ -490,6 +488,9 @@ import 'package:cw_core/wallet_base.dart';
488
import 'package:cw_core/wallet_credentials.dart';
489
import 'package:cw_core/wallet_info.dart';
490
import 'package:cw_core/wallet_service.dart';
491
+import 'package:hive/hive.dart';
492
+""";
493
+ const ethereumCWHeaders = """
494
import 'package:cw_ethereum/ethereum_formatter.dart';
495
import 'package:cw_ethereum/ethereum_mnemonics.dart';
496
import 'package:cw_ethereum/ethereum_transaction_credentials.dart';
@@ -498,7 +499,6 @@ import 'package:cw_ethereum/ethereum_wallet.dart';
499
import 'package:cw_ethereum/ethereum_wallet_creation_credentials.dart';
500
import 'package:cw_ethereum/ethereum_wallet_service.dart';
501
import 'package:cw_ethereum/ethereum_transaction_priority.dart';
501
-import 'package:hive/hive.dart';
502
""";
503
const ethereumCwPart = "part 'cw_ethereum.dart';";
504
const ethereumContent = """