Custom Token Support and various optimizations
This release introduces significant improvements to connection handling and token support capabilities. Key highlights include an intelligent Electrum client architecture with configurable connection modes, support for custom EVM tokens without pre-configuration, and a robust connection health check system. The release also brings notable stability enhancements to the Cosmos integration and delivers substantial performance optimizations and bug fixes across multiple components.
Release Notes
Features:
-
Custom Tokens Support
-
Connection Healthcheck
- Connection healthcheck implementation for peers was introduced by @onur-ozkan.
- Relevant PR: #2194
Enhancements
-
Electrum Client
- Electrum client was refactored by @rozhkovdmitrii and @mariocynicys to add min/max connection controls, with server priority based on list order.
Click to expand details
- Electrum client can now operate in single-server mode (1,1) to reduce resource usage (especially beneficial for mobile) or multi-server (legacy) mode for reliability.
- Higher priority servers automatically replace lower priority ones when reconnecting during periodic retries or when connection count drops below minimum.
- Relevant PR: #1966
-
Seed Management
-
RPC Service
NB - Backwards compatibility breaking changes
❌ Removals
- adex-cli 🗑️
- Status: Removed in v2.2.0-beta
- Rationale: To be replaced with a simpler, more maintainable implementation
- Reference: #2234
⚡ API Changes
- RPC Renaming
get_peers_info
RPC was renamed toget_directly_connected_peers
by @onur-ozkan #2195
- Cosmos Integration
- 'rpc_urls' field (previously a list of plain string values) was replaced by @onur-ozkan with 'nodes' (a list of JSON objects) in Cosmos activation payloads. #2173
- Komodo DeFi Proxy
- All RPC methods fields controlling komodo-defi-proxy were renamed to 'komodo_proxy' by @onur-ozkan. This affects various activations, including ETH/EVM. #2173
Bug Fixes:
Click to expand
- NFT integration
- Graceful Shutdown
- CTRL-C signal handling with graceful shutdown was implemented by @onur-ozkan #2213
- Cosmos Integration
- Cosmos tx broadcasting error was fixed by @onur-ozkan by upgrading cosmrs to version 15. #2238
- A bug in Cosmos transaction history address parsing logic was fixed by @onur-ozkan #2245
- Order Management
- Legacy Swaps
- A legacy swap issue was resolved by @laruh where taker spent maker payment transactions were sometimes incorrectly marked as successful when they were actually reverted or not confirmed, particularly in EVM-based swaps. #2199
- Two new events were added: "MakerPaymentSpendConfirmed" and "MakerPaymentSpendConfirmFailed"
- A fix was introduced by @shamardy where Takers don't need to confirm their own payment as they can wait for the spending of it straight away. #2249
- This invalidates this fix #1442, a better solution will be introduced where taker rebroadcasts their transaction if it's not on the chain.
- A fix was introduced by @shamardy for recover funds for takers when the swap was marked as unsuccessful due to the maker payment spend transaction not being confirmed. #2242
- The required confirmations from coin config for taker/maker payment spend are now used instead of using 1 confirmation max. This is because some chains require more than 1 confirmation for finality, e.g. Polygon.
- A legacy swap issue was resolved by @laruh where taker spent maker payment transactions were sometimes incorrectly marked as successful when they were actually reverted or not confirmed, particularly in EVM-based swaps. #2199
- Swap watchers
- Coins Activation
- EVM addresses are now displayed in full in iguana v2 activation response by @borngraced #2254
- HD Wallet
- RPC Service
- A fix was introduced by @mariocynicys to run rpc request futures till completion in #1966. This ensures RPC request futures complete fully even if clients disconnect, preventing partial state updates and maintaining data consistency.
- Escaped response body in native RPC was removed by @borngraced #2219
- Security Enhancements
- Remote files are now handled in a safer way in CI by @onur-ozkan #2217
- Database
- Build Process
wasm-opt
overriding was removed by @onur-ozkan #2200
Full Changelog: v2.1.0-beta...v2.2.0-beta
Checksum & VirusTotal Analysis:
Link | SHA256 |
---|---|
mm2-bb749a993-Darwin-Release.zip | 62c3ef36cb3cd4fc166d381d7efce6b67d3b5dc62de4080bfb39462c0c4efb48 |
mm2-bb749a993-Linux-Release.zip | e8c4cc2b6fbddc229820e7868591b757e223a47553a66755131330345a624093 |
mm2-bb749a993-Win64.zip | 88a723d584ef10e528b11a16327a6bcdf25867cdb6c7e6afadc77a62c8bed7dc |
mm2-bb749a993-android-aarch64-CI.zip | bdead61715e5f95e5f1d842691b7ee19b8dc9ef780bc13f1207589214ff0fc24 |
mm2-bb749a993-android-armv7-CI.zip | bfc294ece8481aabedf21b2d3e785eedc9719f066b396da91811427fa857f2b3 |
mm2-bb749a993-ios-aarch64-CI.zip | 545e657f6d15a1bd552e59f6006811f84876ae39837b6b68a39b1eec3094f8dc |
mm2_bb749a993-wasm.zip | 877d42c9051c060609b969aa3dfa550d73ae24f53153dea08143d820e7d317c7 |
This release was signed by https://keybase.io/deckersu (GPG fingerprint: FD9A 772C 7300 F4C8 94D1 A819 FE50 4808 62E6 451C
).