- update breez package - minor fixes
What changed, and why it matters
This commit is a routine maintenance update. It upgrades the Breez Lightning package from an old Cake Tech fork to the official upstream v0.11.0, removes a now-redundant local copy of a configuration helper, fixes a couple of minor UI crashes (a null widget context and a missing node label), and renames the macOS app build target from 'Monero.com.app' to 'Cake Wallet.app'. There is no clear security fix or vulnerability being patched in the visible changes.
Treat as a normal dependency and bug-fix update. Review the upstream Breez SDK v0.11.0 release notes for any security advisories, but the commit itself does not indicate an urgent security issue. No immediate incident response is warranted based solely on this diff.
Security signals we found
Dependency upgrade to upstream Breez SDK v0.11.0 (could include upstream security fixes, but none are identified in the commit)
Removal of local _ConfigCopyWith extension after upstream now provides it
Defensive null handling in auth_page close() and manage_nodes_page label display
No explicit security claim, CVE, or advisory in commit message or diff
Evidence from the diff
The diff shows: (1) dependency migration of breez_sdk_spark_flutter from cake-tech fork ref 9ad3fc1 to upstream breez v0.11.0 in pubspec.yaml/lock and Podfile.lock; (2) removal of a private _ConfigCopyWith extension in lightning_wallet.dart because the upstream package now provides it; (3) a defensive null-context guard in auth_page.dart that returns instead of throwing; (4) a null-coalesced fallback for node.label in manage_nodes_page.dart; (5) a defensive copy of walletGroups list in wallet_groups_display_view_model.dart; and (6) macOS scheme renaming from Monero.com.app to Cake Wallet.app. None of these changes are explicitly described by the vendor as security-relevant, and no CVE or advisory is referenced.
Changed components
cw_bitcoin/lib/lightning/lightning_wallet.dartcw_bitcoin/pubspec.yamlcw_bitcoin/pubspec.locklib/src/screens/auth/auth_page.dartlib/src/screens/settings/manage_nodes_page.dartlib/view_model/wallet_groups_display_view_model.dartmacos/Podfile.lockmacos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcschemeInspect captured patch +17 / −44
diff --git a/cw_bitcoin/lib/lightning/lightning_wallet.dart b/cw_bitcoin/lib/lightning/lightning_wallet.dart
index d2e1a9c..da92646 100644
--- a/cw_bitcoin/lib/lightning/lightning_wallet.dart
+++ b/cw_bitcoin/lib/lightning/lightning_wallet.dart
@@ -391,31 +391,3 @@ class LightningWallet {
);
}
}
-
-extension _ConfigCopyWith on Config {
- Config copyWith({
- String? apiKey,
- String? lnurlDomain,
- Network? network,
- int? syncIntervalSecs,
- MaxFee? maxDepositClaimFee,
- bool? preferSparkOverLightning,
- bool? useDefaultExternalInputParsers,
- bool? privateEnabledDefault,
- OptimizationConfig? optimizationConfig,
- int? maxConcurrentClaims,
- }) =>
- Config(
- lnurlDomain: lnurlDomain ?? this.lnurlDomain,
- apiKey: apiKey ?? this.apiKey,
- network: network ?? this.network,
- syncIntervalSecs: syncIntervalSecs ?? this.syncIntervalSecs,
- maxDepositClaimFee: maxDepositClaimFee ?? this.maxDepositClaimFee,
- preferSparkOverLightning: preferSparkOverLightning ?? this.preferSparkOverLightning,
- useDefaultExternalInputParsers:
- useDefaultExternalInputParsers ?? this.useDefaultExternalInputParsers,
- privateEnabledDefault: privateEnabledDefault ?? this.privateEnabledDefault,
- optimizationConfig: optimizationConfig ?? this.optimizationConfig,
- maxConcurrentClaims: maxConcurrentClaims ?? this.maxConcurrentClaims,
- );
-}
diff --git a/cw_bitcoin/pubspec.lock b/cw_bitcoin/pubspec.lock
index 45e8283..4d33cf3 100644
--- a/cw_bitcoin/pubspec.lock
+++ b/cw_bitcoin/pubspec.lock
@@ -134,11 +134,11 @@ packages:
dependency: "direct main"
description:
path: "."
- ref: "9ad3fc1cdc7f09009786cf4960a0b7697e9a249f"
- resolved-ref: "9ad3fc1cdc7f09009786cf4960a0b7697e9a249f"
- url: "https://github.com/cake-tech/breez-sdk-spark-flutter"
+ ref: "v0.11.0"
+ resolved-ref: "4a6110477c526ddf236c6b5d4ad064802062f5ad"
+ url: "https://github.com/breez/breez-sdk-spark-flutter"
source: git
- version: "0.9.1"
+ version: "0.11.0"
bs58check:
dependency: transitive
description:
diff --git a/cw_bitcoin/pubspec.yaml b/cw_bitcoin/pubspec.yaml
index ea6d8ce..d58919e 100644
--- a/cw_bitcoin/pubspec.yaml
+++ b/cw_bitcoin/pubspec.yaml
@@ -71,8 +71,8 @@ dependencies:
ref: e867e3d0156d0b29858100f30adc2625b9dae586
breez_sdk_spark_flutter:
git:
- url: https://github.com/cake-tech/breez-sdk-spark-flutter
- ref: 9ad3fc1cdc7f09009786cf4960a0b7697e9a249f
+ url: https://github.com/breez/breez-sdk-spark-flutter
+ ref: v0.11.0
dev_dependencies:
flutter_test:
diff --git a/lib/src/screens/auth/auth_page.dart b/lib/src/screens/auth/auth_page.dart
index 6201767..6c242c7 100644
--- a/lib/src/screens/auth/auth_page.dart
+++ b/lib/src/screens/auth/auth_page.dart
@@ -109,7 +109,9 @@ class AuthPagePinCodeStateImpl extends AuthPageState<AuthPage> {
@override
Future<void> close({String? route, dynamic arguments}) async {
if (_key.currentContext == null) {
- throw Exception('Key context is null. Should be not happened');
+ // throw Exception('Key context is null. Should be not happened');
+ // flutter can happen, so safe to just return
+ return;
}
/// not the best scenario, but WidgetsBinding is not behaving correctly on Android
diff --git a/lib/src/screens/settings/manage_nodes_page.dart b/lib/src/screens/settings/manage_nodes_page.dart
index c1cd925..841a440 100644
--- a/lib/src/screens/settings/manage_nodes_page.dart
+++ b/lib/src/screens/settings/manage_nodes_page.dart
@@ -1,5 +1,4 @@
import 'package:cake_wallet/generated/i18n.dart';
-import 'package:cake_wallet/new-ui/widgets/modal_header.dart';
import 'package:cake_wallet/new-ui/widgets/modal_page_wrapper.dart';
import 'package:cake_wallet/new-ui/widgets/modern_button.dart';
import 'package:cake_wallet/new-ui/widgets/receive_page/receive_top_bar.dart';
@@ -101,7 +100,7 @@ class ManageNodesPage extends BasePage {
}
final nodeListRow = NodeListRow(
title: node.uriRaw,
- subtitle: node.label!,
+ subtitle: node.label ?? '',
node: node,
isSelected: isSelected,
isPow: isPow,
diff --git a/lib/view_model/wallet_groups_display_view_model.dart b/lib/view_model/wallet_groups_display_view_model.dart
index 628e0d6..fd85664 100644
--- a/lib/view_model/wallet_groups_display_view_model.dart
+++ b/lib/view_model/wallet_groups_display_view_model.dart
@@ -104,7 +104,7 @@ abstract class WalletGroupsDisplayViewModelBase with Store {
await _walletManager.updateWalletGroups();
- final walletGroups = _walletManager.walletGroups;
+ final walletGroups = List<WalletGroup>.from(_walletManager.walletGroups);
// Iterate through the wallet groups to filter and categorize wallets
for (var group in walletGroups) {
diff --git a/macos/Podfile.lock b/macos/Podfile.lock
index fffd9be..1a9b46f 100644
--- a/macos/Podfile.lock
+++ b/macos/Podfile.lock
@@ -1,7 +1,7 @@
PODS:
- bitbox_flutter (0.0.1):
- FlutterMacOS
- - breez_sdk_spark_flutter (0.9.1):
+ - breez_sdk_spark_flutter (0.11.0):
- FlutterMacOS
- connectivity_plus (0.0.1):
- FlutterMacOS
@@ -168,7 +168,7 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
bitbox_flutter: 16088f5c7febacf894f4d07bbdfb441c9f0757fe
- breez_sdk_spark_flutter: 395f5c3f35d0f128ed504588de212ff601f6dbeb
+ breez_sdk_spark_flutter: 2e864a52e699546aedea3d64d0e0cc88bc0ac595
connectivity_plus: 0a976dfd033b59192912fa3c6c7b54aab5093802
cw_mweb: 7440b12ead811dda972a9918442ea2a458e8742c
device_info_plus: 5401765fde0b8d062a2f8eb65510fb17e77cf07f
diff --git a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
index 5a968a9..e5dd4c5 100644
--- a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
+++ b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
@@ -15,7 +15,7 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
- BuildableName = "Monero.com.app"
+ BuildableName = "Cake Wallet.app"
BlueprintName = "Runner"
ReferencedContainer = "container:Runner.xcodeproj">
</BuildableReference>
@@ -31,7 +31,7 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
- BuildableName = "Monero.com.app"
+ BuildableName = "Cake Wallet.app"
BlueprintName = "Runner"
ReferencedContainer = "container:Runner.xcodeproj">
</BuildableReference>
@@ -55,7 +55,7 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
- BuildableName = "Monero.com.app"
+ BuildableName = "Cake Wallet.app"
BlueprintName = "Runner"
ReferencedContainer = "container:Runner.xcodeproj">
</BuildableReference>
@@ -72,7 +72,7 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "33CC10EC2044A3C60003C045"
- BuildableName = "Monero.com.app"
+ BuildableName = "Cake Wallet.app"
BlueprintName = "Runner"
ReferencedContainer = "container:Runner.xcodeproj">
</BuildableReference>
Why this scored 17/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.