|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to this project will be documented in this file. |
| 4 | + |
| 5 | +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). |
| 6 | + |
| 7 | +## 0.41.0 - 2025-12-22 |
| 8 | + |
| 9 | +### Added |
| 10 | + |
| 11 | +- Sync progress improvements (#150) @QuantumExplorer |
| 12 | +- Small fixes (#155) @QuantumExplorer |
| 13 | +- Adjust default paths and gap limits to match android/iOS behavior (#156) @HashEngineering |
| 14 | +- Various notification/statistics and performance improvements (#157) @PastaPastaPasta |
| 15 | +- Use feature for console UI (#158) @QuantumExplorer |
| 16 | +- InstantLock BLS signature verification and peer reputation (#163) @PastaPastaPasta |
| 17 | +- Buffered stateful framing for TCP connections (#167) @PastaPastaPasta |
| 18 | +- Enhanced storage clear and balance display (#174) @PastaPastaPasta |
| 19 | +- Comprehensive wallet FFI transaction builder (#175) @PastaPastaPasta |
| 20 | +- DashPay support (#177) @QuantumExplorer |
| 21 | +- Async check transaction (#178) @QuantumExplorer |
| 22 | +- Broadcast transaction support (#180) @pauldelucia |
| 23 | +- Update FFI headers (#183) @xdustinface |
| 24 | +- Flush header index on shutdown and after header sync (#197) @pauldelucia |
| 25 | +- Introduce `DashSpvClientInterface` (#214) @xdustinface |
| 26 | +- DIP-17 Platform Payment account support in key-wallet (#229) @pauldelucia |
| 27 | +- Add data directory lockfile protection (#241) @xdustinface |
| 28 | +- Validate headers during sync (#242) @xdustinface |
| 29 | +- Parallelize header validation with `rayon` (#243) @xdustinface |
| 30 | +- Add `atomic_write` for atomic file writing (#245) @xdustinface |
| 31 | +- Add logging module with file rotation support (#252) @xdustinface |
| 32 | +- Filter storage using segmentscache (#267) @ZocoLini |
| 33 | +- Height based storage (#272) @ZocoLini |
| 34 | +- Add `--mnemonic-file` CLI argument (#285) @xdustinface |
| 35 | + |
| 36 | +### Changed |
| 37 | + |
| 38 | +- Unify blockchain height handling in storage and sync layers (#153) @PastaPastaPasta |
| 39 | +- Split big files in dash-spv (#160) @QuantumExplorer |
| 40 | +- Drop unused code in `dash-spv::network` (#179) @xdustinface |
| 41 | +- Rename `MultiPeerNetworkManager` to `PeerNetworkManager` (#184) @xdustinface |
| 42 | +- Improve SPV shutdown handling with `CancellationToken` (#187) @xdustinface |
| 43 | +- Rename `TcpConnection` to `Peer` and `ConnectionPool` to `PeerPool` (#190) @xdustinface |
| 44 | +- Drop unused code in `dash-spv::network` (#192) @xdustinface |
| 45 | +- Make flow control syncing default (#211) @xdustinface |
| 46 | +- Rename `HeaderSyncManagerWithReorg` to `HeaderSyncManager` (#221) @xdustinface |
| 47 | +- Don't add a dummy in `mark_filter_received` (#222) @xdustinface |
| 48 | +- Cleanup and simplify `MemoryStorageManager` (#224) @xdustinface |
| 49 | +- Make `synced_from_checkpoint` based on `sync_base_height` (#226) @xdustinface |
| 50 | +- Use `genesis_block` for all nets in `initialize_genesis_block` (#231) @xdustinface |
| 51 | +- Rename `SequentialSyncManager` to `SyncManager` (#235) @xdustinface |
| 52 | +- Cleanup SPV validation (#237) @xdustinface |
| 53 | +- Replace SyncPhase matches wildcard usage with exhaustive match (#239) @ZocoLini |
| 54 | +- Storage segments cleanup (#244) @ZocoLini |
| 55 | +- Pin rust version in `rust-toolchain.toml` (#266) @xdustinface |
| 56 | +- Less cloning in SPV message handling (#268) @xdustinface |
| 57 | +- Make filter loading range based (#269) @xdustinface |
| 58 | +- Single network `Wallet` and `ManagedWalletInfo` (#271) @xdustinface |
| 59 | +- Remove all use of `dyn` (#274) @ZocoLini |
| 60 | +- Some `ChainState` cleanups (#289) @ZocoLini |
| 61 | + |
| 62 | +### Removed |
| 63 | + |
| 64 | +- Drop unused sync code (#208) @xdustinface |
| 65 | +- Drop `ChainHash` and related tests from `dash` (#228) @xdustinface |
| 66 | +- Drop unused code in `dash-spv::sync` (#232) @xdustinface |
| 67 | +- Drop unused code in `dash-spv::checkpoint` (#233) @xdustinface |
| 68 | +- Remove unused struct `StorageConfig` (#273) @ZocoLini |
| 69 | +- Remove `MemoryStorageManager` (#275) @ZocoLini |
| 70 | +- Drop persistent sync state (#279) @ZocoLini |
| 71 | +- Remove unused `ChainLockStats` (#281) @ZocoLini |
| 72 | +- Remove unused orphan pool module (#282) @ZocoLini |
| 73 | +- Remove `StorageStats` (#283) @ZocoLini |
| 74 | +- Remove duplicate quorum validation logic (#284) @ZocoLini |
| 75 | +- Drop unused `lookahead` (#288) @xdustinface |
| 76 | + |
| 77 | +### Fixed |
| 78 | + |
| 79 | +- Sync progress (#150) @QuantumExplorer |
| 80 | +- Default paths and gap limits (#156) @HashEngineering |
| 81 | +- CFHeaders overlap verification and underflow prevention (#163) @PastaPastaPasta |
| 82 | +- FFI event flooding and memory leak in progress callbacks (#173) @PastaPastaPasta |
| 83 | +- `PeerNetworkManager` cast in `broadcast_transaction` (#185) @xdustinface |
| 84 | +- Use non-blocking `TcpStream` in TCP connection (#188) @xdustinface |
| 85 | +- Locking issue after #190 (#191) @xdustinface |
| 86 | +- Follow-up fixes to #190 (#193) @xdustinface |
| 87 | +- Let the examples start the network monitoring (#194) @xdustinface |
| 88 | +- Wait for MnListDiff responses before transitioning to next phase (#199) @pauldelucia |
| 89 | +- SPV Regtest/Devnet support (#227) @xdustinface |
| 90 | +- Drop duplicated received filter update (#248) @xdustinface |
| 91 | +- Compressed headers protocol compatibility with Dash Core (#256) @PastaPastaPasta |
| 92 | +- Stop loading headers twice into `ChainState::headers` (#258) @xdustinface |
| 93 | +- FILTER_REQUEST_BATCH_SIZE should be 1000, not 100 (#260) @PastaPastaPasta |
| 94 | +- Return the correct block hash in `prepare_sync` (#262) @xdustinface |
| 95 | +- `maintain_gap_limit` target calculation off by one (#286) @xdustinface |
| 96 | +- Docs build issues (#297) @xdustinface |
| 97 | + |
1 | 98 | # 0.28 - 2022-04-20 "The Taproot Release" |
2 | 99 |
|
3 | 100 | At nearly nine months, this is our longest release cycle ever, and thanks |
|
0 commit comments