Skip to content

Commit 0f62391

Browse files
Merge #6578: [v22.1.x] backport: backport to and release 22.1.1
4298d73 chore: bump to 22.1.1 (pasta) fc65a16 chore: release notes for 22.1.1 (pasta) 38762f7 Merge #6574: fix: ReconnectionInfo should also store Dash-specific flags (pasta) 580b74c Merge #6566: fix(qt): avoid leaking balance and CJ info in GUI when in discreet mode (pasta) Pull request description: ## Issue being fixed or feature implemented See commits; backport to and prep for release 22.1.1 ## What was done? ## How Has This Been Tested? built locally ## Breaking Changes ## Checklist: - [ ] 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 - [x] I have assigned this pull request to a milestone ACKs for top commit: UdjinM6: LGTM, utACK 4298d73 kwvg: utACK 4298d73 Tree-SHA512: 4e07dd80cfda8c05645a2089fdffe1ddccc6179283c2b2448292fa8d8577a6db794cc46a389a401e7a8a14ac987ebea9e76330c78c7efc08cb4c4bd9a7a91cf2
2 parents 30b9673 + 4298d73 commit 0f62391

File tree

6 files changed

+189
-66
lines changed

6 files changed

+189
-66
lines changed

configure.ac

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ AC_PREREQ([2.69])
22
dnl Don't forget to push a corresponding tag when updating any of _CLIENT_VERSION_* numbers
33
define(_CLIENT_VERSION_MAJOR, 22)
44
define(_CLIENT_VERSION_MINOR, 1)
5-
define(_CLIENT_VERSION_BUILD, 0)
5+
define(_CLIENT_VERSION_BUILD, 1)
66
define(_CLIENT_VERSION_IS_RELEASE, true)
77
define(_COPYRIGHT_YEAR, 2025)
88
define(_COPYRIGHT_HOLDERS,[The %s developers])

doc/release-notes.md

+12-61
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# Dash Core version v22.1.0
1+
# Dash Core version v22.1.1
22

3-
This is a new minor version release, bringing new features, and various bugfixes.
3+
This is a new minor version release, bringing various bugfixes.
44
This release is **optional** for all nodes, although recommended.
55

66
Please report bugs using the issue tracker at GitHub:
@@ -26,77 +26,27 @@ likely require a reindex.
2626

2727
# Release Notes
2828

29-
Build Changes
30-
-------------
29+
v2 P2P Downgrade Issues
30+
-----------------------
3131

32-
The macOS distribution is no longer packaged in a disk image (DMG) and
33-
is now packaged in a ZIP archive. The macOS distribution is once again notarized.
32+
This version addressed a problem affecting certain Dash-specific connection types, including mixing and masternode probes, when
33+
downgrading from v2 to v1 connections. This resulted in increased connection count and load for masternodes. (dash#6574)
3434

35-
BIP324 / v2 P2P Protocol
36-
------------------------
35+
Minor QT Coinjoin Fixes
36+
-----------------------
3737

38-
Version 2 of the Dash P2P protocol / BIP324, which enables encryption of the P2P protocol,
39-
has been enabled by default in this version. This was initially introduced in Dash Core
40-
v22.0.0 as an experimental feature and has now been enabled by default. This change is
41-
backward compatible, and connections to peers which do not support the v2 protocol will
42-
revert to using the v1 protocol.
38+
- Avoid leaking CJ related balances in discrete mode (dash#6566)
4339

44-
Network Changes
45-
---------------
46-
System ports, or ports that are lower than 1024 are now considered to be "bad" ports.
47-
As a result, other peers will avoid connecting to nodes that are listening on these ports.
48-
This change is to prevent potential DDoS attacks against services running on these ports.
49-
A number of other ports commonly used for authenticated services are also considered "bad" ports.
50-
You can view [the list of bad ports here](https://github.com/dashpay/dash/blob/v22.1.x/doc/p2p-bad-ports.md).
51-
52-
Tests
53-
-----
54-
55-
- Command line arguments `-dip8params` and `-bip147height` are removed in favor of `-testactivationheight`. (dash#6325)
56-
- Several hard forks now activate earlier on regtest.
57-
58-
## New RPCs
59-
60-
- **`getislocks`**
61-
- Retrieves the InstantSend lock data for the given transaction IDs (txids).
62-
Returns the lock information in both a human-friendly JSON format and a binary hex-encoded zmq-compatible format.
63-
64-
Updated RPCs
65-
------------
66-
67-
- The top-level fee fields `fee`, `modifiedfee`, `ancestorfees` and `descendantfees`
68-
returned by RPCs `getmempoolentry`,`getrawmempool(verbose=true)`,
69-
`getmempoolancestors(verbose=true)` and `getmempooldescendants(verbose=true)`
70-
are deprecated and will be removed in the next major version (use
71-
`-deprecated=fees` if needed in this version). The same fee fields can be accessed
72-
through the `fees` object in the result. WARNING: deprecated
73-
fields `ancestorfees` and `descendantfees` are denominated in duffs, whereas all
74-
fields in the `fees` object are denominated in DASH.
75-
- A new `hex` field has been added to the `getbestchainlock` RPC, which returns the ChainLock information in zmq-compatible, hex-encoded binary format.
76-
- `lockunspent` now optionally takes a third parameter, `persistent`, which
77-
causes the lock to be written persistently to the wallet database. This
78-
allows UTXOs to remain locked even after node restarts or crashes.
79-
80-
GUI changes
81-
-----------
82-
83-
- UTXOs locked via the GUI are now stored persistently in the
84-
wallet database and are not lost on node shutdown or crash.
85-
- Improved GUI responsiveness for large wallets. (dash#6457)
86-
87-
# v22.1.0 Change log
40+
# v22.1.1 Change log
8841

8942
See detailed [set of changes][set-of-changes].
9043

9144
# Credits
9245

9346
Thanks to everyone who directly contributed to this release:
9447

95-
- Kittywhiskers Van Gogh
96-
- Konstantin Akimov
9748
- PastaPastaPasta
9849
- UdjinM6
99-
- Vijaydasmp
10050

10151
As well as everyone that submitted issues, reviewed pull requests and helped
10252
debug the release candidates.
@@ -105,6 +55,7 @@ debug the release candidates.
10555

10656
These releases are considered obsolete. Old release notes can be found here:
10757

58+
- [v22.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-22.1.0.md) released Feb/10/2025
10859
- [v22.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-22.0.0.md) released Dec/12/2024
10960
- [v21.1.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-21.1.1.md) released Oct/22/2024
11061
- [v21.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-21.1.0.md) released Aug/8/2024
@@ -159,4 +110,4 @@ These releases are considered obsolete. Old release notes can be found here:
159110
- [v0.10.x](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.10.0.md) released Sep/25/2014
160111
- [v0.9.x](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.9.0.md) released Mar/13/2014
161112

162-
[set-of-changes]: https://github.com/dashpay/dash/compare/v22.0.0...dashpay:v22.1.0
113+
[set-of-changes]: https://github.com/dashpay/dash/compare/v22.1.0...dashpay:v22.1.1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,162 @@
1+
# Dash Core version v22.1.0
2+
3+
This is a new minor version release, bringing new features, and various bugfixes.
4+
This release is **optional** for all nodes, although recommended.
5+
6+
Please report bugs using the issue tracker at GitHub:
7+
8+
<https://github.com/dashpay/dash/issues>
9+
10+
11+
# Upgrading and downgrading
12+
13+
## How to Upgrade
14+
15+
If you are running an older version, shut it down. Wait until it has completely
16+
shut down (which might take a few minutes for older versions), then run the
17+
installer (on Windows) or just copy over /Applications/Dash-Qt (on Mac) or
18+
dashd/dash-qt (on Linux).
19+
20+
## Downgrade warning
21+
22+
### Downgrade to a version < v22.0.0
23+
24+
Downgrading to a version older than v22.0.0 may not be supported, and will
25+
likely require a reindex.
26+
27+
# Release Notes
28+
29+
Build Changes
30+
-------------
31+
32+
The macOS distribution is no longer packaged in a disk image (DMG) and
33+
is now packaged in a ZIP archive. The macOS distribution is once again notarized.
34+
35+
BIP324 / v2 P2P Protocol
36+
------------------------
37+
38+
Version 2 of the Dash P2P protocol / BIP324, which enables encryption of the P2P protocol,
39+
has been enabled by default in this version. This was initially introduced in Dash Core
40+
v22.0.0 as an experimental feature and has now been enabled by default. This change is
41+
backward compatible, and connections to peers which do not support the v2 protocol will
42+
revert to using the v1 protocol.
43+
44+
Network Changes
45+
---------------
46+
System ports, or ports that are lower than 1024 are now considered to be "bad" ports.
47+
As a result, other peers will avoid connecting to nodes that are listening on these ports.
48+
This change is to prevent potential DDoS attacks against services running on these ports.
49+
A number of other ports commonly used for authenticated services are also considered "bad" ports.
50+
You can view [the list of bad ports here](https://github.com/dashpay/dash/blob/v22.1.x/doc/p2p-bad-ports.md).
51+
52+
Tests
53+
-----
54+
55+
- Command line arguments `-dip8params` and `-bip147height` are removed in favor of `-testactivationheight`. (dash#6325)
56+
- Several hard forks now activate earlier on regtest.
57+
58+
## New RPCs
59+
60+
- **`getislocks`**
61+
- Retrieves the InstantSend lock data for the given transaction IDs (txids).
62+
Returns the lock information in both a human-friendly JSON format and a binary hex-encoded zmq-compatible format.
63+
64+
Updated RPCs
65+
------------
66+
67+
- The top-level fee fields `fee`, `modifiedfee`, `ancestorfees` and `descendantfees`
68+
returned by RPCs `getmempoolentry`,`getrawmempool(verbose=true)`,
69+
`getmempoolancestors(verbose=true)` and `getmempooldescendants(verbose=true)`
70+
are deprecated and will be removed in the next major version (use
71+
`-deprecated=fees` if needed in this version). The same fee fields can be accessed
72+
through the `fees` object in the result. WARNING: deprecated
73+
fields `ancestorfees` and `descendantfees` are denominated in duffs, whereas all
74+
fields in the `fees` object are denominated in DASH.
75+
- A new `hex` field has been added to the `getbestchainlock` RPC, which returns the ChainLock information in zmq-compatible, hex-encoded binary format.
76+
- `lockunspent` now optionally takes a third parameter, `persistent`, which
77+
causes the lock to be written persistently to the wallet database. This
78+
allows UTXOs to remain locked even after node restarts or crashes.
79+
80+
GUI changes
81+
-----------
82+
83+
- UTXOs locked via the GUI are now stored persistently in the
84+
wallet database and are not lost on node shutdown or crash.
85+
- Improved GUI responsiveness for large wallets. (dash#6457)
86+
87+
# v22.1.0 Change log
88+
89+
See detailed [set of changes][set-of-changes].
90+
91+
# Credits
92+
93+
Thanks to everyone who directly contributed to this release:
94+
95+
- Kittywhiskers Van Gogh
96+
- Konstantin Akimov
97+
- PastaPastaPasta
98+
- UdjinM6
99+
- Vijaydasmp
100+
101+
As well as everyone that submitted issues, reviewed pull requests and helped
102+
debug the release candidates.
103+
104+
# Older releases
105+
106+
These releases are considered obsolete. Old release notes can be found here:
107+
108+
- [v22.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-22.0.0.md) released Dec/12/2024
109+
- [v21.1.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-21.1.1.md) released Oct/22/2024
110+
- [v21.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-21.1.0.md) released Aug/8/2024
111+
- [v21.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-21.0.2.md) released Aug/1/2024
112+
- [v21.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-21.0.0.md) released Jul/25/2024
113+
- [v20.1.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.1.1.md) released April/3/2024
114+
- [v20.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.1.0.md) released March/5/2024
115+
- [v20.0.4](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.4.md) released Jan/13/2024
116+
- [v20.0.3](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.3.md) released December/26/2023
117+
- [v20.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.2.md) released December/06/2023
118+
- [v20.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.1.md) released November/18/2023
119+
- [v20.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.0.md) released November/15/2023
120+
- [v19.3.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-19.3.0.md) released July/31/2023
121+
- [v19.2.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-19.2.0.md) released June/19/2023
122+
- [v19.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-19.1.0.md) released May/22/2023
123+
- [v19.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-19.0.0.md) released Apr/14/2023
124+
- [v18.2.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.2.2.md) released Mar/21/2023
125+
- [v18.2.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.2.1.md) released Jan/17/2023
126+
- [v18.2.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.2.0.md) released Jan/01/2023
127+
- [v18.1.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.1.1.md) released January/08/2023
128+
- [v18.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.1.0.md) released October/09/2022
129+
- [v18.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.0.2.md) released October/09/2022
130+
- [v18.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.0.1.md) released August/17/2022
131+
- [v0.17.0.3](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.17.0.3.md) released June/07/2021
132+
- [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
133+
- [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
134+
- [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
135+
- [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
136+
- [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
137+
- [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
138+
- [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
139+
- [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
140+
- [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
141+
- [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
142+
- [v0.14.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.14.0.md) released May/22/2019
143+
- [v0.13.3](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.13.3.md) released Apr/04/2019
144+
- [v0.13.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.13.2.md) released Mar/15/2019
145+
- [v0.13.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.13.1.md) released Feb/9/2019
146+
- [v0.13.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.13.0.md) released Jan/14/2019
147+
- [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
148+
- [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
149+
- [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
150+
- [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
151+
- [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
152+
- [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
153+
- [v0.12.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.2.md) released Nov/08/2017
154+
- [v0.12.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.1.md) released Feb/06/2017
155+
- [v0.12.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.12.0.md) released Aug/15/2015
156+
- [v0.11.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.11.2.md) released Mar/04/2015
157+
- [v0.11.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.11.1.md) released Feb/10/2015
158+
- [v0.11.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.11.0.md) released Jan/15/2015
159+
- [v0.10.x](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.10.0.md) released Sep/25/2014
160+
- [v0.9.x](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.9.0.md) released Mar/13/2014
161+
162+
[set-of-changes]: https://github.com/dashpay/dash/compare/v22.0.0...dashpay:v22.1.0

src/net.cpp

+6-2
Original file line numberDiff line numberDiff line change
@@ -2247,7 +2247,9 @@ void CConnman::DisconnectNodes()
22472247
.grant = std::move(pnode->grantOutbound),
22482248
.destination = pnode->m_dest,
22492249
.conn_type = pnode->m_conn_type,
2250-
.use_v2transport = false});
2250+
.use_v2transport = false,
2251+
.masternode_connection = pnode->m_masternode_connection,
2252+
.masternode_probe_connection = pnode->m_masternode_probe_connection});
22512253
LogPrint(BCLog::NET, "retrying with v1 transport protocol for peer=%d\n", pnode->GetId());
22522254
}
22532255

@@ -5171,7 +5173,9 @@ void CConnman::PerformReconnections()
51715173
std::move(item.grant),
51725174
item.destination.empty() ? nullptr : item.destination.c_str(),
51735175
item.conn_type,
5174-
item.use_v2transport);
5176+
item.use_v2transport,
5177+
item.masternode_connection ? MasternodeConn::IsConnection : MasternodeConn::IsNotConnection,
5178+
item.masternode_probe_connection ? MasternodeProbeConn::IsConnection : MasternodeProbeConn::IsNotConnection);
51755179
}
51765180
}
51775181

src/net.h

+2
Original file line numberDiff line numberDiff line change
@@ -1981,6 +1981,8 @@ friend class CNode;
19811981
std::string destination;
19821982
ConnectionType conn_type;
19831983
bool use_v2transport;
1984+
bool masternode_connection;
1985+
bool masternode_probe_connection;
19841986
};
19851987

19861988
/**

src/qt/overviewpage.cpp

+6-2
Original file line numberDiff line numberDiff line change
@@ -208,6 +208,7 @@ void OverviewPage::setPrivacy(bool privacy)
208208
m_privacy = privacy;
209209
if (m_balances.balance != -1) {
210210
setBalance(m_balances);
211+
coinJoinStatus(true);
211212
}
212213

213214
ui->listTransactions->setVisible(!m_privacy);
@@ -402,7 +403,10 @@ void OverviewPage::updateCoinJoinProgress()
402403

403404
if(nMaxToAnonymize == 0) return;
404405

405-
if (nMaxToAnonymize >= clientModel->coinJoinOptions().getAmount() * COIN) {
406+
if (m_privacy) {
407+
strAmountAndRounds = "#### " + BitcoinUnits::name(nDisplayUnit) + " / " + tr("%n Rounds", "", 0);
408+
ui->labelAmountRounds->setToolTip("");
409+
} else if (nMaxToAnonymize >= clientModel->coinJoinOptions().getAmount() * COIN) {
406410
ui->labelAmountRounds->setToolTip(tr("Found enough compatible inputs to mix %1")
407411
.arg(strCoinJoinAmount));
408412
strCoinJoinAmount = strCoinJoinAmount.remove(strCoinJoinAmount.indexOf("."), BitcoinUnits::decimals(nDisplayUnit) + 1);
@@ -660,7 +664,7 @@ void OverviewPage::coinJoinStatus(bool fForce)
660664

661665
setWidgetsVisible(true);
662666

663-
ui->labelSubmittedDenom->setText(QString(walletModel->coinJoin()->getSessionDenoms().c_str()));
667+
ui->labelSubmittedDenom->setText(m_privacy ? "####" : QString(walletModel->coinJoin()->getSessionDenoms().c_str()));
664668
}
665669

666670
void OverviewPage::toggleCoinJoin(){

0 commit comments

Comments
 (0)