From 772f695872fd3134c7e06d9467084a4baaf14db6 Mon Sep 17 00:00:00 2001 From: cyan Date: Mon, 8 Jun 2026 15:06:29 +0200 Subject: [PATCH 1/4] fix: uri.parse throwing on invalid node address (#3314) --- cw_core/lib/node.dart | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cw_core/lib/node.dart b/cw_core/lib/node.dart index b7f2703b8..24346fae0 100644 --- a/cw_core/lib/node.dart +++ b/cw_core/lib/node.dart @@ -268,6 +268,15 @@ class Node { bool get useSocksProxy => socksProxyAddress == null ? false : socksProxyAddress!.isNotEmpty; Uri get uri { + try { + return _uri; + } catch (e) { + printV(e); + return Uri(); + } + } + + Uri get _uri { switch (type) { case WalletType.monero: case WalletType.zcash: From 259c5164c272b0d5b69d9ff6168cb0c4b3392b58 Mon Sep 17 00:00:00 2001 From: Omar Hatem Date: Mon, 8 Jun 2026 16:08:38 +0200 Subject: [PATCH 2/4] v6.2.1 (#3312) * Trezor enhancements Enable letsExchange Fix share on iPad * Trezor enhancements Enable letsExchange Fix share on iPad * Trezor enhancements Enable letsExchange Fix share on iPad --- cw_core/lib/node_legacy.dart | 9 +++++++++ scripts/android/app_env.sh | 8 ++++---- scripts/ios/app_env.sh | 8 ++++---- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/cw_core/lib/node_legacy.dart b/cw_core/lib/node_legacy.dart index 3c39b6f90..54d9340ac 100644 --- a/cw_core/lib/node_legacy.dart +++ b/cw_core/lib/node_legacy.dart @@ -165,6 +165,15 @@ class Node extends HiveObject with Keyable { bool get useSocksProxy => socksProxyAddress == null ? false : socksProxyAddress!.isNotEmpty; Uri get uri { + try { + return _uri; + } catch (e) { + printV(e); + return Uri(); + } + } + + Uri get _uri { switch (type) { case WalletType.monero: case WalletType.zcash: diff --git a/scripts/android/app_env.sh b/scripts/android/app_env.sh index 7d919e420..bac26a104 100644 --- a/scripts/android/app_env.sh +++ b/scripts/android/app_env.sh @@ -14,15 +14,15 @@ TYPES=($MONERO_COM $CAKEWALLET) APP_ANDROID_TYPE=$1 MONERO_COM_NAME="Monero.com" -MONERO_COM_VERSION="6.2.0" -MONERO_COM_BUILD_NUMBER=4159 +MONERO_COM_VERSION="6.2.1" +MONERO_COM_BUILD_NUMBER=4161 MONERO_COM_BUNDLE_ID="com.monero.app" MONERO_COM_PACKAGE="com.monero.app" MONERO_COM_SCHEME="monero.com" CAKEWALLET_NAME="Cake Wallet" -CAKEWALLET_VERSION="6.2.0" -CAKEWALLET_BUILD_NUMBER=4411 +CAKEWALLET_VERSION="6.2.1" +CAKEWALLET_BUILD_NUMBER=4413 CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet" CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet" CAKEWALLET_SCHEME="cakewallet" diff --git a/scripts/ios/app_env.sh b/scripts/ios/app_env.sh index 1ccac45a8..a8d022d9b 100644 --- a/scripts/ios/app_env.sh +++ b/scripts/ios/app_env.sh @@ -12,13 +12,13 @@ TYPES=($MONERO_COM $CAKEWALLET) APP_IOS_TYPE=$1 MONERO_COM_NAME="Monero.com" -MONERO_COM_VERSION="6.2.0" -MONERO_COM_BUILD_NUMBER=165 +MONERO_COM_VERSION="6.2.1" +MONERO_COM_BUILD_NUMBER=167 MONERO_COM_BUNDLE_ID="com.cakewallet.monero" CAKEWALLET_NAME="Cake Wallet" -CAKEWALLET_VERSION="6.2.0" -CAKEWALLET_BUILD_NUMBER=421 +CAKEWALLET_VERSION="6.2.1" +CAKEWALLET_BUILD_NUMBER=423 CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet" From 879eb9193c0f3008fd0d4fc167f010604a0c634b Mon Sep 17 00:00:00 2001 From: cyan Date: Mon, 8 Jun 2026 23:58:56 +0200 Subject: [PATCH 3/4] fix: uri.parse throwing on invalid node address (#3315) Co-authored-by: Omar Hatem From f462f0a2d73a66b0b5c5330e1ec5587413ea54ba Mon Sep 17 00:00:00 2001 From: David Adegoke <64401859+Blazebrain@users.noreply.github.com> Date: Mon, 8 Jun 2026 23:01:44 +0100 Subject: [PATCH 4/4] tentative fix for evm wallet creation issue after backup restore (#3316) --- .../services/walletkit_service.dart | 7 +++++-- lib/store/app_store.dart | 18 +++++++++++++++--- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/lib/src/screens/wallet_connect/services/walletkit_service.dart b/lib/src/screens/wallet_connect/services/walletkit_service.dart index 7d5a0ca67..a758b8b9c 100644 --- a/lib/src/screens/wallet_connect/services/walletkit_service.dart +++ b/lib/src/screens/wallet_connect/services/walletkit_service.dart @@ -132,7 +132,10 @@ abstract class WalletKitServiceBase with Store { debugPrint('Intializing walletKit'); if (!isInitialized) { try { - await _walletKit.init(); + await _walletKit.init().timeout( + const Duration(seconds: 8), + onTimeout: () => throw TimeoutException('walletKit init timed out'), + ); debugPrint('Initialized'); isInitialized = true; } catch (e) { @@ -206,7 +209,7 @@ abstract class WalletKitServiceBase with Store { name: 'accountsChanged', data: [chain.publicKey], ), - ); + ).timeout(const Duration(seconds: 3)); } } on ReownSignError catch (e) { if (e.code == 6) { diff --git a/lib/store/app_store.dart b/lib/store/app_store.dart index dd41fe948..70ff844d8 100644 --- a/lib/store/app_store.dart +++ b/lib/store/app_store.dart @@ -1,3 +1,5 @@ +import 'dart:async'; + import 'package:cake_wallet/core/amount_parsing_proxy.dart'; import 'package:cake_wallet/di.dart'; import 'package:cake_wallet/entities/preferences_key.dart'; @@ -6,6 +8,7 @@ import 'package:cake_wallet/src/screens/wallet_connect/services/walletkit_servic import 'package:cake_wallet/themes/core/theme_store.dart'; import 'package:cake_wallet/utils/exception_handler.dart'; import 'package:cw_core/transaction_info.dart'; +import 'package:cw_core/utils/print_verbose.dart'; import 'package:cw_core/wallet_type.dart'; import 'package:mobx/mobx.dart'; import 'package:cw_core/balance.dart'; @@ -63,13 +66,22 @@ abstract class AppStoreBase with Store { this.wallet!.setExceptionHandler(ExceptionHandler.onError); if (isWalletConnectCompatibleChain(wallet.type)) { - await getIt.get().onDispose(); - getIt.get().create(); - await getIt.get().init(); + unawaited(_setupWalletConnect()); } await getIt.get().setString(PreferencesKey.currentWalletName, wallet.name); await getIt .get() .setInt(PreferencesKey.currentWalletType, serializeToInt(wallet.type)); } + + Future _setupWalletConnect() async { + try { + final wcService = getIt.get(); + await wcService.onDispose(); + wcService.create(); + await wcService.init(); + } catch (e, s) { + printV('WalletConnect setup failed: $e\n$s'); + } + } }