Skip to content

Commit ce992f7

Browse files
Merge dashpay#5972: chore: merge master 20.1.1 back into develop
b96b202 chore: bump version to 20.1.1 (pasta) 83cac77 docs: add v20.1.1 release notes (pasta) e58c7c4 Merge dashpay#5970: guix: exclude debug symbols for apple from list of hashes due to its non-determinism (pasta) 2bde1dd Merge dashpay#5927: fix: check if message can be handled before attempting to deserialize (pasta) 1637fa5 Merge dashpay#5968: docs: add v20.0.4 release notes (pasta) fd46c4c Merge dashpay#5962: fix: deadlock over cs_main and contributionsCacheCs in dkssessionmgr (pasta) Pull request description: Merge master into develop Top commit has no ACKs. Tree-SHA512: e65ffefcb7d0e92367ff322cab533f8505f0e9d00ab136bccb1dbf86ad64d6b710b5c9f9943594c544827d2eb69f5d0ba185962a2ac0b16c6b776a94f44cfb42
2 parents 27c0813 + 250856d commit ce992f7

File tree

2 files changed

+199
-96
lines changed

2 files changed

+199
-96
lines changed

doc/release-notes.md

Lines changed: 8 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# Dash Core version v20.1.0
1+
# Dash Core version v20.1.1
22

3-
This is a new minor version release, including various new features, improvements, and bug fixes.
3+
This is a new patch version release, including bug fixes.
44

55
This release is optional but recommended for all nodes.
66

@@ -28,111 +28,22 @@ reindex or re-sync the whole chain.
2828

2929
# Notable changes
3030

31-
## HD Wallets Enabled by Default
31+
## Work Queue RPC Fix / Deadlock Fix
3232

33-
In this release, we are taking a significant step towards enhancing the Dash wallet's usability by enabling Hierarchical
34-
Deterministic (HD) wallets by default. This change aligns the behavior of `dashd` and `dash-qt` with the previously
35-
optional `-usehd=1` flag, making HD wallets the standard for all users.
33+
A deadlock caused nodes to become non-responsive and RPC to report "Work depth queue exceeded".
34+
Thanks to Konstantin Akimov (knst) who discovered the cause. This previously caused masternodes to become PoSe banned.
3635

37-
While HD wallets are now enabled by default to improve user experience, Dash Core still allows for the creation of
38-
non-HD wallets by using the `-usehd=0` flag. However, users should be aware that this option is intended for legacy
39-
support and will be removed in future releases. Importantly, even with an HD wallet, users can still import non-HD
40-
private keys, ensuring flexibility in managing their funds.
41-
42-
## Windows release signing
43-
44-
Windows releases are signed by a new certificate that replaces the expired one used previously.
45-
46-
## Removal of Non-Deterministic InstantSend
47-
48-
Legacy InstantSend was deprecated with the activation of Deterministic InstantSend, but we kept the underlying logic for some time to ensure a smooth transition. v20.1 finally removes all Legacy InstantSend logic and will no longer support sending and receiving islock p2p messages and inv p2p messages with id 30. Such messages will be seen as unknown by v20.1 nodes. The protocol version was incremented to 70231 to indicate a change in network protocol. Please note that the -llmqinstantsend and -llmqtestinstantsend command line options have also been removed as part of this change.
49-
50-
## RPC changes
51-
52-
- `protx info`: It's now possible to get historical data at a specific block by providing its blockhash.
53-
- `gettxchainlocks`: will now return the status `mempool` indicating whether the transaction is in the mempool.
54-
or not.
55-
- Exposed transaction version numbers are now treated as unsigned 16-bit integers instead of signed 16-bit integers.
56-
This matches their treatment in consensus logic. Versions greater than 3 continue to be non-standard (matching previous
57-
behavior of smaller than 1 or greater than 3 being non-standard). Note that this includes the joinpsbt command, which
58-
combines partially-signed transactions by selecting the highest version number.
59-
- `getpeerinfo`: now returns a `connection_type` field. This indicates the type of connection established with
60-
the peer. It will return one of six options. For more information, see the `getpeerinfo` help documentation.
61-
- `getpeerinfo`: now has additional `last_block` and `last_transaction` fields that return the UNIX epoch time
62-
of the last block and the last valid transaction received from each peer.
63-
- `getblockchaininfo`: now returns a new `time` field that provides the chain tip time.
64-
- `fundrawtransaction` and `walletcreatefundedpsbt`: when used with the `lockUnspents` argument now lock manually
65-
selected coins, in addition to automatically selected coins. Note that locked coins are never used in automatic coin
66-
selection, but can still be manually selected.
67-
- `testmempoolaccept`: returns `vsize` and a `fee` object with the `base` fee if the transaction passes
68-
validation. The `testmempoolaccept` RPC now accepts multiple transactions (still experimental at the moment, API may be
69-
unstable).
70-
71-
## Added RPCs
72-
73-
- `submitchainlock`: allows the submission of a ChainLock signature. Note: This RPC is whitelisted for the Platform
74-
RPC user.
75-
- `getassetunlockstatuses`: allows fetching of Asset Unlock txs by their withdrawal index. The RPC accepts an array
76-
of indexes and an optional block height. The possible outcomes per each index are: `chainlocked`, `mined`, `mempooled`,
77-
`unknown`. Note: If a specific block height is passed on request, then only `chainlocked` and `unknown` outcomes are
78-
possible. This RPC is whitelisted for the Platform RPC user.
79-
- `quorum dkginfo`: returns information about DKGs: `active_dkgs` and `next_dkg`.
80-
- `getrawtransactionmulti`: allows requesting a batch of up to 100 raw transactions per request.
81-
82-
## Docker Build System
83-
84-
Modified the Dockerfile to exclude the `dash-qt` graphical wallet interface from the set of binaries copied to
85-
`/usr/local/bin` during the Docker image build process. This change streamlines the Docker image, making it more
86-
suitable for server environments and headless applications, where the graphical user interface of `dash-qt` is not
87-
required. The update enhances the Docker image's efficiency by reducing its size and minimizing unnecessary components.
88-
89-
## Command-line options
90-
91-
- The same ZeroMQ notification (e.g. `-zmqpubhashtx=address`) can now be specified multiple times to publish the same
92-
notification to different ZeroMQ sockets.
93-
- `-startupnotify=<cmd>`: Execute command on startup.
94-
95-
96-
## Notification changes
97-
98-
- `-walletnotify` notifications are now sent for wallet transactions that are removed from the mempool because they
99-
conflict with a new block. These notifications were sent previously, but have been broken since
100-
the v18.1 release.
101-
- The `startupnotify` option is used to specify a command to execute when Dash Core has finished with its startup
102-
sequence.
103-
104-
## Build System
105-
106-
The `--enable-upnp-default` and `--enable-natpmp-default` options have been removed. If you want to use port mapping,
107-
you can configure it using a `.conf` file, or by passing the relevant options at runtime.
108-
109-
## Wallet
110-
111-
- The wallet can create a transaction without change even when the keypool is empty. Previously it failed.
112-
- New Discreet mode for hiding balances in Dash-Qt
113-
- Added a "Close all wallet" menu item for Dash-Qt
114-
115-
## Backports from Bitcoin Core
116-
117-
This release introduces many updates from Bitcoin v0.20-v25.0. Breaking changes are documented here; however, for
118-
additional detail on what’s included in Bitcoin, please refer to their release notes.
119-
120-
# v20.1.0 Change log
36+
# v20.1.1 Change log
12137

12238
See detailed [set of changes][set-of-changes].
12339

12440
# Credits
12541

12642
Thanks to everyone who directly contributed to this release:
12743

128-
- Alessandro Rezzi
129-
- Kittywhiskers Van Gogh
13044
- Konstantin Akimov
131-
- Odysseas Gabrielides
13245
- PastaPastaPasta
13346
- thephez
134-
- UdjinM6
135-
- Vijay Manikpuri
13647

13748
As well as everyone that submitted issues, reviewed pull requests and helped
13849
debug the release candidates.
@@ -141,6 +52,7 @@ debug the release candidates.
14152

14253
These release are considered obsolete. Old release notes can be found here:
14354

55+
- [v20.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.1.0.md) released March/5/2024
14456
- [v20.0.4](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.4.md) released Jan/13/2024
14557
- [v20.0.3](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.3.md) released December/26/2023
14658
- [v20.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.2.md) released December/06/2023
@@ -188,4 +100,4 @@ These release are considered obsolete. Old release notes can be found here:
188100
- [v0.10.x](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.10.0.md) released Sep/25/2014
189101
- [v0.9.x](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.9.0.md) released Mar/13/2014
190102

191-
[set-of-changes]: https://github.com/dashpay/dash/compare/v20.0.4...dashpay:v20.1.0
103+
[set-of-changes]: https://github.com/dashpay/dash/compare/v20.1.0...dashpay:v20.1.1

0 commit comments

Comments
 (0)