You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -9,7 +9,7 @@ All notable changes to Bull Bitcoin Mobile will be documented in this file.
9
9
10
10
---
11
11
12
-
## [6.10.1] - 2026-05-12
12
+
## [6.10.6] - 2026-05-18
13
13
14
14
### Bug Fixes
15
15
@@ -23,98 +23,148 @@ All notable changes to Bull Bitcoin Mobile will be documented in this file.
23
23
24
24
---
25
25
26
-
## [6.8.0] - 2026-03-17
26
+
## [6.10.1] - 2026-05-17
27
27
28
28
### New Features
29
29
30
+
#### Wallet & Storage
31
+
-**FSS hybrid storage strategy** — Flutter secure storage hybrid strategy without migration; better handling of FSS10 migration failure on Android with fallback to legacy storage. Switched to a fork of `flutter_secure_storage` (10.0.0) that improves Android migration reliability by creating backups before migrating secure storage, and improves iOS background task access.
32
+
-**New onboarding/startup wizard**
33
+
-**Ledger hardware wallet support** — now accessible without requiring superuser privileges
34
+
-**Electrum timeout and retry** via bdk-dart
35
+
-**Increased Electrum stopGap** — now allows values up to 5000
36
+
30
37
#### Exchange
31
-
-**Real-time WebSocket notifications**: Exchange updates (balance, KYC status, group membership) now arrive instantly via WebSocket instead of polling every 5 seconds, providing faster feedback and reducing battery drain
32
-
-**Real-time support chat**: Support messages now appear immediately without manual refresh via WebSocket push notifications
33
-
-**Enhanced exchange settings menu**: Added new functional screens including Recipients, Transactions, Default Bitcoin Wallets, App Settings, Secure File Upload, and Statistics
34
-
-**Bitcoin wallets management**: New screen to manage default Bitcoin, Lightning, and Liquid withdrawal addresses with edit/save/delete functionality
35
-
-**Email notifications toggle**: Added option in App Settings to enable/disable email notifications
36
-
-**Secure file upload**: New KYC document upload screen with status indicators (Upload, In Review, Accepted)
37
-
-**Trading statistics dashboard**: New Statistics screen showing buy/sell ratio, trade volumes, trade counts, average prices, and biller statistics
38
-
-**Transaction filters**: Added missing order type filters (Withdraw, Pay, Funding, Reward, Refund, Balance Adjustment) to exchange transactions page
39
-
-**Exchange announcement banner improvements**: Announcements now show truncated descriptions with ellipsis, and tapping opens a bottom sheet with full details
40
-
-**Preferred currency improvements**: Exchange home now properly handles empty balance currency, and deposit/withdraw/pay screens set initial dropdown values to preferred currency jurisdiction
41
-
42
-
#### Security & Privacy
43
-
-**Backup warning overlay**: Users are now shown a persistent overlay warning when their wallet backup is incomplete, preventing them from dismissing it by navigating away without addressing it.
44
-
-**Scam consent warning for exchange funding**: Users must explicitly consent to a scam warning before funding their exchange account, protecting against social engineering attacks
45
-
-**Randomized OHTTP relay selection**: OHTTP relay is now randomly selected on each payjoin call using `Random.secure()` to prevent network-layer fingerprinting
46
-
47
-
#### Payjoin
48
-
-**Self-transfer detection**: Payjoin send now detects self-spent transactions and displays a "Self-transfer" row on the confirmation screen. Self-spends bypass payjoin.
49
-
-**Close button on broadcasting screen**: Added a Close button on the broadcasting/loading screen since the app no longer auto-progresses when autosync is disabled
50
-
51
-
#### Localization
52
-
-**11 new languages exposed in the language selector**: 🇸🇦 Arabic, 🇧🇬 Bulgarian, 🇧🇩 Bengali, 🇨🇿 Czech, 🇬🇷 Greek, 🇮🇷 Persian, 🇮🇳 Hindi, 🇰🇷 Korean, 🇧🇷 Brazilian Portuguese, 🇹🇭 Thai, 🇹🇷 Turkish
53
-
54
-
#### Error Reporting
55
-
-**Opt-in error reporting program**: Added optional, self-hosted error reporting (disabled by default) with explicit user consent toggle in App Settings. Only collects error reports and stack traces, no user behavior tracking or telemetry
56
-
57
-
#### Hardware Wallets
58
-
-**Ledger available without superuser**: Ledger hardware wallet integration is now accessible without requiring superuser privileges
38
+
-**Colombia (COP) deposits** — new COP payment link deposit flow
39
+
-**SINPE receipt on tx details** — reusable card on success + details screens
-**Detailed German translations** — community contributions from @bsn21m
65
+
-**Updated translations** for new warning and wizard pages
66
+
67
+
#### Observability
68
+
-**Opt-in error reporting** — optional, self-hosted Sentry (disabled by default) — only collects error reports and stack traces, no telemetry, no IP.
69
+
-**Detailed Sentry configuration** to ensure user privacy
70
+
-**No app restart required** after providing Sentry consent
71
+
72
+
#### Removed / Changed
73
+
- Removed Boltz testnet support
74
+
- Removed Recoverbull sync page
75
+
- Server status page now makes more realistic calls
59
76
60
77
### Bug Fixes
61
78
62
-
#### Swap & Lightning
63
-
-**Swap status recovery**: Added automatic outspend checks for swaps stuck with 'missing-or-unspent' errors during claim/refund broadcast to correctly update swap status
64
-
-**Swap watcher race condition**: Fixed race condition in swap watcher that could cause status update issues
65
-
-**Price graph refresh**: Users can now manually reload Bitcoin prices if automatic loading fails
66
-
-**LN receive success screen crash**: Fixed a UI crash that occurred when reaching the success screen after receiving via Lightning through the wallet receive pages
67
-
-**Insufficient balance navigation**: Improved error on insufficient balance and swap limits. Fixed an issue where clicking Continue on the send amount page with insufficient funds would show an error but still navigate to the confirm page
68
-
-**Handle amountless invoice**: Better handling of amountless invoices on swaps. Throws a more descriptive error.
79
+
#### Wallet Core
80
+
-**Address index issue** — fixed via update to bdk-dart (bdk 2.0)
81
+
-**Crash for unknown script transactions**
82
+
-**Prevent duplicate mnemonic import**
83
+
-**Mnemonic import freeze/crash**
84
+
-**Capital letters in mnemonic** — no longer accepted (was causing errors)
-**Startup lag** — fixed lag during wallet and seed loading on startup
89
+
-**Startup error screen** — gracefully handles and displays startup failures instead of freezing
90
+
-**Always ensure both instant and secure wallet are created** — should be atomic
91
+
-**Seed fetch retry logic** — added retry mechanism with exponential backoff (up to 5 attempts) when fetching seeds from secure storage to prevent false "Seed Not Found" errors during app startup
92
+
93
+
#### Swaps
94
+
-**Swap status recovery** — added automatic outspend checks for swaps stuck with 'missing-or-unspent' errors during claim/refund broadcast to correctly update swap status
95
+
-**Swap watcher race condition** that could cause status update issues
96
+
-**MRH swap** — uses transaction ID to fully resolve as a swap transaction
97
+
-**Swap flow wallet autoselect** — prevents self-spends or same-network sends in the transfer flow
98
+
-**Amountless invoice handling** — throws a more descriptive error for amountless invoices on swaps
99
+
-**Background tasks cleanup** — removed unnecessary background tasks causing unexpected swap states and LWK db corruption
100
+
-**Autoswap update fix** — fixed issues from previous autoswap implementation
101
+
-**Autoswap notice/warning fixes**
102
+
-**Testnet fix for recoverbull**
103
+
104
+
#### Send / Receive
105
+
-**LN receive success screen crash** fixed
106
+
-**Insufficient balance navigation** — Continue on send amount page with insufficient funds no longer navigates to confirm page
107
+
-**Sell/Pay flow** — fixed "Could not fetch fees" bug
108
+
-**Route unauthenticated users to login** via buy/sell/withdraw
109
+
110
+
#### Backup & Security
111
+
-**Physical backup verification** — fixed backup test status not updating after completing verification
112
+
-**Backup-before-PIN safety gate**
113
+
-**Backup completion flow via FSS Warning** — after completing a backup, the warning lands directly on the "Reinstall" title instead of flashing "Backup and Reinstall"
114
+
-**Backup wallet warning on home** now updates correctly after a backup is complete
115
+
-**"Vault created successfully" snackbar** no longer covers the "Test Recovery" button
69
116
70
117
#### Exchange
71
-
-**WebSocket reconnect loop**: Fixed infinite reconnect loop where unauthenticated users would see repeated WebSocket connection errors every 5 seconds
72
-
-**Exchange statistics improvements**: Replaced circular progress indicators with linear ones, fixed trade count display to show plain integers, added currency conversion for statistics, and improved number formatting with thousands separators
73
-
-**DCA confirmation text color**: Fixed unreadable text color on DCA confirmation screen by using proper theme color
74
-
-**Support chat attachments**: Improved image picker flow with better permission handling and clearer error messages
75
-
-**CA KYC Limited sell limit**: Enforced the $999 CAD buy/sell limit for Canadian users with limited KYC verification, with proper form validation
76
-
77
-
#### Wallet & Transactions
78
-
-**Labels feature refactor**: Complete refactor of labels architecture with database migration (v11 to v12), improved domain modeling, and better separation of concerns. Fixed multiple label-related issues
79
-
-**Physical backup verification**: Fixed issue where physical backup test status was not updating after completing verification
80
-
-**Custom fee theme**: Fixed theme color issues in custom fee selection
81
-
-**Keyboard input improvements**: Fixed price input keyboard to show appropriate number pad on iOS with correct decimal settings
82
-
-**Keyboard lag fix**: Fixed keyboard lag when importing a mnemonic passphrase or typing in label input fields
83
-
84
-
#### Mempool & Network
85
-
-**Custom mempool server fixes**: Added SSL toggle (auto-detected from URL protocol), improved URL parsing and normalization, added server status indicators, fixed UI issues in dark mode, and added support for .onion links via Orbot
86
-
-**Recoverbull Orbot detection**: Fixed Recoverbull connection by checking if Orbot is actually running on port 9050 instead of just checking user settings, preventing Tor-over-Tor connection errors
87
-
88
-
#### UI & Theme
89
-
-**Multiple dark theme fixes**: Fixed various dark theme issues including QR code backgrounds (now hardcoded white for hardware wallet compatibility), PSBT flow instructions visibility, exchange logout bottom sheet theme, and Recoverbull button theme; also fixed custom Electrum server delete widget, "how to decide" bottom sheet, and exchange home KYC card
90
-
-**DCA UI fixes**: Fixed theme color issues in DCA screens
91
-
-**Light mode exchange banner**: Fixed banner color rendering in light mode
92
-
-**Exchange login screen**: Minor UI enhancements to the exchange login screen and bottom navigation bar
93
-
94
-
#### Performance & Stability
95
-
-**Startup lag fix**: Fixed lag on startup during wallet and seed loading.
-**SQLite migration safety**: Added catch blocks around SQLite migration for labels to prevent crash on migration failure
98
-
-**Startup error screen**: Added an error screen in main to gracefully handle and display startup failures instead of freezing
99
-
-**Background tasks**: Removed unnecessary background tasks (only log pruning remains) which were leading to unexpected behaviour and bad states on swaps in particular.
100
-
101
-
#### Reliability & Stability
102
-
-**Secure storage updates**: Updated to Flutter Secure Storage 10.0.0 with improved iOS background task access and better Android compatibility. Should fix app startup issues
103
-
-**Seed fetch retry logic**: Added retry mechanism with exponential backoff (up to 5 attempts) when fetching seeds from secure storage to prevent false "Seed Not Found" errors during app startup
104
-
-**Autoswap update fix**: Fixed issues from previous autoswap implementation
105
-
106
-
#### Error Reporting
107
-
-**iOS Sentry fix**: Fixed missing Sentry CocoaPod dependency that prevented error reports from being captured on iOS
-**Exchange login screen** — minor UI enhancements to exchange login screen and bottom navigation bar
125
+
126
+
#### Pricing & DCA
127
+
-**Price graph refresh** — users can now manually reload Bitcoin prices if automatic loading fails
128
+
-**DCA confirmation text color** in dark mode
129
+
-**DCA UI fixes**
130
+
131
+
#### Labels & Persistence
132
+
-**Labels feature refactor** — complete architecture refactor with database migration v11→v12; fixed upsert constraint failures, SQLite concurrency, and multiple related issues
133
+
-**Transaction note persistence**
134
+
-**SQLite migration safety** — catch blocks around label migration to prevent crash on failure
135
+
136
+
#### Network / Connectivity
137
+
-**Custom mempool server** — SSL toggle (auto-detected from URL), improved URL parsing/normalization, server status indicators, dark mode fixes, and hidden service support via Orbot
138
+
-**Recoverbull Orbot detection** — checks if Orbot is actually running on port 9050 instead of relying on user settings, preventing Tor-over-Tor errors
139
+
140
+
#### Input & Keyboard
141
+
-**iOS price input keyboard** — fixed to show correct number pad with decimal settings
142
+
-**Keyboard lag** — fixed lag when importing mnemonic passphrase or typing in label input fields
143
+
144
+
#### Theming
145
+
-**Dark theme fixes** — QR code backgrounds, PSBT flow, exchange logout sheet, Recoverbull button, custom Electrum server widget, exchange home KYC status card
146
+
-**PIN light theme readability**
147
+
-**Custom fee dark mode**
148
+
-**Light mode exchange banner**
149
+
-**Delete logs** dark mode fix
150
+
-**Swap fees** dark/light mode and text color fixes
151
+
-**Storage warning screens** dark mode background now matches the wizard
152
+
-**Fade-to-background gradient** no longer covers the title/description above the button
153
+
-**Pull to sync** loader no longer lands behind the Bull logo
154
+
155
+
#### Wizard / Onboarding Polish
156
+
- Removed translation bottom warning sheet in wizard
157
+
- Replaced next button with inline YES / NO continue button in the wizard (reporting program)
158
+
- Transparent chrome so small screens can see there is more to scroll
159
+
160
+
#### iOS
161
+
-**iOS Sentry fix** — fixed missing Sentry CocoaPod dependency that prevented error reports from being captured on iOS
108
162
109
163
### Dependencies
110
-
-**Flutter Secure Storage**: Switched to a fork of `flutter_secure_storage` that improves Android migration reliability by creating backups before migrating secure storage, preventing data loss during upgrades
111
-
-**Updated dependencies**: Updated boltz-dart and satoshifier-dart to latest versions
112
-
113
-
### Breaking Changes
114
-
-**Labels database migration**: The labels feature has undergone a database schema migration from v11 to v12. Existing labels will be preserved during the migration
164
+
-**Updated dependencies** — boltz-dart and satoshifier-dart updated to latest versions
115
165
116
166
---
117
167
118
168
## Previous Releases
119
169
120
-
For release history prior to v6.8.0, please refer to the [GitHub Releases](https://github.com/SatoshiPortal/bullbitcoin-mobile/releases) page.
170
+
For release history prior to v6.10.1, please refer to the [GitHub Releases](https://github.com/SatoshiPortal/bullbitcoin-mobile/releases) page.
0 commit comments