mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 04:22:55 +01:00
Merge pull request #4236 from UdjinM6/merge_master_0.17.0.3
Merge master 0.17.0.3 back into develop
This commit is contained in:
commit
c18a415c5e
@ -3,7 +3,7 @@ AC_PREREQ([2.60])
|
|||||||
define(_CLIENT_VERSION_MAJOR, 0)
|
define(_CLIENT_VERSION_MAJOR, 0)
|
||||||
define(_CLIENT_VERSION_MINOR, 17)
|
define(_CLIENT_VERSION_MINOR, 17)
|
||||||
define(_CLIENT_VERSION_REVISION, 0)
|
define(_CLIENT_VERSION_REVISION, 0)
|
||||||
define(_CLIENT_VERSION_BUILD, 2)
|
define(_CLIENT_VERSION_BUILD, 3)
|
||||||
define(_CLIENT_VERSION_IS_RELEASE, false)
|
define(_CLIENT_VERSION_IS_RELEASE, false)
|
||||||
define(_COPYRIGHT_YEAR, 2021)
|
define(_COPYRIGHT_YEAR, 2021)
|
||||||
define(_COPYRIGHT_HOLDERS,[The %s developers])
|
define(_COPYRIGHT_HOLDERS,[The %s developers])
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3.
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3.
|
||||||
.TH DASH-CLI "1" "May 2021" "dash-cli v0.17.0.2" "User Commands"
|
.TH DASH-CLI "1" "May 2021" "dash-cli v0.17.0.3" "User Commands"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
dash-cli \- manual page for dash-cli v0.17.0.2
|
dash-cli \- manual page for dash-cli v0.17.0.3
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
Dash Core RPC client version v0.17.0.2
|
Dash Core RPC client version v0.17.0.3
|
||||||
.SS "Usage:"
|
.SS "Usage:"
|
||||||
.TP
|
.TP
|
||||||
dash\-cli [options] <command> [params]
|
dash\-cli [options] <command> [params]
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3.
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3.
|
||||||
.TH DASH-QT "1" "May 2021" "dash-qt v0.17.0.2" "User Commands"
|
.TH DASH-QT "1" "May 2021" "dash-qt v0.17.0.3" "User Commands"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
dash-qt \- manual page for dash-qt v0.17.0.2
|
dash-qt \- manual page for dash-qt v0.17.0.3
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
Dash Core version v0.17.0.2 (64\-bit)
|
Dash Core version v0.17.0.3 (64\-bit)
|
||||||
Usage:
|
Usage:
|
||||||
.IP
|
.IP
|
||||||
dash\-qt [command\-line options]
|
dash\-qt [command\-line options]
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3.
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3.
|
||||||
.TH DASH-TX "1" "May 2021" "dash-tx v0.17.0.2" "User Commands"
|
.TH DASH-TX "1" "May 2021" "dash-tx v0.17.0.3" "User Commands"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
dash-tx \- manual page for dash-tx v0.17.0.2
|
dash-tx \- manual page for dash-tx v0.17.0.3
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
Dash Core dash\-tx utility version v0.17.0.2
|
Dash Core dash\-tx utility version v0.17.0.3
|
||||||
.SS "Usage:"
|
.SS "Usage:"
|
||||||
.TP
|
.TP
|
||||||
dash\-tx [options] <hex\-tx> [commands]
|
dash\-tx [options] <hex\-tx> [commands]
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3.
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.3.
|
||||||
.TH DASHD "1" "May 2021" "dashd v0.17.0.2" "User Commands"
|
.TH DASHD "1" "May 2021" "dashd v0.17.0.3" "User Commands"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
dashd \- manual page for dashd v0.17.0.2
|
dashd \- manual page for dashd v0.17.0.3
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
Dash Core Daemon version v0.17.0.2
|
Dash Core Daemon version v0.17.0.3
|
||||||
.SS "Usage:"
|
.SS "Usage:"
|
||||||
.TP
|
.TP
|
||||||
dashd [options]
|
dashd [options]
|
||||||
|
@ -1,14 +1,11 @@
|
|||||||
Dash Core version 0.17.0.2
|
Dash Core version 0.17.0.3
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
Release is now available from:
|
Release is now available from:
|
||||||
|
|
||||||
<https://www.dash.org/downloads/#wallets>
|
<https://www.dash.org/downloads/#wallets>
|
||||||
|
|
||||||
This is a new major version release, bringing new features, various bugfixes
|
This is a new hotfix release.
|
||||||
and other improvements.
|
|
||||||
|
|
||||||
This release is mandatory for all nodes.
|
|
||||||
|
|
||||||
Please report bugs using the issue tracker at github:
|
Please report bugs using the issue tracker at github:
|
||||||
|
|
||||||
@ -53,237 +50,30 @@ is not recommended.
|
|||||||
Notable changes
|
Notable changes
|
||||||
===============
|
===============
|
||||||
|
|
||||||
Opcode updates
|
This release adds some missing translations and help strings. It also fixes
|
||||||
--------------
|
a couple of build issues and a rare crash on some linux systems.
|
||||||
Several opcodes have been reactivated/introduced to broaden the functionality
|
|
||||||
of the system and enable developers to build new solutions. These opcodes are
|
|
||||||
a combination of previously disabled ones that have been found to be safe and
|
|
||||||
new ones previously introduced by Bitcoin Cash. Details of the opcodes are
|
|
||||||
provided in [DIP-0020](https://github.com/dashpay/dips/blob/master/dip-0020.md).
|
|
||||||
|
|
||||||
These opcodes are activated via a BIP9 style hard fork that will begin
|
0.17.0.3 Change log
|
||||||
signalling on July 1st using bit 6. Any nodes that do not upgrade by the time
|
|
||||||
this feature is activated will diverge from the rest of the network.
|
|
||||||
|
|
||||||
DKG Data Sharing
|
|
||||||
----------------
|
|
||||||
Quorum resilience has been improved by enabling masternodes to request DKG data
|
|
||||||
from other quorum members. This allows Dash Platform to obtain required
|
|
||||||
information while also making it possible for corrupted masternodes to recover
|
|
||||||
the DKG data they need to participate in quorums they are part of. Details are
|
|
||||||
provided in [DIP-0021](https://github.com/dashpay/dips/blob/master/dip-0021.md).
|
|
||||||
|
|
||||||
Platform support
|
|
||||||
----------------
|
|
||||||
Support for Dash Platform has been expanded through the addition of a new
|
|
||||||
quorum type `LLMQ_100_67`, several RPCs, and a way to limit Platform RPC access
|
|
||||||
to a subset of allowed RPCs, specifically:
|
|
||||||
- `getbestblockhash`
|
|
||||||
- `getbestchainlock`
|
|
||||||
- `getblockcount`
|
|
||||||
- `getblockhash`
|
|
||||||
- `quorum sign` (for platform quorums only)
|
|
||||||
- `quorum verify`
|
|
||||||
- `verifyislock`
|
|
||||||
|
|
||||||
These changes provide necessary Platform capabilities while maximizing the
|
|
||||||
isolation between Core and Platform. New quorum type will be activated using
|
|
||||||
the same bit 6 introduced to activate new opcodes.
|
|
||||||
|
|
||||||
BLS update
|
|
||||||
----------
|
|
||||||
Dash Core’s BLS signature library has been updated based on v1.0 of the
|
|
||||||
Chia BLS library to support migration to a new BLS signature scheme which will
|
|
||||||
be implemented in a future version of DashCore. These changes will be made to
|
|
||||||
align with standards and improve security.
|
|
||||||
|
|
||||||
Network performance improvements
|
|
||||||
--------------------------------
|
|
||||||
This version of Dash Core includes multiple optimizations to the network and
|
|
||||||
p2p message handling code.
|
|
||||||
|
|
||||||
We reintroduced [Intra-Quorum Connections](https://github.com/dashpay/dips/blob/master/dip-0006.md#intra-quorum-communication)
|
|
||||||
which were temporary disabled with the introduction of
|
|
||||||
`SPORK_21_QUORUM_ALL_CONNECTED`. This should make communications for masternodes
|
|
||||||
belonging to the same quorum more robust and improve network connectivity in
|
|
||||||
general.
|
|
||||||
|
|
||||||
FreeBSD and MacOS machines will now default to the new `kqueue` network mode
|
|
||||||
which is similar to `epoll` mode on linux-based. It removes most of the CPU
|
|
||||||
overhead caused by the sub-optimal use of `select` in the network thread when
|
|
||||||
many connections were involved.
|
|
||||||
|
|
||||||
Wallet changes
|
|
||||||
--------------
|
|
||||||
Upgrading a non-Hierarchical Deterministic (HD) wallet to an HD wallet is now
|
|
||||||
possible. Previously new HD wallets could be created, but non-HD wallets could
|
|
||||||
not be upgraded. This update will enable existing non-HD wallets to upgrade to
|
|
||||||
take advantage of HD wallet features. Upgrades can be done via either the debug
|
|
||||||
console or command line and a new backup must be made when this upgrade is
|
|
||||||
performed.
|
|
||||||
|
|
||||||
Users can now load and unload wallets dynamically via RPC and GUI console.
|
|
||||||
It's now possible to have multiple wallets loaded at the same time, however only
|
|
||||||
one of them is going to be active and receive updates or be used for sending
|
|
||||||
trasactions at a specific point in time.
|
|
||||||
|
|
||||||
Also, enabling wallet encryption no longer requires a wallet restart.
|
|
||||||
|
|
||||||
Sporks
|
|
||||||
------
|
|
||||||
Several spork changes have been made to streamline code and improve system
|
|
||||||
reliability. Activation of `SPORK_22_PS_MORE_PARTICIPANTS` in DashCore v0.16
|
|
||||||
has rendered that spork unnecessary. The associated logic has been hardened
|
|
||||||
and the spork removed. `SPORK_21_QUORUM_ALL_CONNECTED` logic has been split
|
|
||||||
into two sporks, `SPORK_21_QUORUM_ALL_CONNECTED` and `SPORK_23_QUORUM_POSE`,
|
|
||||||
so that masternode quorum connectivity and quorum Proof of Service (PoSe) can
|
|
||||||
be controlled independently. Finally, `SPORK_2_INSTANTSEND_ENABLED` has a new
|
|
||||||
mode (value: 1) that enables a smooth transition in case InstantSend needs to
|
|
||||||
be disabled.
|
|
||||||
|
|
||||||
Statoshi backport
|
|
||||||
------------------
|
|
||||||
This version includes a [backport](https://github.com/dashpay/dash/pull/2515)
|
|
||||||
of [Statoshi functionality](https://github.com/jlopp/statoshi) which allows
|
|
||||||
nodes to emit metrics to a StatsD instance. This can help node operators to
|
|
||||||
learn more about node performance and network state in general. We added
|
|
||||||
several command line options to give node operators more control, see options
|
|
||||||
starting with `-stats` prefix.
|
|
||||||
|
|
||||||
PrivateSend rename
|
|
||||||
------------------
|
|
||||||
PrivateSend has been renamed to CoinJoin to better reflect the functionality
|
|
||||||
it provides and align with industry standard terminology. The renaming only
|
|
||||||
applies to the UI and RPCs but does not change functionality.
|
|
||||||
|
|
||||||
Build system
|
|
||||||
------------
|
|
||||||
Multiple packaged in `depends` were updated. Current versions are:
|
|
||||||
- biplist 1.0.3
|
|
||||||
- bls-dash 1.0.1
|
|
||||||
- boost 1.70.0
|
|
||||||
- cmake 3.14.7
|
|
||||||
- expat 2.2.5
|
|
||||||
- mac alias 2.0.7
|
|
||||||
- miniupnpc 2.0.20180203
|
|
||||||
- qt 5.9.6
|
|
||||||
- zeromq 4.2.3
|
|
||||||
|
|
||||||
Packages libX11, libXext, xextproto and xtrans are no longer used.
|
|
||||||
|
|
||||||
Minimum supported macOS version was bumped to 10.10.
|
|
||||||
|
|
||||||
RPC changes
|
|
||||||
-----------
|
|
||||||
There are seven new RPC commands which are Dash specific and seven new RPC
|
|
||||||
commands introduced through Bitcoin backports. One previously deprecated RPC,
|
|
||||||
`estimatefee`, was removed and several RPCs have been deprecated.
|
|
||||||
|
|
||||||
The new RPCs are:
|
|
||||||
- `createwallet`
|
|
||||||
- `getaddressesbylabel`
|
|
||||||
- `getaddressinfo`
|
|
||||||
- `getzmqnotifications`
|
|
||||||
- `gobject list-prepared`
|
|
||||||
- `listlabels`
|
|
||||||
- `masternode payments`
|
|
||||||
- `quorum getdata`
|
|
||||||
- `quorum verify`
|
|
||||||
- `signrawtransactionwithkey`
|
|
||||||
- `signrawtransactionwithwallet`
|
|
||||||
- `unloadwallet`
|
|
||||||
- `verifychainlock`
|
|
||||||
- `verifyislock`
|
|
||||||
- `upgradetohd`
|
|
||||||
|
|
||||||
The deprecated RPCs are all related to the deprecation of wallet accounts and
|
|
||||||
will be removed in DashCore v0.18. Note that the deprecation of wallet accounts
|
|
||||||
means that any RPCs that previously accepted an “account” parameter are
|
|
||||||
affected — please refer to the RPC help for details about specific RPCs.
|
|
||||||
|
|
||||||
The deprecated RPCs are:
|
|
||||||
- `getaccount`
|
|
||||||
- `getaccountaddress`
|
|
||||||
- `getaddressbyaccount`
|
|
||||||
- `getreceivedbyaccount`
|
|
||||||
- `listaccounts`
|
|
||||||
- `listreceivedbyaccount`
|
|
||||||
- `masternode current`
|
|
||||||
- `masternode winner`
|
|
||||||
- `move`
|
|
||||||
- `sendfrom`
|
|
||||||
- `setaccount`
|
|
||||||
|
|
||||||
`protx register` and `protx register_fund` RPCs now accept an additional `submit` parameter
|
|
||||||
which allows producing and printing ProRegTx-es without relaying them
|
|
||||||
to the network.
|
|
||||||
|
|
||||||
Also, please note that all mixing-related RPCs have been renamed to replace
|
|
||||||
“PrivateSend” with “CoinJoin” (e.g. `setprivatesendrounds` -> `setcoinjoinrounds`).
|
|
||||||
|
|
||||||
Please check `help <command>` for more detailed information on specific RPCs.
|
|
||||||
|
|
||||||
Command-line options
|
|
||||||
--------------------
|
|
||||||
Changes in existing cmd-line options:
|
|
||||||
|
|
||||||
New cmd-line options:
|
|
||||||
- `-dip8params`
|
|
||||||
- `-llmq-data-recovery`
|
|
||||||
- `-llmq-qvvec-sync`
|
|
||||||
- `-llmqinstantsend`
|
|
||||||
- `-platform-user`
|
|
||||||
- `-statsenabled`
|
|
||||||
- `-statshost`
|
|
||||||
- `-statshostname`
|
|
||||||
- `-statsport`
|
|
||||||
- `-statsns`
|
|
||||||
- `-statsperiod`
|
|
||||||
- `-zmqpubhashrecoveredsig`
|
|
||||||
- `-zmqpubrawrecoveredsig`
|
|
||||||
|
|
||||||
Also, please note that all mixing-related command-line options have been
|
|
||||||
renamed to replace “PrivateSend” with “CoinJoin” (e.g. `setprivatesendrounds`
|
|
||||||
-> `setcoinjoinrounds`).
|
|
||||||
|
|
||||||
Please check `Help -> Command-line options` in Qt wallet or `dashd --help` for
|
|
||||||
more information.
|
|
||||||
|
|
||||||
Backports from Bitcoin Core 0.17
|
|
||||||
--------------------------------
|
|
||||||
|
|
||||||
This release also introduces over 450 updates from Bitcoin v0.17 as well as
|
|
||||||
some updates from Bitcoin v0.18 and more recent versions. This includes a
|
|
||||||
number of performance improvements, dynamic loading of wallets via RPC, support
|
|
||||||
for signalling pruned nodes, and a number of other updates that will benefit
|
|
||||||
Dash users. Bitcoin changes that do not align with Dash’s product needs, such
|
|
||||||
as SegWit and RBF, are excluded from our backporting. For additional detail on
|
|
||||||
what’s included in Bitcoin v0.17, please refer to [their release notes](https://github.com/bitcoin/bitcoin/blob/master/doc/release-notes/release-notes-0.17.0.md).
|
|
||||||
|
|
||||||
Miscellaneous
|
|
||||||
-------------
|
|
||||||
A lot of refactoring, code cleanups and other small fixes were done in this release.
|
|
||||||
|
|
||||||
0.17.0.2 Change log
|
|
||||||
===================
|
===================
|
||||||
|
|
||||||
See detailed [set of changes](https://github.com/dashpay/dash/compare/v0.16.1.1...dashpay:v0.17.0.2).
|
See detailed [set of changes](https://github.com/dashpay/dash/compare/v0.17.0.2...dashpay:v0.17.0.3).
|
||||||
|
|
||||||
|
- [`6a54af0df7`](https://github.com/dashpay/dash/commit/6a54af0df7) Bump to v0.17.0.3
|
||||||
|
- [`97e8461234`](https://github.com/dashpay/dash/commit/97e8461234) doc: Archive v0.17.0.2 release notes
|
||||||
|
- [`96c041896b`](https://github.com/dashpay/dash/commit/96c041896b) feat: add tor entrypoint script for use in dashmate (#4182)
|
||||||
|
- [`3661f36bbd`](https://github.com/dashpay/dash/commit/3661f36bbd) Merge #14416: Fix OSX dmg issue (10.12 to 10.14) (#4177)
|
||||||
|
- [`4f4bda0557`](https://github.com/dashpay/dash/commit/4f4bda0557) depends: Undefine `BLSALLOC_SODIUM` in `bls-dash.mk` (#4176)
|
||||||
|
- [`575e0a3070`](https://github.com/dashpay/dash/commit/575e0a3070) qt: Add `QFont::Normal` as a supported font weight when no other font weights were found (#4175)
|
||||||
|
- [`ce4a73b790`](https://github.com/dashpay/dash/commit/ce4a73b790) rpc: Fix `upgradetohd` help text (#4170)
|
||||||
|
- [`2fa8ddf160`](https://github.com/dashpay/dash/commit/2fa8ddf160) Translations 202105 (add missing) (#4169)
|
||||||
|
|
||||||
Credits
|
Credits
|
||||||
=======
|
=======
|
||||||
|
|
||||||
Thanks to everyone who directly contributed to this release:
|
Thanks to everyone who directly contributed to this release:
|
||||||
|
|
||||||
- 10xcryptodev
|
|
||||||
- dustinface (xdustinface)
|
- dustinface (xdustinface)
|
||||||
- Kittywhiskers Van Gogh (kittywhiskers)
|
|
||||||
- Kolby Moroz Liebl (KolbyML)
|
|
||||||
- Konstantin Shuplenkov (shuplenkov)
|
|
||||||
- Minh20
|
|
||||||
- PastaPastaPasta
|
|
||||||
- strophy
|
- strophy
|
||||||
- thephez
|
|
||||||
- tomthoros
|
|
||||||
- UdjinM6
|
- UdjinM6
|
||||||
|
|
||||||
As well as everyone that submitted issues and reviewed pull requests.
|
As well as everyone that submitted issues and reviewed pull requests.
|
||||||
@ -311,6 +101,7 @@ Dash Core tree 0.12.1.x was a fork of Bitcoin Core tree 0.12.
|
|||||||
|
|
||||||
These release are considered obsolete. Old release notes can be found here:
|
These release are considered obsolete. Old release notes can be found here:
|
||||||
|
|
||||||
|
- [v0.17.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.17.0.2.md) released May/19/2021
|
||||||
- [v0.16.1.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.16.1.1.md) released November/17/2020
|
- [v0.16.1.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.16.1.1.md) released November/17/2020
|
||||||
- [v0.16.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.16.1.0.md) released November/14/2020
|
- [v0.16.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.16.1.0.md) released November/14/2020
|
||||||
- [v0.16.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.16.0.1.md) released September/30/2020
|
- [v0.16.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.16.0.1.md) released September/30/2020
|
||||||
|
341
doc/release-notes/dash/release-notes-0.17.0.2.md
Normal file
341
doc/release-notes/dash/release-notes-0.17.0.2.md
Normal file
@ -0,0 +1,341 @@
|
|||||||
|
Dash Core version 0.17.0.2
|
||||||
|
==========================
|
||||||
|
|
||||||
|
Release is now available from:
|
||||||
|
|
||||||
|
<https://www.dash.org/downloads/#wallets>
|
||||||
|
|
||||||
|
This is a new major version release, bringing new features, various bugfixes
|
||||||
|
and other improvements.
|
||||||
|
|
||||||
|
This release is mandatory for all nodes.
|
||||||
|
|
||||||
|
Please report bugs using the issue tracker at github:
|
||||||
|
|
||||||
|
<https://github.com/dashpay/dash/issues>
|
||||||
|
|
||||||
|
|
||||||
|
Upgrading and downgrading
|
||||||
|
=========================
|
||||||
|
|
||||||
|
How to Upgrade
|
||||||
|
--------------
|
||||||
|
|
||||||
|
If you are running an older version, shut it down. Wait until it has completely
|
||||||
|
shut down (which might take a few minutes for older versions), then run the
|
||||||
|
installer (on Windows) or just copy over /Applications/Dash-Qt (on Mac) or
|
||||||
|
dashd/dash-qt (on Linux). If you upgrade after DIP0003 activation and you were
|
||||||
|
using version < 0.13 you will have to reindex (start with -reindex-chainstate
|
||||||
|
or -reindex) to make sure your wallet has all the new data synced. Upgrading
|
||||||
|
from version 0.13 should not require any additional actions.
|
||||||
|
|
||||||
|
When upgrading from a version prior to 0.14.0.3, the
|
||||||
|
first startup of Dash Core will run a migration process which can take a few
|
||||||
|
minutes to finish. After the migration, a downgrade to an older version is only
|
||||||
|
possible with a reindex (or reindex-chainstate).
|
||||||
|
|
||||||
|
Downgrade warning
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
### Downgrade to a version < 0.14.0.3
|
||||||
|
|
||||||
|
Downgrading to a version older than 0.14.0.3 is no longer supported due to
|
||||||
|
changes in the "evodb" database format. If you need to use an older version,
|
||||||
|
you must either reindex or re-sync the whole chain.
|
||||||
|
|
||||||
|
### Downgrade of masternodes to < 0.17.0.2
|
||||||
|
|
||||||
|
Starting with the 0.16 release, masternodes verify the protocol version of other
|
||||||
|
masternodes. This results in PoSe punishment/banning for outdated masternodes,
|
||||||
|
so downgrading even prior to the activation of the introduced hard-fork changes
|
||||||
|
is not recommended.
|
||||||
|
|
||||||
|
Notable changes
|
||||||
|
===============
|
||||||
|
|
||||||
|
Opcode updates
|
||||||
|
--------------
|
||||||
|
Several opcodes have been reactivated/introduced to broaden the functionality
|
||||||
|
of the system and enable developers to build new solutions. These opcodes are
|
||||||
|
a combination of previously disabled ones that have been found to be safe and
|
||||||
|
new ones previously introduced by Bitcoin Cash. Details of the opcodes are
|
||||||
|
provided in [DIP-0020](https://github.com/dashpay/dips/blob/master/dip-0020.md).
|
||||||
|
|
||||||
|
These opcodes are activated via a BIP9 style hard fork that will begin
|
||||||
|
signalling on July 1st using bit 6. Any nodes that do not upgrade by the time
|
||||||
|
this feature is activated will diverge from the rest of the network.
|
||||||
|
|
||||||
|
DKG Data Sharing
|
||||||
|
----------------
|
||||||
|
Quorum resilience has been improved by enabling masternodes to request DKG data
|
||||||
|
from other quorum members. This allows Dash Platform to obtain required
|
||||||
|
information while also making it possible for corrupted masternodes to recover
|
||||||
|
the DKG data they need to participate in quorums they are part of. Details are
|
||||||
|
provided in [DIP-0021](https://github.com/dashpay/dips/blob/master/dip-0021.md).
|
||||||
|
|
||||||
|
Platform support
|
||||||
|
----------------
|
||||||
|
Support for Dash Platform has been expanded through the addition of a new
|
||||||
|
quorum type `LLMQ_100_67`, several RPCs, and a way to limit Platform RPC access
|
||||||
|
to a subset of allowed RPCs, specifically:
|
||||||
|
- `getbestblockhash`
|
||||||
|
- `getbestchainlock`
|
||||||
|
- `getblockcount`
|
||||||
|
- `getblockhash`
|
||||||
|
- `quorum sign` (for platform quorums only)
|
||||||
|
- `quorum verify`
|
||||||
|
- `verifyislock`
|
||||||
|
|
||||||
|
These changes provide necessary Platform capabilities while maximizing the
|
||||||
|
isolation between Core and Platform. New quorum type will be activated using
|
||||||
|
the same bit 6 introduced to activate new opcodes.
|
||||||
|
|
||||||
|
BLS update
|
||||||
|
----------
|
||||||
|
Dash Core’s BLS signature library has been updated based on v1.0 of the
|
||||||
|
Chia BLS library to support migration to a new BLS signature scheme which will
|
||||||
|
be implemented in a future version of DashCore. These changes will be made to
|
||||||
|
align with standards and improve security.
|
||||||
|
|
||||||
|
Network performance improvements
|
||||||
|
--------------------------------
|
||||||
|
This version of Dash Core includes multiple optimizations to the network and
|
||||||
|
p2p message handling code.
|
||||||
|
|
||||||
|
We reintroduced [Intra-Quorum Connections](https://github.com/dashpay/dips/blob/master/dip-0006.md#intra-quorum-communication)
|
||||||
|
which were temporary disabled with the introduction of
|
||||||
|
`SPORK_21_QUORUM_ALL_CONNECTED`. This should make communications for masternodes
|
||||||
|
belonging to the same quorum more robust and improve network connectivity in
|
||||||
|
general.
|
||||||
|
|
||||||
|
FreeBSD and MacOS machines will now default to the new `kqueue` network mode
|
||||||
|
which is similar to `epoll` mode on linux-based. It removes most of the CPU
|
||||||
|
overhead caused by the sub-optimal use of `select` in the network thread when
|
||||||
|
many connections were involved.
|
||||||
|
|
||||||
|
Wallet changes
|
||||||
|
--------------
|
||||||
|
Upgrading a non-Hierarchical Deterministic (HD) wallet to an HD wallet is now
|
||||||
|
possible. Previously new HD wallets could be created, but non-HD wallets could
|
||||||
|
not be upgraded. This update will enable existing non-HD wallets to upgrade to
|
||||||
|
take advantage of HD wallet features. Upgrades can be done via either the debug
|
||||||
|
console or command line and a new backup must be made when this upgrade is
|
||||||
|
performed.
|
||||||
|
|
||||||
|
Users can now load and unload wallets dynamically via RPC and GUI console.
|
||||||
|
It's now possible to have multiple wallets loaded at the same time, however only
|
||||||
|
one of them is going to be active and receive updates or be used for sending
|
||||||
|
trasactions at a specific point in time.
|
||||||
|
|
||||||
|
Also, enabling wallet encryption no longer requires a wallet restart.
|
||||||
|
|
||||||
|
Sporks
|
||||||
|
------
|
||||||
|
Several spork changes have been made to streamline code and improve system
|
||||||
|
reliability. Activation of `SPORK_22_PS_MORE_PARTICIPANTS` in DashCore v0.16
|
||||||
|
has rendered that spork unnecessary. The associated logic has been hardened
|
||||||
|
and the spork removed. `SPORK_21_QUORUM_ALL_CONNECTED` logic has been split
|
||||||
|
into two sporks, `SPORK_21_QUORUM_ALL_CONNECTED` and `SPORK_23_QUORUM_POSE`,
|
||||||
|
so that masternode quorum connectivity and quorum Proof of Service (PoSe) can
|
||||||
|
be controlled independently. Finally, `SPORK_2_INSTANTSEND_ENABLED` has a new
|
||||||
|
mode (value: 1) that enables a smooth transition in case InstantSend needs to
|
||||||
|
be disabled.
|
||||||
|
|
||||||
|
Statoshi backport
|
||||||
|
------------------
|
||||||
|
This version includes a [backport](https://github.com/dashpay/dash/pull/2515)
|
||||||
|
of [Statoshi functionality](https://github.com/jlopp/statoshi) which allows
|
||||||
|
nodes to emit metrics to a StatsD instance. This can help node operators to
|
||||||
|
learn more about node performance and network state in general. We added
|
||||||
|
several command line options to give node operators more control, see options
|
||||||
|
starting with `-stats` prefix.
|
||||||
|
|
||||||
|
PrivateSend rename
|
||||||
|
------------------
|
||||||
|
PrivateSend has been renamed to CoinJoin to better reflect the functionality
|
||||||
|
it provides and align with industry standard terminology. The renaming only
|
||||||
|
applies to the UI and RPCs but does not change functionality.
|
||||||
|
|
||||||
|
Build system
|
||||||
|
------------
|
||||||
|
Multiple packaged in `depends` were updated. Current versions are:
|
||||||
|
- biplist 1.0.3
|
||||||
|
- bls-dash 1.0.1
|
||||||
|
- boost 1.70.0
|
||||||
|
- cmake 3.14.7
|
||||||
|
- expat 2.2.5
|
||||||
|
- mac alias 2.0.7
|
||||||
|
- miniupnpc 2.0.20180203
|
||||||
|
- qt 5.9.6
|
||||||
|
- zeromq 4.2.3
|
||||||
|
|
||||||
|
Packages libX11, libXext, xextproto and xtrans are no longer used.
|
||||||
|
|
||||||
|
Minimum supported macOS version was bumped to 10.10.
|
||||||
|
|
||||||
|
RPC changes
|
||||||
|
-----------
|
||||||
|
There are seven new RPC commands which are Dash specific and seven new RPC
|
||||||
|
commands introduced through Bitcoin backports. One previously deprecated RPC,
|
||||||
|
`estimatefee`, was removed and several RPCs have been deprecated.
|
||||||
|
|
||||||
|
The new RPCs are:
|
||||||
|
- `createwallet`
|
||||||
|
- `getaddressesbylabel`
|
||||||
|
- `getaddressinfo`
|
||||||
|
- `getzmqnotifications`
|
||||||
|
- `gobject list-prepared`
|
||||||
|
- `listlabels`
|
||||||
|
- `masternode payments`
|
||||||
|
- `quorum getdata`
|
||||||
|
- `quorum verify`
|
||||||
|
- `signrawtransactionwithkey`
|
||||||
|
- `signrawtransactionwithwallet`
|
||||||
|
- `unloadwallet`
|
||||||
|
- `verifychainlock`
|
||||||
|
- `verifyislock`
|
||||||
|
- `upgradetohd`
|
||||||
|
|
||||||
|
The deprecated RPCs are all related to the deprecation of wallet accounts and
|
||||||
|
will be removed in DashCore v0.18. Note that the deprecation of wallet accounts
|
||||||
|
means that any RPCs that previously accepted an “account” parameter are
|
||||||
|
affected — please refer to the RPC help for details about specific RPCs.
|
||||||
|
|
||||||
|
The deprecated RPCs are:
|
||||||
|
- `getaccount`
|
||||||
|
- `getaccountaddress`
|
||||||
|
- `getaddressbyaccount`
|
||||||
|
- `getreceivedbyaccount`
|
||||||
|
- `listaccounts`
|
||||||
|
- `listreceivedbyaccount`
|
||||||
|
- `masternode current`
|
||||||
|
- `masternode winner`
|
||||||
|
- `move`
|
||||||
|
- `sendfrom`
|
||||||
|
- `setaccount`
|
||||||
|
|
||||||
|
`protx register` and `protx register_fund` RPCs now accept an additional `submit` parameter
|
||||||
|
which allows producing and printing ProRegTx-es without relaying them
|
||||||
|
to the network.
|
||||||
|
|
||||||
|
Also, please note that all mixing-related RPCs have been renamed to replace
|
||||||
|
“PrivateSend” with “CoinJoin” (e.g. `setprivatesendrounds` -> `setcoinjoinrounds`).
|
||||||
|
|
||||||
|
Please check `help <command>` for more detailed information on specific RPCs.
|
||||||
|
|
||||||
|
Command-line options
|
||||||
|
--------------------
|
||||||
|
Changes in existing cmd-line options:
|
||||||
|
|
||||||
|
New cmd-line options:
|
||||||
|
- `-dip8params`
|
||||||
|
- `-llmq-data-recovery`
|
||||||
|
- `-llmq-qvvec-sync`
|
||||||
|
- `-llmqinstantsend`
|
||||||
|
- `-platform-user`
|
||||||
|
- `-statsenabled`
|
||||||
|
- `-statshost`
|
||||||
|
- `-statshostname`
|
||||||
|
- `-statsport`
|
||||||
|
- `-statsns`
|
||||||
|
- `-statsperiod`
|
||||||
|
- `-zmqpubhashrecoveredsig`
|
||||||
|
- `-zmqpubrawrecoveredsig`
|
||||||
|
|
||||||
|
Also, please note that all mixing-related command-line options have been
|
||||||
|
renamed to replace “PrivateSend” with “CoinJoin” (e.g. `setprivatesendrounds`
|
||||||
|
-> `setcoinjoinrounds`).
|
||||||
|
|
||||||
|
Please check `Help -> Command-line options` in Qt wallet or `dashd --help` for
|
||||||
|
more information.
|
||||||
|
|
||||||
|
Backports from Bitcoin Core 0.17
|
||||||
|
--------------------------------
|
||||||
|
|
||||||
|
This release also introduces over 450 updates from Bitcoin v0.17 as well as
|
||||||
|
some updates from Bitcoin v0.18 and more recent versions. This includes a
|
||||||
|
number of performance improvements, dynamic loading of wallets via RPC, support
|
||||||
|
for signalling pruned nodes, and a number of other updates that will benefit
|
||||||
|
Dash users. Bitcoin changes that do not align with Dash’s product needs, such
|
||||||
|
as SegWit and RBF, are excluded from our backporting. For additional detail on
|
||||||
|
what’s included in Bitcoin v0.17, please refer to [their release notes](https://github.com/bitcoin/bitcoin/blob/master/doc/release-notes/release-notes-0.17.0.md).
|
||||||
|
|
||||||
|
Miscellaneous
|
||||||
|
-------------
|
||||||
|
A lot of refactoring, code cleanups and other small fixes were done in this release.
|
||||||
|
|
||||||
|
0.17.0.2 Change log
|
||||||
|
===================
|
||||||
|
|
||||||
|
See detailed [set of changes](https://github.com/dashpay/dash/compare/v0.16.1.1...dashpay:v0.17.0.2).
|
||||||
|
|
||||||
|
Credits
|
||||||
|
=======
|
||||||
|
|
||||||
|
Thanks to everyone who directly contributed to this release:
|
||||||
|
|
||||||
|
- 10xcryptodev
|
||||||
|
- dustinface (xdustinface)
|
||||||
|
- Kittywhiskers Van Gogh (kittywhiskers)
|
||||||
|
- Kolby Moroz Liebl (KolbyML)
|
||||||
|
- Konstantin Shuplenkov (shuplenkov)
|
||||||
|
- Minh20
|
||||||
|
- PastaPastaPasta
|
||||||
|
- strophy
|
||||||
|
- thephez
|
||||||
|
- tomthoros
|
||||||
|
- UdjinM6
|
||||||
|
|
||||||
|
As well as everyone that submitted issues and reviewed pull requests.
|
||||||
|
|
||||||
|
Older releases
|
||||||
|
==============
|
||||||
|
|
||||||
|
Dash was previously known as Darkcoin.
|
||||||
|
|
||||||
|
Darkcoin tree 0.8.x was a fork of Litecoin tree 0.8, original name was XCoin
|
||||||
|
which was first released on Jan/18/2014.
|
||||||
|
|
||||||
|
Darkcoin tree 0.9.x was the open source implementation of masternodes based on
|
||||||
|
the 0.8.x tree and was first released on Mar/13/2014.
|
||||||
|
|
||||||
|
Darkcoin tree 0.10.x used to be the closed source implementation of Darksend
|
||||||
|
which was released open source on Sep/25/2014.
|
||||||
|
|
||||||
|
Dash Core tree 0.11.x was a fork of Bitcoin Core tree 0.9,
|
||||||
|
Darkcoin was rebranded to Dash.
|
||||||
|
|
||||||
|
Dash Core tree 0.12.0.x was a fork of Bitcoin Core tree 0.10.
|
||||||
|
|
||||||
|
Dash Core tree 0.12.1.x was a fork of Bitcoin Core tree 0.12.
|
||||||
|
|
||||||
|
These release are considered obsolete. Old release notes can be found here:
|
||||||
|
|
||||||
|
- [v0.16.1.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.16.1.1.md) released November/17/2020
|
||||||
|
- [v0.16.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.16.1.0.md) released November/14/2020
|
||||||
|
- [v0.16.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.16.0.1.md) released September/30/2020
|
||||||
|
- [v0.15.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.15.0.0.md) released Febrary/18/2020
|
||||||
|
- [v0.14.0.5](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.14.0.5.md) released December/08/2019
|
||||||
|
- [v0.14.0.4](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.14.0.4.md) released November/22/2019
|
||||||
|
- [v0.14.0.3](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.14.0.3.md) released August/15/2019
|
||||||
|
- [v0.14.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.14.0.2.md) released July/4/2019
|
||||||
|
- [v0.14.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.14.0.1.md) released May/31/2019
|
||||||
|
- [v0.14.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.14.0.md) released May/22/2019
|
||||||
|
- [v0.13.3](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.13.3.md) released Apr/04/2019
|
||||||
|
- [v0.13.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.13.2.md) released Mar/15/2019
|
||||||
|
- [v0.13.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.13.1.md) released Feb/9/2019
|
||||||
|
- [v0.13.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.13.0.md) released Jan/14/2019
|
||||||
|
- [v0.12.3.4](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.3.4.md) released Dec/14/2018
|
||||||
|
- [v0.12.3.3](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.3.3.md) released Sep/19/2018
|
||||||
|
- [v0.12.3.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.3.2.md) released Jul/09/2018
|
||||||
|
- [v0.12.3.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.3.1.md) released Jul/03/2018
|
||||||
|
- [v0.12.2.3](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.2.3.md) released Jan/12/2018
|
||||||
|
- [v0.12.2.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.2.2.md) released Dec/17/2017
|
||||||
|
- [v0.12.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.2.md) released Nov/08/2017
|
||||||
|
- [v0.12.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.1.md) released Feb/06/2017
|
||||||
|
- [v0.12.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.0.md) released Aug/15/2015
|
||||||
|
- [v0.11.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.11.2.md) released Mar/04/2015
|
||||||
|
- [v0.11.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.11.1.md) released Feb/10/2015
|
||||||
|
- [v0.11.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.11.0.md) released Jan/15/2015
|
||||||
|
- [v0.10.x](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.10.0.md) released Sep/25/2014
|
||||||
|
- [v0.9.x](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.9.0.md) released Mar/13/2014
|
Loading…
Reference in New Issue
Block a user