<!-- *** Please remove the following help text before submitting: *** Provide a general summary of your changes in the Title above Pull requests without a rationale and clear improvement may be closed immediately. Please provide clear motivation for your patch and explain how it improves Dash Core user experience or Dash Core developer experience significantly: * Any test improvements or new tests that improve coverage are always welcome. * All other changes should have accompanying unit tests (see `src/test/`) or functional tests (see `test/`). Contributors should note which tests cover modified code. If no tests exist for a region of modified code, new tests should accompany the change. * Bug fixes are most welcome when they come with steps to reproduce or an explanation of the potential issue as well as reasoning for the way the bug was fixed. * Features are welcome, but might be rejected due to design or scope issues. If a feature is based on a lot of dependencies, contributors should first consider building the system outside of Dash Core, if possible. --> ## Issue being fixed or feature implemented <!--- Why is this change required? What problem does it solve? --> <!--- If it fixes an open issue, please link to the issue here. --> adds release notes ## What was done? <!--- Describe your changes in detail --> ## How Has This Been Tested? <!--- Please describe in detail how you tested your changes. --> <!--- Include details of your testing environment, and the tests you ran to --> <!--- see how your change affects other areas of the code, etc. --> ## Breaking Changes <!--- Please describe any breaking changes your code introduces --> ## Checklist: <!--- Go over all the following points, and put an `x` in all the boxes that apply. --> - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation **For repository code-owners and collaborators only** - [ ] I have assigned this pull request to a milestone Co-authored-by: thephez <thephez@users.noreply.github.com>
10 KiB
Dash Core version v18.2.0
Release is now available from:
https://www.dash.org/downloads/#wallets
This is a new minor version release, bringing new features, various bugfixes and other improvements.
This release is optional 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 18.0.1, the first startup of Dash Core will run a migration process which can take anywhere from a few minutes to thirty 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 < v18.2.0
Downgrading to a version older than v18.2.0 is supported.
Downgrade to a version < v18.0.1
Downgrading to a version older than v18.0.1 is not supported due to changes in the indexes database folder. If you need to use an older version, you must either reindex or re-sync the whole chain.
Downgrade of masternodes to < v18.0.1
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.
Versioning
Dash Core imperfectly follows semantic versioning. Breaking changes should be expected in a major release. The number and severity of breaking changes in minor releases are minimized, however we do not guarantee there are no breaking changes. Bitcoin backports often introduce breaking changes, and are a likely source of breaking changes in minor releases. Patch releases should never contain breaking changes.
This release does include breaking changes. Please read below to see if they will affect you.
Notable changes
Remote Procedure Call (RPC) Changes
The new RPCs are:
analyzepsbt
examines a PSBT and provides information about what the PSBT contains and the next steps that need to be taken in order to complete the transaction. For each input of a PSBT,analyzepsbt
provides information about what information is missing for that input, including whether a UTXO needs to be provided, what pubkeys still need to be provided, which scripts need to be provided, and what signatures are still needed. Every input will also list which role is needed to complete that input, andanalyzepsbt
will also list the next role in general needed to complete the PSBT.analyzepsbt
will also provide the estimated fee rate and estimated virtual size of the completed transaction if it has enough information to do so.quorum listextended
is the cousin ofquorum list
with a more enriched reply. By using theheight
parameter, the RPC will list active quorums at a specified height (or at the tip ifheight
is not specified). This RPC returns the following data per quorum grouped per llmqTypes:- For each
quorumHash
:creationHeight
: Block height where its DKG startedquorumIndex
: Returned only for rotated llmqTypesminedBlockHash
: Hash of the block containing the mined final commitmentnumValidMembers
: The total of valid members.healthRatio
: The ratio of healthy members to quorum size. Range [0.0 - 1.0].
- For each
getbalances
returns an object with all balances (mine
,untrusted_pending
andimmature
). Please refer to the RPC help ofgetbalances
for details. The new RPC is intended to replacegetunconfirmedbalance
and the balance fields ingetwalletinfo
, as well asgetbalance
. The old calls may be removed in a future version.
The removed RPCs are:
None
Changes in existing RPCs introduced through bitcoin backports:
walletprocesspsbt
andwalletcreatefundedpsbt
now include BIP 32 derivation paths by default for public keys if we know them. This can be disabled by settingbip32derivs
tofalse
.
Dash-specific changes in existing RPCs:
None
Please check help <command>
for more detailed information on specific RPCs.
Command-line options
Please check Help -> Command-line options
in Qt wallet or dashd --help
for
more information.
Backports from Bitcoin Core
This release introduces many hundreds updates from Bitcoin v0.18/v0.19/v0.20/v0.21/v22. 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, please refer to their release notes.
v18.2.0 Change log
See detailed set of changes.
Credits
Thanks to everyone who directly contributed to this release:
- Kittywhiskers Van Gogh
- Konstantin Akimov
- Odysseas Gabrielides
- PastaPastaPasta
- strophy
- thephez
- UdjinM6
As well as everyone that submitted issues, reviewed pull requests, helped debug the release candidates, and write DIPs that were implemented in this release.
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:
- v18.1.0 released October/09/2022
- v18.0.2 released October/09/2022
- v18.0.1 released August/17/2022
- v0.17.0.3 released June/07/2021
- v0.17.0.2 released May/19/2021
- v0.16.1.1 released November/17/2020
- v0.16.1.0 released November/14/2020
- v0.16.0.1 released September/30/2020
- v0.15.0.0 released Febrary/18/2020
- v0.14.0.5 released December/08/2019
- v0.14.0.4 released November/22/2019
- v0.14.0.3 released August/15/2019
- v0.14.0.2 released July/4/2019
- v0.14.0.1 released May/31/2019
- v0.14.0 released May/22/2019
- v0.13.3 released Apr/04/2019
- v0.13.2 released Mar/15/2019
- v0.13.1 released Feb/9/2019
- v0.13.0 released Jan/14/2019
- v0.12.3.4 released Dec/14/2018
- v0.12.3.3 released Sep/19/2018
- v0.12.3.2 released Jul/09/2018
- v0.12.3.1 released Jul/03/2018
- v0.12.2.3 released Jan/12/2018
- v0.12.2.2 released Dec/17/2017
- v0.12.2 released Nov/08/2017
- v0.12.1 released Feb/06/2017
- v0.12.0 released Aug/15/2015
- v0.11.2 released Mar/04/2015
- v0.11.1 released Feb/10/2015
- v0.11.0 released Jan/15/2015
- v0.10.x released Sep/25/2014
- v0.9.x released Mar/13/2014