Catches up from the May 12 fork point (v6.1.2+23) through v6.5.0: 535
upstream commits, including the Monero silent-open fix, Monero on Trezor,
Ledger/Trezor BLE fixes, the new seed and history screens, quick Bitcoin
sync, git-pinned dependencies (pubspec_overrides.yaml), frozen Hive
adapters (*.part.dart), monero_c v0.18.4.6-RC2 and Flutter 3.41.9.
Merged with both sides normalized first (import rename, 100-column
format), which took the conflict count from 614 paths to 322. The
procedure is now scripts/upstream_sync.sh.
Kept from Hash Bags:
- WalletType enum order and Hive IDs. SQLite stores WalletType.index and
our order differs from upstream's; taking theirs would reread saved
wallets as other chains. Our frozen adapter keeps the shipped IDs.
- The 1.0.2 legacy PIN and wallet-password decode and self-heal.
- Removed chains (Solana, Tron, Zano, Zcash, Decred, Haven) and the new
Robinhood chain stay out; Cake Pay and non-Trocador swaps stay out.
- Default nodes (node.wownero.org, sethforprivacy, Blockstream, bysh.me),
converted to upstream's isDefault node-list key; Wownero is back in the
node reset list.
- Privacy: address resolvers limited to domain-anchored sources again;
prices.neroswap.com for fiat; upstream's charts tab, which reads
prices.cakewallet.com, sits behind FeatureFlag.isChartsEnabled = false.
- Lightning stays behind FeatureFlag.isLightningEnabled, including
upstream's new post-seed Lightning username step.
- Our icon pipeline, branding and bundle identifiers.
Twelve new upstream widget tests are skipped: test and code are unchanged
from v6.5.0 apart from renames (not rerun on a pristine upstream checkout;
upstream's top_bar_test does not compile against its own TopBar).
flutter analyze lib: 0 errors; flutter test: 345 passed, 12 skipped;
flutter build bundle compiles. Built with Flutter 3.41.9.
Avoids any confusion / potential trademark friction with HashWallet
(Spanish hardware-wallet company). Hash Bags is a more distinctive
name, harder to collide with, and we can still rank for 'hash wallet'
search via App Store / Play Store subtitle ('Hash Bags - A Wallet
for your Coins').
What changed (all user-visible strings):
- Launcher labels: android/app.properties, scripts/android/app_env.sh,
scripts/ios/app_env.sh, linux window title (CMakeLists +
my_application.cc)
- In-app text: lib/generated/i18n.dart + ARB sources under res/values/
- Brand docs: README.md, CONTRIBUTING.md, PRIVACY.md,
assets/text/Terms_of_Use.txt, assets/text/Release_Notes.txt
- hash.boats website: index.html, og-image.svg + regen og-image.png,
site.webmanifest, styles.css comment, splash/confirm/pulse/mark/
lockup svg titles, report/index.html, server/server.js
- CI workflow display names ("Hash Bags Linux build", etc.)
What did NOT change (deliberate):
- Bundle ID / Package: com.suchsoftware.hashwallet (immutable app
identity on App Store + Play Store — changing == orphaning the app)
- Binary name: hash_wallet (Linux executable)
- Dart import paths: package:hash_wallet/...
- Git repo: hash-wallet (Such-Software/hash-wallet)
- URL scheme: hashwallet:// (internal deep links)
- support@such.software (no domain change yet)
- App Store / Play Store listing names (whatever was registered there
stays; we updated launcher label only)
- hash.boats domain (still the wallet site)
Also kept the '#ash Wallet' wordplay in the nav but updated to
'#ash Bags' so the # mark still serves as the H. Nav reads:
[# mark] #ash Bags
Website hero tagline now matches the App Store sub-title concept:
'A wallet for your coins. Open-source, non-custodial, multi-chain.
Privacy-leaning by default.'
108 files modified, ~674 string replacements.
* fix: initial 16KB pages support
all .so dependencies other than reown walletkit (`libuniffi_yttrium.so`) which is a prebuild are 16KB now
* chore: update flutter to 3.29.3
* build: 16KB align go builds
ci: update action to check for 16KB align
[skip ci]
* chore: bump flutter to 3.32.0
* fix: replace prebuilds with built versions for 16KB alignment
fix: walletkit secure storage fix
* feat: use better embedded Tor
* update docs [skip ci]
* fix: update torch properly add minimum os version for iOS
* fix: use of invalid thread api on iOS
* fix: disable use of lzma and zstd system libraries
* fix: update torch_dart to work on linux
* feat: bitcoin view-only
* fix: add UR to cw_bitcoin, fix payjoin issue
* feat: add unsignedPsbt to PendingBitcoinTransaction
* wip
* feat: xpub restore from bitcoin URI QR
* feat(dev): debug UR codes [skip ci]
* fix: master fingerprint default in create bitcoin transaction
* fix: handle empty private key in bitcoin transaction building
* fix: show success dialog after btc ur transaction
* fix(ui): remove SP from UI in view only wallet
* fix(cw_bitcoin): tx sending on non-airgap
* fix(cw_bitcoin): disable all non-segwit addresses
* feat(ur): support BBQR for coldcard qr
* flutter 3.27.0 -> 3.27.4
* feat: raw xpub qr support for coldcard q
* fix: update ledger_bitcoin
fix: update switching button
* fix: restore button not showing up after scanning
* feat: commit raw tx (from coldcard Q)
* feat: legacy crypto-psbt support for seed signer
* chore: address comments from review
* fix(cw_bitcoin): disable sp and payjoin for cupcake
* feat: enable DNSSEC BIP353 in PSBT (#2397)
* feat: enable DNSSEC BIP353 in PSBT
* chore: put bitcoin view only behind a featureflag
* fix: update Monero wallet to work with new internal URQR return format
* feat: add "Restore from Cupcake App" option with localized strings
* feat: enable DNSSEC BIP353 in PSBT using dnssec-prover (#2401)
* fix: use dnssec-prover
chore: bump ndk to r28c
* fix: validate DNSSEC proof before updating the UI
* fix: rename button to copy debug info to not hide actions on URQR widget
---------
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
* arm64 linux support
* add missing dependencies to Dockerfile
* run everything in docker to not break permissions
* remove current linux dir
* proper directory name
* Clean up build script by removing .flatpak-builder directory flatpak before build process
* account for arm64 in docs [skip ci]
---------
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* 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>
* Update build docs and migrate Android builds to Docker
* Update NDK and move steps directly into Dockerfile
* Fix NDK installation via script and Dockerfile
* Migrate to @MrCyjaneK's existing Dockerfile (with optimizations)
* Add .dockerignore and migrate Dockerfile to root of project
* Revert .gitignore changes
* Update Android and Linux builds and resolve Linux build issue
* Fix git repo for Linux and Android build instructions
* Set branch to latest release in build docs
* Ensure `flutter clean` is run before building
* Fix Linux completion example
* Don't build Zano for Linux
* Apply suggestions from code review
Co-authored-by: cyan <cyjan@mrcyjanek.net>
* Explicitly add automake package to Dockerfile
* Improve logging on Android and Linux builds via Docker
* Improve Dockerfile comments and ordering
* Fix issues in macOS and iOS builds docs (thanks @MrCyjaneK)
* Update docs/builds/IOS.md [skip ci]
* Update docs/builds/IOS.md [skip ci]
* Update docs/builds/MACOS.md [skip ci]
* Update docs/builds/IOS.md [skip ci]
* Fix and improve iOS and macOS build docs
* Windows build doc improvements
Co-authored-by: cyan <cyjan@mrcyjanek.net>
* add missing dependency to Dockerfile
* Update Windows build docs
* More fixes and optimizations to the Windows build docs
* Add git config to Windows build doc
* Fix shell location/commands in Windows build doc
* Fix WSL commands in Windows build doc
* Apply suggestions from code review
Co-authored-by: cyan <cyjan@mrcyjanek.net>
---------
Co-authored-by: cyan <cyjan@mrcyjanek.net>