What's Changed
- chore: bump version to 1.0.118 by @johnnyluo in #5705
- chore(build): fix Gradle deprecation warnings by @johnnyluo in #5708
- fix(solana): stop a token account from passing as a send recipient by @aminsato in #5698
- fix(ripple): reject and flag XRPL partial payments that hide their delivery by @aminsato in #5567
- refactor(bittensor): use WalletCore AnyAddress for SS58 encode/decode by @johnnyluo in #5704
- fix(navigation): redact route debug logs by @johnnyluo in #5715
- Migrate Compose androidTest rules to v2 by @johnnyluo in #5716
- fix(home): don't flash "No chains enabled" before accounts load by @aminsato in #5721
- fix(ton): drop IGNORE_ACTION_PHASE_ERRORS, sign explicit MAX amount by @aminsato in #5726
- feat(qbtc): let the claim banner be closed, behind real glass by @aminsato in #5709
- test(blockaid): lock Solana three-diff direction by @johnnyluo in #5730
- Remove Kujira chain support by @aminsato in #5727
- feat(referral): let Edit change the payout asset, not just the expiry by @aminsato in #5707
- fix: resolve debug unit test compile warnings by @johnnyluo in #5733
- feat(home): rebuild the promo carousel on Figma's 2026 banner by @aminsato in #5723
- feat(swap): stop allowlisting chains for SwapKit; add HOOD + HyperEVM by @aminsato in #5722
- chore(deps): bump okhttp, commons-compress, zxing, protobuf plugin by @aminsato in #5736
- chore(deps): bump core splashscreen to 1.2.0 by @johnnyluo in #5746
- fix(qr): dedupe QR encoder, remove ZXing from app module by @johnnyluo in #5747
- fix(tx-history): keep checking a pending row instead of asking once by @aminsato in #5735
- test: migrate skipped data unit tests to JUnit 5 by @johnnyluo in #5748
- refactor: declare kotlinx-serialization-json explicitly by @johnnyluo in #5753
- Migrate Coil image loading to Coil 3 by @johnnyluo in #5754
- Require strong biometrics for auth by @johnnyluo in #5755
- fix(swap): keep Jupiter quotes when the fee ATA is missing by @realpaaao in #5739
- feat(ripple): send XRP issued-currency tokens and open trust lines by @rkokhatskyi in #5738
- feat(review): ask for a review at vault creation or a first send by @aminsato in #5760
- feat(keysign): establish signed transaction decoder core (#5657) by @aminsato in #5706
- fix(keysign): sign Maya dApp requests with the Maya chain id by @aminsato in #5761
- Custom RPCs tier gate shows 0 VULT when Ethereum chain is disabled (#5772) by @Vaulty-bot in #5773
- fix(tron): reject a failed balance read and a reverted fee estimate by @aminsato in #5776
- fix(deposit): THORChain Bond fee units + consolidate Bond/Unbond flow by @johnnyluo in #5768
- fix(token detail): fit five actions instead of clipping the fifth by @aminsato in #5787
- Fix THORChain empty Midgard status fallback by @johnnyluo in #5769
- fix(balance): preserve cached balances on failed reads by @johnnyluo in #5788
- fix(send): show memo for token signers that carry it by @johnnyluo in #5789
- fix(ui): align select chain footer by @johnnyluo in #5790
- refactor: drop kotlinx-datetime, consolidate on java.time by @johnnyluo in #5792
- fix(home): swap the five navigator glyphs to the Figma set by @aminsato in #5795
- fix(tokens): add TON and Tron custom-token search by @johnnyluo in #5791
- fix(swap): stop calling the expected output a minimum payout by @aminsato in #5734
- feat(passcode): offer biometric unlock from the lock screen by @aminsato in #5777
- fix(defi): make the Kamino vault picker the shared selection sheet by @aminsato in #5798
- fix(defi): paint the last-known positions instead of cold-starting by @aminsato in #5796
- fix(defi): count positions on the DeFi home chain rows by @aminsato in #5799
- CI: align setup-gradle to v6 by @johnnyluo in #5804
- fix(swap): give LI.FI Auto a real slippage tolerance by @aminsato in #5806
- feat(swap): add a custom token from the asset search empty state by @aminsato in #5808
- Fix sTCY DeFi portfolio balance by @johnnyluo in #5805
- fix(home): float the bottom navigator over the content by @aminsato in #5810
- feat(done): drive the transaction hero from the decoder by @aminsato in #5794
- [Feature] Cardano native tokens: curated catalog entries for the top 10 CNT [ADA] (#5807) by @Vaulty-bot in #5809
- fix(ci): run :data instrumented tests, not just :app's by @johnnyluo in #5814
- fix(deps): bump wallet-core to 4.8.0, guard nullable key derivation by @johnnyluo in #5815
- fix(swap): explain min-output reverts in transaction history by @aminsato in #5817
- feat(keysign): integrate decoded heroes into Verify by @aminsato in #5816
- fix(cardano): carry native-token data through the keysign payload by @aminsato in #5818
- fix(swap): show the list rate in the Swap Fee row, not the net one by @aminsato in #5812
- fix(maya): node-scoped Unbond data and LP-unit ceilings by @aminsato in #5820
- feat(keysign): decode Solana staking transactions by @aminsato in #5819
- fix(send): hide memo field for Polkadot and Bittensor by @johnnyluo in #5832
- Fix: stop persisting a failed Polkadot balance read as zero by @johnnyluo in #5831
- fix(send): estimate EVM gas against real calldata, not a placeholder by @johnnyluo in #5833
- fix(tokens): stop re-enabling VULT after the user disables it by @aminsato in #5835
- fix(cosmos): send Osmosis ION as uion instead of uosmo by @johnnyluo in #5834
- fix(navigation): URL-encode custom NavType route args by @aminsato in #5836
- fix(keysign): put the Polkadot/Bittensor network fee on the wire by @aminsato in #5840
- feat(keysign): decode Cosmos signed operations by @aminsato in #5829
- fix(swap): show the referral's real saving, and stop charging the top tier for it by @aminsato in #5839
- fix(keygen): await relay sends with a bounded retry budget by @aminsato in #5838
- fix(bittensor): refuse the all-zero AccountId as a TAO destination by @aminsato in #5846
- feat(history): name both assets on a settled swap card by @aminsato in #5847
- fix(keysign): state the jetton quantity on a TonConnect transfer by @aminsato in #5848
- fix(send): re-fit an EVM max send to the fee that gets signed by @aminsato in #5849
Full Changelog: v1.0.118...v1.0.119