mirror of
https://github.com/dashpay/dash.git
synced 2024-12-24 19:42:46 +01:00
Merge pull request #5810 from knst/v20.0.4_release
backport: v20.0.4 backports and release
This commit is contained in:
commit
3b7deea3b5
@ -1,4 +1,4 @@
|
|||||||
Dash Core staging tree 18.0
|
Dash Core staging tree
|
||||||
===========================
|
===========================
|
||||||
|
|
||||||
|CI|master|develop|
|
|CI|master|develop|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
AC_PREREQ([2.69])
|
AC_PREREQ([2.69])
|
||||||
define(_CLIENT_VERSION_MAJOR, 20)
|
define(_CLIENT_VERSION_MAJOR, 20)
|
||||||
define(_CLIENT_VERSION_MINOR, 0)
|
define(_CLIENT_VERSION_MINOR, 0)
|
||||||
define(_CLIENT_VERSION_BUILD, 3)
|
define(_CLIENT_VERSION_BUILD, 4)
|
||||||
define(_CLIENT_VERSION_RC, 0)
|
define(_CLIENT_VERSION_RC, 0)
|
||||||
define(_CLIENT_VERSION_IS_RELEASE, true)
|
define(_CLIENT_VERSION_IS_RELEASE, true)
|
||||||
define(_COPYRIGHT_YEAR, 2023)
|
define(_COPYRIGHT_YEAR, 2023)
|
||||||
|
@ -24,29 +24,53 @@ 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
|
||||||
oPei
|
xNMWNBcrT6DyByl7F+pMxwucXumoQQARAQABiQI8BBgBCAAmFiEEKVkDYuyHioH9
|
||||||
=42dS
|
PCArUlJ77avoeYQFAl1ULyUCGwwFCQPDx2sACgkQUlJ77avoeYQPMQ/8DwfcmR5J
|
||||||
|
r/TeRa+50WWhVsZt+8/5eQq8acBk8YfPed79JXa1xeWM2BTXnEe8uS0jgaW4R8nF
|
||||||
|
E9Sq9RqXXM5H2GqlqzS9fyCx/SvR3eibYMcLIxjwaxx8MXTljx+p/SdTn+gsOXDC
|
||||||
|
nXUjJbwEMtLDAA2xMtnXKy6R9hziGiilTvX/B0CXzl9p7sjZBF24iZaUwAN9S1z0
|
||||||
|
6t9vW0CE+1oIlVmPm+B9Q1Jk5NQnvdEZt0vdnZ1zjaU7eZEzIOQ93KSSrQSA6jrN
|
||||||
|
ku4dlAWHFPNYhZ5RPy9Y2OmR1N5Ecu+/dzA9HHWTVq2sz6kT1iSEKDQQ4xNyY34U
|
||||||
|
x6SCdT557RyJufnBY68TTnPBEphE7Hfi9rZTpNRToqRXd8W6reqqRdqIwVq6EjWV
|
||||||
|
IUaBxyDsEI0yFsGk4GR8YjdyugUZKbalPJ0nzv/4/0L15w5lKoITtm3kh8Oz/FXs
|
||||||
|
OPEEr31nn5EbG2wik2XGmxS+UxKzFQ2E5bKIIqvo0g587N0tgOSEdwoypYaZzXML
|
||||||
|
ccce5m9fm7qitPJhdapzxfmncqHtCN/8KG03Y/pII5RCq4S+mJjknVN2ZBK6iofO
|
||||||
|
Ddms37sQ4p2dQfvLUoHuJO+BDTuVwecAxuQUNylAD60Ax330tU1JeHy6teEn8C3F
|
||||||
|
ols1sJK+mQ4YHhYcvL9X4l2iYUL09veg96KJAjwEGAEIACYCGwwWIQQpWQNi7IeK
|
||||||
|
gf08ICtSUnvtq+h5hAUCYRvREAUJDS2jawAKCRBSUnvtq+h5hEe7EACKAqWEXart
|
||||||
|
Fg7FwIiwD7MB/iMkIKSl05bBaGOqCO1sWtL/f38WhFIL1MKU7YJTiPkUgCQ8p2/s
|
||||||
|
QWIBdowgO6u2k3g+z6XrBRf+1L7FoYNWx5GgB2FWOnuKUb1Yi+ZXdQyrGB7qFtqb
|
||||||
|
cfkmGJWWZL4MDEbTt1seIWt2p4etVlT/frj0rwk473/FKztDN/pcmp6l/MKNDhlG
|
||||||
|
cbLgD/SGFhPLMZ4k5xM2KBKOw8eXk82KkbTFucCfubEWbaLld1WZMwKqxOGQfoBz
|
||||||
|
c4FsuBEG8GFVFZRHUVuh3vKktOM6tcVbdi+bua1tlTyiosqBxoALJdoi/ACgFj10
|
||||||
|
heCvCzpnV2DC8Uf7U3tXYD6ZWRuM/NLsiSj2ULV7lYEAntWRbbT/kqLTwlekuZ3t
|
||||||
|
TKCUJyKhBMx3tjIT8CGjfNBuj/0DXREQLiQ6yX867oh4RRFr6Z9v0xg+ChUZNwpm
|
||||||
|
dpfR3jRq5Emm2iy6hgt6ddyJF1SZ+wAMBvalV2blvYff40td/5OdvJj/ObbhkUY9
|
||||||
|
cFFKPu1CBpXqSf009KDfZnVZxH6kCfcnCq2zd/U825gKtm9a/ro2iElGt0JlzXBX
|
||||||
|
h2Ri+XYzWz7N/yJNW2LgiJ82OfnuyVe0SwffqaJDLa83oKn0jcDublZ4vTuLbs/x
|
||||||
|
u+HE6D2rqvc0CA1wAreY5+lD96PbmOAjnA==
|
||||||
|
=lPi0
|
||||||
-----END PGP PUBLIC KEY BLOCK-----
|
-----END PGP PUBLIC KEY BLOCK-----
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
Comment: GPGTools - https://gpgtools.org
|
|
||||||
|
|
||||||
mQINBFUkMgoBEAD5lFzlr4fIR3CKlsgx1KXLNR+1+IIe3AT8YloMq3rlvylOTgGl
|
mQINBFUkMgoBEAD5lFzlr4fIR3CKlsgx1KXLNR+1+IIe3AT8YloMq3rlvylOTgGl
|
||||||
j1PTeQL0eHH+fD3ukSHHiZC7FcY2aC3vTPCd16+OO+ii/Nfx6vAyve2RiTA4brKi
|
j1PTeQL0eHH+fD3ukSHHiZC7FcY2aC3vTPCd16+OO+ii/Nfx6vAyve2RiTA4brKi
|
||||||
@ -24,29 +23,129 @@ yh9Zp89d2J/C+okWdwOU/fvl+vIdXaDudgxXCYEq/xiVpj1mkNFgoPo0Fk3PetFh
|
|||||||
PI9FwbAL6Izy7lE3CZZ8jCSzC8dvH2tOmc7dn9QMtj+0jvYBxyCAU6EWtfdZodL5
|
PI9FwbAL6Izy7lE3CZZ8jCSzC8dvH2tOmc7dn9QMtj+0jvYBxyCAU6EWtfdZodL5
|
||||||
lTt7H1zoggYcvdhNAEYcClunZVyDvd/hwroQxQXy5qkNVXzJOs+emUMQFOMZKX52
|
lTt7H1zoggYcvdhNAEYcClunZVyDvd/hwroQxQXy5qkNVXzJOs+emUMQFOMZKX52
|
||||||
eKl52Gp+UV91VAqmlf5N+60G8wDDhsHj62v+G1HtPFNNNZZYIYlbn/jx+AmjVbED
|
eKl52Gp+UV91VAqmlf5N+60G8wDDhsHj62v+G1HtPFNNNZZYIYlbn/jx+AmjVbED
|
||||||
f4cVdhXOw/rUQoAJNrMghUyymBlrWKCg9fRVatVGuQINBFUkMgoBEACigJW8hY3w
|
f4cVdhXOw/rUQoAJNrMghUyymBlrWKCg9fRVatVGtBpVZGppbk02IDxVZGppbk02
|
||||||
TXIj+HOSaGIg7PxjcJgIdfU72SvTw3JiEPIp++mL6cosPTvle3wnchP/Tfj6fJ1T
|
QGRhc2gub3JnPokCVwQTAQoAQQIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAIZ
|
||||||
L/h2ERBNeCrGVWTIYtqC5K7WtTe56sChzXIIdDhPzze8hlJ3avd4awoAzYU6XwQD
|
ARYhBD9dSMnwApPNNlo6mINZK9FADVjZBQJfX098BQkdmE+iAAoJEINZK9FADVjZ
|
||||||
G9bQLFZY107ipcSoIPtnm85wkkfVn1O9tNvJDQaDGrNWfqK5F6ZJztgTnFlD/DUo
|
QKcP/3m+uvemzL2Nfo6Ewm0qUjG8dFvD6scVrX0YWc2C+l8mX8niLJz7p4ulg+f8
|
||||||
a6MQXV4NiNpPsPcxjZi61jrCvqaghVmN8RDm8st3uOzHGIgGGF2NyH29kEmmuEcw
|
qqZ9ai7zwPHzXlq+qnFMljqqD0zBkemnfzWboUqPfQ1OF9p6CYwDWG60+YQqz+2w
|
||||||
0Dve8ikHD1lGG6ZmxAgCKsbGc6P8wgmU8eXNM7D47iqQsWWP6GMfCuaKZtHHXDed
|
H8/ScLeBiJEpjGIQR2/TgvX0NH+aU7zkfdT26aVTS7XgF9BVISlUgnPjmq/5uq39
|
||||||
VbDpdmChpqR3fpcsHOobmli/rkhbKXbIWrn4byCWf53grH+z+XWWqIlHfNUbxDGq
|
44zkv8afFuHWbo4KHokKIBW9ZQ8auoK/xwCotszX/q//sqHsYLHu8iQN6qWNMD2u
|
||||||
LOGSDG+RQWUiqgBcE2wD7t8NFIVtiTwpjTqYRXp0jWwi4898arWf5aTMuu4vsSWO
|
Xlp/v10qZsiCgrbCOuxmBZ5si49rgnc0jnJRq4/1eBbRVqGlLM79mzUQ6X4lerCp
|
||||||
5L9UTW0l1nWSK9psCzAyfHarWnMAPwNO/Zcv83uoju8jQEkHu/IHe/0QndbTvezy
|
ZBXLdC6qGF2N7+7RbRYQ8QZomQhGJPMSJ+pQlgT7tb+GhpMy01fGmatL+GEEXzhZ
|
||||||
t8cmi7NpUdXx4fDyszwcRynqC48gjNzR9SRRjrWpxabm8Ac8ldjUoRvFs8JCJk/5
|
PjYSqR/HIzx4ZZUV2R691wzGXk/oLhLyAy4NUabcG6ykylcEZG27G1PldbZlRCGr
|
||||||
6C6oTjPwhGPFugnTGm4aE1Iwz0RdfBFZ0pSpFY+5Pidoe7e/z/wspXDIaxda+bVL
|
r5eCnOFULNYDIKWyoyuabzsgDLIBzNDNo97SmTaB46iUVYVxxHpVsi/p1TL2jCTo
|
||||||
OVHuPNtNnWBaDXzbDeG/HY0pNdR4zK8t0QARAQABiQIlBBgBCgAPBQJVJDIKAhsM
|
0P15oQoyfVX/a1keRRkymQazTjgMSiSrFG0GxGHVLZ4x4dcdTVj9PBeJRAS8JJCw
|
||||||
BQkHhh+AAAoJEINZK9FADVjZdAYP/1CF9bCRyGTLmKXFGv34hwbKlswS2Uuwyt9K
|
R3ZmO1+nEdPAPTiQTjQYZKPTCi3kB1LD69jKY6wp7pX8gN+U8wWl1sV+CBqU9Ts/
|
||||||
RJPX6rWmIx9KfGokTc+cnlODyrkKV0bpS9eVScuXlV59Y91EtyCWIQ6y29FW0vw2
|
lKbH/eKFUcKC2nxYOYdsDjOOjvUGrRYJ3hmhGfoJkqlmgoyaiQJXBBMBCgBBAhsD
|
||||||
qI4v43gz5wPeIMOFRlutTwnnDodp3PRoWKmjduXokIG/N4ZknJ42AREheEQJFLSG
|
BQsJCAcDBRUKCQgLBRYCAwEAAh4BAheAAhkBFiEEP11IyfACk802WjqYg1kr0UAN
|
||||||
Yx/jcCVPFMXDXe0UDrqZI+HiagMb2asmDFYAELu/GtBc1zMtJBwvoYt2cQm3AqI6
|
WNkFAlyKGfUFCQsoeRsACgkQg1kr0UANWNlpcw/+OX/tl7kbtY4ndb2ugscIM2W5
|
||||||
S1aQLRVGp3crqdg0cJ1X0+VrjfcWbf8XljK6LuobssaIgEoKR5nNMhbOTYfMwFn2
|
mgAlJH/dzXO3W7c1fYb/u4RQlGZlekHjzT15mApdjy2AKfxGFemFRHT9aQaETHDJ
|
||||||
4vx6MgQ3ihuOgOLazGB/rSdSXNqx5525rmFInkgPUMfpWqRQqDMJi52Z6itQxlmY
|
wNrkn6PYjXrHDqWmgdygJSUCCBrq3Vz4BbIa0Hse6eUjOT/bzrmrLbOc3kyITVt+
|
||||||
igg7ZyyZOYSKbB7GDevO3cBw6EjwPXlcWp0mb99sjhAQESEXA7bC4YW4dIEE+1zI
|
MfvuNiCs0po9FcDt0yU1sIy51Xt3xricA5sXZnwKiIxWVGtWw0TqIRtWW9piSGDJ
|
||||||
shA6M3oA2cO0ee2gTyY4nUDF7QAp0psPV6FANfpDjQ5/hvq+JHWJ+Arj0LszQZEd
|
vGri1MIbLvxjIKEkKZsfcxMB5Lun7lQ7J0qrrOFWXBbhAyuyOXzcuZBVvDyUrk6f
|
||||||
VpxkfJjO/+r0KOjQoBeABaEMuPTJmC9qV5bm8BFKNR6kx6ZsExYhkC8d9WGqX+aS
|
5HDRvO78KYwUudWwW0T0rMDT4hh+Iq4TO3GkU6y2FUWfggw3sf5JKC8hrcSLVBZ8
|
||||||
07ElEHpmuuc/bw9y/45HBO8ZijIJZ+zlM6IojCOcjx1WFSEW9eAW+FyF+B6EJbVA
|
Qu+ZcwbWDX1ZBGtl+x6eNhphOapUuwCuwnPQ6vmHSePhssXLRPMCcketgDtacNuN
|
||||||
PGrsb1tnDgItwV3m5HoEvNU3yrTPfIgsFFXKPe/BvRLroNNN1493gu8oxKEuroFO
|
14OKAJws+40TuEuAW9hsMqXzlJgrMfeGG7m/NMePcp4LnYnaOZCzRZjUHlP5ljKv
|
||||||
8/LeBIb/
|
YF1MAYrG1vVYJOi4z3HoRJAg1qA1RsW3CRc/YkRRcHCXG28srtgALP5jY/264Pd7
|
||||||
=q31t
|
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
|
||||||
|
=nhGw
|
||||||
-----END PGP PUBLIC KEY BLOCK-----
|
-----END PGP PUBLIC KEY BLOCK-----
|
||||||
|
@ -237,6 +237,7 @@ mkdir -p "$OUTDIR"
|
|||||||
CONFIGFLAGS+=" --enable-reduce-exports --disable-bench --disable-gui-tests --disable-fuzz-binary"
|
CONFIGFLAGS+=" --enable-reduce-exports --disable-bench --disable-gui-tests --disable-fuzz-binary"
|
||||||
case "$HOST" in
|
case "$HOST" in
|
||||||
*linux*) CONFIGFLAGS+=" --disable-threadlocal" ;;
|
*linux*) CONFIGFLAGS+=" --disable-threadlocal" ;;
|
||||||
|
*mingw*) CONFIGFLAGS+=" --disable-miner" ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# CFLAGS
|
# CFLAGS
|
||||||
|
@ -1,82 +1,29 @@
|
|||||||
-----BEGIN CERTIFICATE-----
|
-----BEGIN CERTIFICATE-----
|
||||||
MIIFNTCCBB2gAwIBAgIQC8hE/HYFbdaSbMDoQg3bdDANBgkqhkiG9w0BAQsFADBy
|
MIICMjCCAbigAwIBAgIULx0qs9qjM500eqn6THPK0KrYDI4wCgYIKoZIzj0EAwIw
|
||||||
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
YDELMAkGA1UEBhMCVVMxHTAbBgNVBAoMFERhc2ggQ29yZSBHcm91cCBJbmMuMREw
|
||||||
d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQg
|
DwYDVQQDDAhkYXNoLm9yZzEfMB0GCSqGSIb3DQEJARYQaW5mb3NlY0BkYXNoLm9y
|
||||||
SUQgQ29kZSBTaWduaW5nIENBMB4XDTIwMDgxMzAwMDAwMFoXDTIzMDgxODEyMDAw
|
ZzAeFw0yNDAxMDkyMjMwMzFaFw0yNzAxMDgyMjMwMzFaMCQxIjAgBgNVBAMMGURh
|
||||||
MFowcjELMAkGA1UEBhMCVVMxEDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNj
|
c2ggQ29yZSBXaW5kb3dzIFNpZ25pbmcwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAATT
|
||||||
b3R0c2RhbGUxHTAbBgNVBAoTFERhc2ggQ29yZSBHcm91cCBJbmMuMR0wGwYDVQQD
|
Y9lr0wAD43uUey32F2QOeyCohNg470gWCl2tBgZwg73EKjz1FX/vPcFfdq3C7JiU
|
||||||
ExREYXNoIENvcmUgR3JvdXAgSW5jLjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
mRkYkkVZyvcOebMVOkDbxpH5lEZRAr3f0yDc0UytDlJi2032RnZoRl5d3e9Xv4ej
|
||||||
AQoCggEBAJ5yx72CIbnZYYovXBg3YctSF7NEOeWqM6SDnwpLjCMXt8HKdKyte8/r
|
bzBtMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMD
|
||||||
xxNxkwAvenF34gkzyJD9wRggbrNmtgg/zaT3xa0RUC9y7uxvBRHJ9nSskbRV5Ljp
|
MB0GA1UdDgQWBBR+bbN2rRZFkoX3xuTOPRSse9AWwzAfBgNVHSMEGDAWgBSIe1dn
|
||||||
v+KTBiekJ/M95Xt0rGYLT76OE2QvWv7fS15JJ7h0F+ReFRvUFlj2HqewTCwYqu0c
|
E+OEffr+P5AdH0enMXtqizAKBggqhkjOPQQDAgNoADBlAjEA+AO2SVgxzDmPENHl
|
||||||
OIKhHs8I4EEHzMkIfVEEKlzpIfGwndRPmMxrq/6RXpQlrTo9tIA10KiyhQx1sNRu
|
CS/784XSRC2MBlCwlsIdD8Jti3MNCpvmJiLpuE6HHsKOFxWPAjBlyqgJXyiM30/8
|
||||||
bkWjXEw1SBK63F4Xj8ZaIdlDj3vwEE16Ltk2Nr+eX68gDwyCe9TQ2D7O4rrFEh8f
|
AU0qiBlnU9LhmYu1vKbfXweuAve83XVDScaGLPuqqXFp3KTNnjs=
|
||||||
nEp7hcY7BoLc95COYKtWhj8mnC0obBECAwEAAaOCAcUwggHBMB8GA1UdIwQYMBaA
|
|
||||||
FFrEuXsqCqOl6nEDwGD5LfZldQ5YMB0GA1UdDgQWBBRVtnOXT2wps7EH/GWYwlg9
|
|
||||||
XLnMxDAOBgNVHQ8BAf8EBAMCB4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwdwYDVR0f
|
|
||||||
BHAwbjA1oDOgMYYvaHR0cDovL2NybDMuZGlnaWNlcnQuY29tL3NoYTItYXNzdXJl
|
|
||||||
ZC1jcy1nMS5jcmwwNaAzoDGGL2h0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9zaGEy
|
|
||||||
LWFzc3VyZWQtY3MtZzEuY3JsMEwGA1UdIARFMEMwNwYJYIZIAYb9bAMBMCowKAYI
|
|
||||||
KwYBBQUHAgEWHGh0dHBzOi8vd3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQQB
|
|
||||||
MIGEBggrBgEFBQcBAQR4MHYwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2lj
|
|
||||||
ZXJ0LmNvbTBOBggrBgEFBQcwAoZCaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29t
|
|
||||||
L0RpZ2lDZXJ0U0hBMkFzc3VyZWRJRENvZGVTaWduaW5nQ0EuY3J0MAwGA1UdEwEB
|
|
||||||
/wQCMAAwDQYJKoZIhvcNAQELBQADggEBAJ/3uaSW1E3Cp17UlHk6K9NrSYmq6h4x
|
|
||||||
0FQYvcPc4lYZincDZKElDkClncYAl+FHVLJ2qBBuBF1PU96/PnG5iwROC707jJEs
|
|
||||||
p8SlHfMIiiKMq/HIMAekVNBUnbnUxFZJTEX20p9kEIBBu9A1JJ6a1tYtp7fh+INr
|
|
||||||
lLi3f0P8JNGUgWog+a/n+Icd/3tJ6fsOnrG8jCa11OGjpMegpvPvSh5YzembF0CC
|
|
||||||
WS6tOu6DbMcceQ6pFniD5MTwiF6Ye6cSLBCwD2SUyzganIZgz5m7XXX/xfjBkLbL
|
|
||||||
SQw/P5F1pHZCyyY+evH9Fjm7YAqwfpkVMJDp/XMaht2dxuhyCn70wgk=
|
|
||||||
-----END CERTIFICATE-----
|
-----END CERTIFICATE-----
|
||||||
-----BEGIN CERTIFICATE-----
|
-----BEGIN CERTIFICATE-----
|
||||||
MIIFMDCCBBigAwIBAgIQBAkYG1/Vu2Z1U0O1b5VQCDANBgkqhkiG9w0BAQsFADBl
|
MIICUjCCAdigAwIBAgIULvyU04rzSQ7PGNSHxiNPkIWTg5cwCgYIKoZIzj0EAwIw
|
||||||
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
YDELMAkGA1UEBhMCVVMxHTAbBgNVBAoMFERhc2ggQ29yZSBHcm91cCBJbmMuMREw
|
||||||
d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
|
DwYDVQQDDAhkYXNoLm9yZzEfMB0GCSqGSIb3DQEJARYQaW5mb3NlY0BkYXNoLm9y
|
||||||
b3QgQ0EwHhcNMTMxMDIyMTIwMDAwWhcNMjgxMDIyMTIwMDAwWjByMQswCQYDVQQG
|
ZzAeFw0yNDAxMDkyMjI1NTJaFw0zNDAxMDYyMjI1NTJaMGAxCzAJBgNVBAYTAlVT
|
||||||
EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
|
MR0wGwYDVQQKDBREYXNoIENvcmUgR3JvdXAgSW5jLjERMA8GA1UEAwwIZGFzaC5v
|
||||||
cnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQgSUQgQ29kZSBT
|
cmcxHzAdBgkqhkiG9w0BCQEWEGluZm9zZWNAZGFzaC5vcmcwdjAQBgcqhkjOPQIB
|
||||||
aWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+NOzHH8O
|
BgUrgQQAIgNiAAS5flHJXHF2pcjC/S9tDdkyek+ekF9e4OTb0Jl43Z+utNBCYXTH
|
||||||
Ea9ndwfTCzFJGc/Q+0WZsTrbRPV/5aid2zLXcep2nQUut4/6kkPApfmJ1DcZ17aq
|
82wwh+lfZbRBNjBd1id8+49hU8qX3e0mYWNOc/c+7iqOMQh1OvV/C/Lee/aCc8BN
|
||||||
8JyGpdglrA55KDp+6dFn08b7KSfH03sjlOSRI5aQd4L5oYQjZhJUM1B0sSgmuyRp
|
ghSJEVyCc++cc2SjUzBRMB0GA1UdDgQWBBSIe1dnE+OEffr+P5AdH0enMXtqizAf
|
||||||
wsJS8hRniolF1C2ho+mILCCVrhxKhwjfDPXiTWAYvqrEsq5wMWYzcT6scKKrzn/p
|
BgNVHSMEGDAWgBSIe1dnE+OEffr+P5AdH0enMXtqizAPBgNVHRMBAf8EBTADAQH/
|
||||||
fMuSoeU7MRzP6vIK5Fe7SrXpdOYr/mzLfnQ5Ng2Q7+S1TqSp6moKq4TzrGdOtcT3
|
MAoGCCqGSM49BAMCA2gAMGUCMGrul4xW1uNXQhbXnJOWNDjnFWFHhPHM8vG7/upg
|
||||||
jNEgJSPrCGQ+UpbB8g8S9MWOD8Gi6CxR93O8vYWxYoNzQYIH5DiLanMg0A9kczye
|
Ao6zeffQT9TFtMeUTAf/leu/GwIxAM+n/elxROHGSp5rBr8ZYzyajRfJ/b1tlY3J
|
||||||
n6Yzqf0Z3yWT0QIDAQABo4IBzTCCAckwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNV
|
4XDDnlfcKom9Z5npK05shbgE2fAGpg==
|
||||||
HQ8BAf8EBAMCAYYwEwYDVR0lBAwwCgYIKwYBBQUHAwMweQYIKwYBBQUHAQEEbTBr
|
|
||||||
MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQwYIKwYBBQUH
|
|
||||||
MAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJ
|
|
||||||
RFJvb3RDQS5jcnQwgYEGA1UdHwR6MHgwOqA4oDaGNGh0dHA6Ly9jcmw0LmRpZ2lj
|
|
||||||
ZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmwwOqA4oDaGNGh0dHA6
|
|
||||||
Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmww
|
|
||||||
TwYDVR0gBEgwRjA4BgpghkgBhv1sAAIEMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
|
|
||||||
d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCgYIYIZIAYb9bAMwHQYDVR0OBBYEFFrEuXsq
|
|
||||||
CqOl6nEDwGD5LfZldQ5YMB8GA1UdIwQYMBaAFEXroq/0ksuCMS1Ri6enIZ3zbcgP
|
|
||||||
MA0GCSqGSIb3DQEBCwUAA4IBAQA+7A1aJLPzItEVyCx8JSl2qB1dHC06GsTvMGHX
|
|
||||||
fgtg/cM9D8Svi/3vKt8gVTew4fbRknUPUbRupY5a4l4kgU4QpO4/cY5jDhNLrddf
|
|
||||||
RHnzNhQGivecRk5c/5CxGwcOkRX7uq+1UcKNJK4kxscnKqEpKBo6cSgCPC6Ro8Al
|
|
||||||
EeKcFEehemhor5unXCBc2XGxDI+7qPjFEmifz0DLQESlE/DmZAwlCEIysjaKJAL+
|
|
||||||
L3J+HNdJRZboWR3p+nRka7LrZkPas7CM1ekN3fYBIM6ZMWM9CBoYs4GbT8aTEAb8
|
|
||||||
B4H6i9r5gkn3Ym6hU/oSlBiFLpKR6mhsRDKyZqHnGKSaZFHv
|
|
||||||
-----END CERTIFICATE-----
|
|
||||||
-----BEGIN CERTIFICATE-----
|
|
||||||
MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
|
|
||||||
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
|
||||||
d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
|
|
||||||
b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
|
|
||||||
EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
|
|
||||||
cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
|
|
||||||
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
|
|
||||||
JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
|
|
||||||
mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
|
|
||||||
wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
|
|
||||||
VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
|
|
||||||
AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
|
|
||||||
AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
|
|
||||||
BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
|
|
||||||
pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
|
|
||||||
dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
|
|
||||||
fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
|
|
||||||
NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
|
|
||||||
H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
|
|
||||||
+o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
|
|
||||||
-----END CERTIFICATE-----
|
-----END CERTIFICATE-----
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Dash Core version v20.0.3
|
# Dash Core version v20.0.4
|
||||||
|
|
||||||
Release is now available from:
|
Release is now available from:
|
||||||
|
|
||||||
@ -35,24 +35,29 @@ reindex or re-sync the whole chain.
|
|||||||
|
|
||||||
# Notable changes
|
# Notable changes
|
||||||
|
|
||||||
## Masternode fix
|
## Build changes
|
||||||
|
|
||||||
The memory usage during the old quorum data cleanup mechanism was reduced.
|
The miner has been disabled for Windows binaries built via Guix. This resolves
|
||||||
|
an issue that was preventing users from installing v20.0.3 due to false
|
||||||
|
positive alerts from Microsoft Defender and other antivirus providers.
|
||||||
|
|
||||||
## Wallet fix
|
Use a self-signed Windows code signing certificate instead of expired one. The
|
||||||
|
expired certificate being used previously caused most antivirus software to trigger.
|
||||||
|
The new self-signed certificate results in a greatly improved installation experience.
|
||||||
|
|
||||||
A fix has been implemented for the reported decryption of wallets.
|
Updated expired gpg keys for builders. Note that the actual keys themselves are the same.
|
||||||
|
The updated keys changed their expiration dates and added additional information such as
|
||||||
|
new email addresses.
|
||||||
|
|
||||||
## RPC changes
|
## Governance
|
||||||
|
|
||||||
In `getspecialtxes` `instantlock` and `chainlock` fields are reflecting actual values now.
|
Triggers from the past are now ignored when voting.
|
||||||
|
|
||||||
## Other changes
|
## Asset lock and unlock transactions
|
||||||
|
|
||||||
Implemented improvements in Github CI and build system for macOS. Fixed compilation issues on FreeBSD.
|
Use the correct quorum for signing withdrawal (asset unlock) txes on RegTest.
|
||||||
|
|
||||||
|
# v20.0.4 Change log
|
||||||
# v20.0.3 Change log
|
|
||||||
|
|
||||||
See detailed [set of changes][set-of-changes].
|
See detailed [set of changes][set-of-changes].
|
||||||
|
|
||||||
@ -61,7 +66,6 @@ See detailed [set of changes][set-of-changes].
|
|||||||
Thanks to everyone who directly contributed to this release:
|
Thanks to everyone who directly contributed to this release:
|
||||||
|
|
||||||
- Konstantin Akimov (knst)
|
- Konstantin Akimov (knst)
|
||||||
- Odysseas Gabrielides (ogabrielides)
|
|
||||||
- PastaPastaPasta
|
- PastaPastaPasta
|
||||||
- UdjinM6
|
- UdjinM6
|
||||||
|
|
||||||
@ -90,6 +94,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:
|
||||||
|
|
||||||
|
- [v20.0.3](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.3.md) released December/26/2023
|
||||||
- [v20.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.2.md) released December/06/2023
|
- [v20.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.2.md) released December/06/2023
|
||||||
- [v20.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.1.md) released November/18/2023
|
- [v20.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.1.md) released November/18/2023
|
||||||
- [v20.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.0.md) released November/15/2023
|
- [v20.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.0.md) released November/15/2023
|
||||||
@ -135,4 +140,4 @@ These release are considered obsolete. Old release notes can be found here:
|
|||||||
- [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.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
|
- [v0.9.x](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-0.9.0.md) released Mar/13/2014
|
||||||
|
|
||||||
[set-of-changes]: https://github.com/dashpay/dash/compare/v20.0.2...dashpay:v20.0.3
|
[set-of-changes]: https://github.com/dashpay/dash/compare/v20.0.3...dashpay:v20.0.4
|
||||||
|
138
doc/release-notes/dash/release-notes-20.0.3.md
Normal file
138
doc/release-notes/dash/release-notes-20.0.3.md
Normal file
@ -0,0 +1,138 @@
|
|||||||
|
# Dash Core version v20.0.3
|
||||||
|
|
||||||
|
Release is now available from:
|
||||||
|
|
||||||
|
<https://www.dash.org/downloads/#wallets>
|
||||||
|
|
||||||
|
This is a new patch version release, bringing small bug fixes and build system enhancements.
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
## Downgrade warning
|
||||||
|
|
||||||
|
### Downgrade to a version < v19.2.0
|
||||||
|
|
||||||
|
Downgrading to a version older than v19.2.0 is not supported due to changes
|
||||||
|
in the evodb database. If you need to use an older version, you must either
|
||||||
|
reindex or re-sync the whole chain.
|
||||||
|
|
||||||
|
# Notable changes
|
||||||
|
|
||||||
|
## Masternode fix
|
||||||
|
|
||||||
|
The memory usage during the old quorum data cleanup mechanism was reduced.
|
||||||
|
|
||||||
|
## Wallet fix
|
||||||
|
|
||||||
|
A fix has been implemented for the reported decryption of wallets.
|
||||||
|
|
||||||
|
## RPC changes
|
||||||
|
|
||||||
|
In `getspecialtxes` `instantlock` and `chainlock` fields are reflecting actual values now.
|
||||||
|
|
||||||
|
## Other changes
|
||||||
|
|
||||||
|
Implemented improvements in Github CI and build system for macOS. Fixed compilation issues on FreeBSD.
|
||||||
|
|
||||||
|
|
||||||
|
# v20.0.3 Change log
|
||||||
|
|
||||||
|
See detailed [set of changes][set-of-changes].
|
||||||
|
|
||||||
|
# Credits
|
||||||
|
|
||||||
|
Thanks to everyone who directly contributed to this release:
|
||||||
|
|
||||||
|
- Konstantin Akimov (knst)
|
||||||
|
- Odysseas Gabrielides (ogabrielides)
|
||||||
|
- PastaPastaPasta
|
||||||
|
- UdjinM6
|
||||||
|
|
||||||
|
As well as everyone that submitted issues, reviewed pull requests and helped
|
||||||
|
debug the release candidates.
|
||||||
|
|
||||||
|
# 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:
|
||||||
|
|
||||||
|
- [v20.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.2.md) released December/06/2023
|
||||||
|
- [v20.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.1.md) released November/18/2023
|
||||||
|
- [v20.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-20.0.0.md) released November/15/2023
|
||||||
|
- [v19.3.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-19.3.0.md) released July/31/2023
|
||||||
|
- [v19.2.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-19.2.0.md) released June/19/2023
|
||||||
|
- [v19.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-19.1.0.md) released May/22/2023
|
||||||
|
- [v19.0.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-19.0.0.md) released Apr/14/2023
|
||||||
|
- [v18.2.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.2.2.md) released Mar/21/2023
|
||||||
|
- [v18.2.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.2.1.md) released Jan/17/2023
|
||||||
|
- [v18.2.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.2.0.md) released Jan/01/2023
|
||||||
|
- [v18.1.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.1.1.md) released January/08/2023
|
||||||
|
- [v18.1.0](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.1.0.md) released October/09/2022
|
||||||
|
- [v18.0.2](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.0.2.md) released October/09/2022
|
||||||
|
- [v18.0.1](https://github.com/dashpay/dash/blob/master/doc/release-notes/dash/release-notes-18.0.1.md) released August/17/2022
|
||||||
|
- [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
|
||||||
|
- [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.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
|
||||||
|
|
||||||
|
[set-of-changes]: https://github.com/dashpay/dash/compare/v20.0.2...dashpay:v20.0.3
|
@ -284,7 +284,6 @@ public:
|
|||||||
consensus.llmqTypeDIP0024InstantSend = Consensus::LLMQType::LLMQ_60_75;
|
consensus.llmqTypeDIP0024InstantSend = Consensus::LLMQType::LLMQ_60_75;
|
||||||
consensus.llmqTypePlatform = Consensus::LLMQType::LLMQ_100_67;
|
consensus.llmqTypePlatform = Consensus::LLMQType::LLMQ_100_67;
|
||||||
consensus.llmqTypeMnhf = Consensus::LLMQType::LLMQ_400_85;
|
consensus.llmqTypeMnhf = Consensus::LLMQType::LLMQ_400_85;
|
||||||
consensus.llmqTypeAssetLocks = consensus.llmqTypePlatform;
|
|
||||||
|
|
||||||
fDefaultConsistencyChecks = false;
|
fDefaultConsistencyChecks = false;
|
||||||
fRequireStandard = true;
|
fRequireStandard = true;
|
||||||
@ -477,7 +476,6 @@ public:
|
|||||||
consensus.llmqTypeDIP0024InstantSend = Consensus::LLMQType::LLMQ_60_75;
|
consensus.llmqTypeDIP0024InstantSend = Consensus::LLMQType::LLMQ_60_75;
|
||||||
consensus.llmqTypePlatform = Consensus::LLMQType::LLMQ_25_67;
|
consensus.llmqTypePlatform = Consensus::LLMQType::LLMQ_25_67;
|
||||||
consensus.llmqTypeMnhf = Consensus::LLMQType::LLMQ_50_60;
|
consensus.llmqTypeMnhf = Consensus::LLMQType::LLMQ_50_60;
|
||||||
consensus.llmqTypeAssetLocks = consensus.llmqTypePlatform;
|
|
||||||
|
|
||||||
fDefaultConsistencyChecks = false;
|
fDefaultConsistencyChecks = false;
|
||||||
fRequireStandard = false;
|
fRequireStandard = false;
|
||||||
@ -653,7 +651,6 @@ public:
|
|||||||
consensus.llmqTypeDIP0024InstantSend = Consensus::LLMQType::LLMQ_DEVNET_DIP0024;
|
consensus.llmqTypeDIP0024InstantSend = Consensus::LLMQType::LLMQ_DEVNET_DIP0024;
|
||||||
consensus.llmqTypePlatform = Consensus::LLMQType::LLMQ_DEVNET_PLATFORM;
|
consensus.llmqTypePlatform = Consensus::LLMQType::LLMQ_DEVNET_PLATFORM;
|
||||||
consensus.llmqTypeMnhf = Consensus::LLMQType::LLMQ_DEVNET;
|
consensus.llmqTypeMnhf = Consensus::LLMQType::LLMQ_DEVNET;
|
||||||
consensus.llmqTypeAssetLocks = consensus.llmqTypePlatform;
|
|
||||||
|
|
||||||
UpdateDevnetLLMQChainLocksFromArgs(args);
|
UpdateDevnetLLMQChainLocksFromArgs(args);
|
||||||
UpdateDevnetLLMQInstantSendFromArgs(args);
|
UpdateDevnetLLMQInstantSendFromArgs(args);
|
||||||
@ -735,7 +732,6 @@ public:
|
|||||||
void UpdateDevnetLLMQPlatform(Consensus::LLMQType llmqType)
|
void UpdateDevnetLLMQPlatform(Consensus::LLMQType llmqType)
|
||||||
{
|
{
|
||||||
consensus.llmqTypePlatform = llmqType;
|
consensus.llmqTypePlatform = llmqType;
|
||||||
consensus.llmqTypeAssetLocks = llmqType;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -940,7 +936,6 @@ public:
|
|||||||
consensus.llmqTypeDIP0024InstantSend = Consensus::LLMQType::LLMQ_TEST_DIP0024;
|
consensus.llmqTypeDIP0024InstantSend = Consensus::LLMQType::LLMQ_TEST_DIP0024;
|
||||||
consensus.llmqTypePlatform = Consensus::LLMQType::LLMQ_TEST_PLATFORM;
|
consensus.llmqTypePlatform = Consensus::LLMQType::LLMQ_TEST_PLATFORM;
|
||||||
consensus.llmqTypeMnhf = Consensus::LLMQType::LLMQ_TEST;
|
consensus.llmqTypeMnhf = Consensus::LLMQType::LLMQ_TEST;
|
||||||
consensus.llmqTypeAssetLocks = Consensus::LLMQType::LLMQ_TEST;
|
|
||||||
|
|
||||||
UpdateLLMQTestParametersFromArgs(args, Consensus::LLMQType::LLMQ_TEST);
|
UpdateLLMQTestParametersFromArgs(args, Consensus::LLMQType::LLMQ_TEST);
|
||||||
UpdateLLMQTestParametersFromArgs(args, Consensus::LLMQType::LLMQ_TEST_INSTANTSEND);
|
UpdateLLMQTestParametersFromArgs(args, Consensus::LLMQType::LLMQ_TEST_INSTANTSEND);
|
||||||
|
@ -163,7 +163,6 @@ struct Params {
|
|||||||
LLMQType llmqTypeDIP0024InstantSend{LLMQType::LLMQ_NONE};
|
LLMQType llmqTypeDIP0024InstantSend{LLMQType::LLMQ_NONE};
|
||||||
LLMQType llmqTypePlatform{LLMQType::LLMQ_NONE};
|
LLMQType llmqTypePlatform{LLMQType::LLMQ_NONE};
|
||||||
LLMQType llmqTypeMnhf{LLMQType::LLMQ_NONE};
|
LLMQType llmqTypeMnhf{LLMQType::LLMQ_NONE};
|
||||||
LLMQType llmqTypeAssetLocks{LLMQType::LLMQ_NONE};
|
|
||||||
|
|
||||||
int DeploymentHeight(BuriedDeployment dep) const
|
int DeploymentHeight(BuriedDeployment dep) const
|
||||||
{
|
{
|
||||||
|
@ -114,7 +114,7 @@ bool CAssetUnlockPayload::VerifySig(const uint256& msgHash, gsl::not_null<const
|
|||||||
// and at the quorumHash must be active in either the current or previous quorum cycle
|
// and at the quorumHash must be active in either the current or previous quorum cycle
|
||||||
// and the sig must validate against that specific quorumHash.
|
// and the sig must validate against that specific quorumHash.
|
||||||
|
|
||||||
Consensus::LLMQType llmqType = Params().GetConsensus().llmqTypeAssetLocks;
|
Consensus::LLMQType llmqType = Params().GetConsensus().llmqTypePlatform;
|
||||||
|
|
||||||
// We check at most 2 quorums
|
// We check at most 2 quorums
|
||||||
const auto quorums = llmq::quorumManager->ScanQuorums(llmqType, pindexTip, 2);
|
const auto quorums = llmq::quorumManager->ScanQuorums(llmqType, pindexTip, 2);
|
||||||
|
@ -738,6 +738,11 @@ void CGovernanceManager::VoteGovernanceTriggers(const std::optional<const CGover
|
|||||||
const auto activeTriggers = triggerman.GetActiveTriggers();
|
const auto activeTriggers = triggerman.GetActiveTriggers();
|
||||||
for (const auto& trigger : activeTriggers) {
|
for (const auto& trigger : activeTriggers) {
|
||||||
const uint256 trigger_hash = trigger->GetGovernanceObject(*this)->GetHash();
|
const uint256 trigger_hash = trigger->GetGovernanceObject(*this)->GetHash();
|
||||||
|
if (trigger->GetBlockHeight() <= nCachedBlockHeight) {
|
||||||
|
// ignore triggers from the past
|
||||||
|
LogPrint(BCLog::GOBJECT, "CGovernanceManager::%s Not voting NO-FUNDING for outdated trigger:%s\n", __func__, trigger_hash.ToString());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
if (trigger_hash == votedFundingYesTriggerHash) {
|
if (trigger_hash == votedFundingYesTriggerHash) {
|
||||||
// Skip actual trigger
|
// Skip actual trigger
|
||||||
LogPrint(BCLog::GOBJECT, "CGovernanceManager::%s Not voting NO-FUNDING for trigger:%s, we voted yes for it already\n", __func__, trigger_hash.ToString());
|
LogPrint(BCLog::GOBJECT, "CGovernanceManager::%s Not voting NO-FUNDING for trigger:%s, we voted yes for it already\n", __func__, trigger_hash.ToString());
|
||||||
|
@ -45,13 +45,13 @@ from test_framework.util import (
|
|||||||
hex_str_to_bytes,
|
hex_str_to_bytes,
|
||||||
)
|
)
|
||||||
|
|
||||||
llmq_type_test = 100
|
llmq_type_test = 106 # LLMQType::LLMQ_TEST_PLATFORM
|
||||||
tiny_amount = int(Decimal("0.0007") * COIN)
|
tiny_amount = int(Decimal("0.0007") * COIN)
|
||||||
blocks_in_one_day = 576
|
blocks_in_one_day = 576
|
||||||
|
|
||||||
class AssetLocksTest(DashTestFramework):
|
class AssetLocksTest(DashTestFramework):
|
||||||
def set_test_params(self):
|
def set_test_params(self):
|
||||||
self.set_dash_test_params(5, 3)
|
self.set_dash_test_params(6, 4, evo_count=3)
|
||||||
|
|
||||||
def skip_test_if_missing_module(self):
|
def skip_test_if_missing_module(self):
|
||||||
self.skip_if_no_wallet()
|
self.skip_if_no_wallet()
|
||||||
@ -98,7 +98,9 @@ class AssetLocksTest(DashTestFramework):
|
|||||||
request_id = hash256(request_id_buf)[::-1].hex()
|
request_id = hash256(request_id_buf)[::-1].hex()
|
||||||
|
|
||||||
height = node_wallet.getblockcount()
|
height = node_wallet.getblockcount()
|
||||||
|
self.log.info(f"Creating asset unlock: {llmq_type_test} {request_id}")
|
||||||
quorumHash = mninfo[0].node.quorum("selectquorum", llmq_type_test, request_id)["quorumHash"]
|
quorumHash = mninfo[0].node.quorum("selectquorum", llmq_type_test, request_id)["quorumHash"]
|
||||||
|
self.log.info(f"Used quorum hash: {quorumHash}")
|
||||||
unlockTx_payload = CAssetUnlockTx(
|
unlockTx_payload = CAssetUnlockTx(
|
||||||
version = 1,
|
version = 1,
|
||||||
index = index,
|
index = index,
|
||||||
@ -235,8 +237,35 @@ class AssetLocksTest(DashTestFramework):
|
|||||||
node = self.nodes[1]
|
node = self.nodes[1]
|
||||||
|
|
||||||
self.set_sporks()
|
self.set_sporks()
|
||||||
self.activate_v20()
|
|
||||||
|
|
||||||
|
self.activate_v19(expected_activation_height=900)
|
||||||
|
self.log.info("Activated v19 at height:" + str(node.getblockcount()))
|
||||||
|
|
||||||
|
# TODO: need to refactor this part to common code
|
||||||
|
# enabling instantsend -> 3 rotating quorums -> new 103 quorum
|
||||||
|
# with following dynamically adding evo nodes one-by-one seems
|
||||||
|
# as little too much complex for functional test (each which use Evo nodes)
|
||||||
|
self.nodes[0].sporkupdate("SPORK_2_INSTANTSEND_ENABLED", 0)
|
||||||
|
self.wait_for_sporks_same()
|
||||||
|
|
||||||
|
self.move_to_next_cycle()
|
||||||
|
self.log.info("Cycle H height:" + str(self.nodes[0].getblockcount()))
|
||||||
|
self.move_to_next_cycle()
|
||||||
|
self.log.info("Cycle H+C height:" + str(self.nodes[0].getblockcount()))
|
||||||
|
self.move_to_next_cycle()
|
||||||
|
self.log.info("Cycle H+2C height:" + str(self.nodes[0].getblockcount()))
|
||||||
|
|
||||||
|
self.mine_cycle_quorum(llmq_type_name='llmq_test_dip0024', llmq_type=103)
|
||||||
|
|
||||||
|
for i in range(3):
|
||||||
|
self.dynamically_add_masternode(evo=True)
|
||||||
|
node.generate(8)
|
||||||
|
self.sync_blocks()
|
||||||
|
|
||||||
|
self.set_sporks()
|
||||||
|
self.activate_v20()
|
||||||
|
node.generate(1)
|
||||||
|
self.sync_all()
|
||||||
self.mempool_size = 0
|
self.mempool_size = 0
|
||||||
|
|
||||||
key = ECKey()
|
key = ECKey()
|
||||||
@ -253,13 +282,13 @@ class AssetLocksTest(DashTestFramework):
|
|||||||
coin = coins.pop()
|
coin = coins.pop()
|
||||||
asset_lock_tx = self.create_assetlock(coin, locked_1, pubkey)
|
asset_lock_tx = self.create_assetlock(coin, locked_1, pubkey)
|
||||||
|
|
||||||
|
|
||||||
self.check_mempool_result(tx=asset_lock_tx, result_expected={'allowed': True})
|
self.check_mempool_result(tx=asset_lock_tx, result_expected={'allowed': True})
|
||||||
self.validate_credit_pool_balance(0)
|
self.validate_credit_pool_balance(0)
|
||||||
txid_in_block = self.send_tx(asset_lock_tx)
|
txid_in_block = self.send_tx(asset_lock_tx)
|
||||||
assert "assetLockTx" in node.getrawtransaction(txid_in_block, 1)
|
assert "assetLockTx" in node.getrawtransaction(txid_in_block, 1)
|
||||||
self.validate_credit_pool_balance(0)
|
self.validate_credit_pool_balance(0)
|
||||||
node.generate(1)
|
node.generate(1)
|
||||||
assert_equal(self.get_credit_pool_balance(node=node_wallet), 0)
|
|
||||||
assert_equal(self.get_credit_pool_balance(node=node), locked_1)
|
assert_equal(self.get_credit_pool_balance(node=node), locked_1)
|
||||||
self.log.info("Generate a number of blocks to ensure this is the longest chain for later in the test when we reconsiderblock")
|
self.log.info("Generate a number of blocks to ensure this is the longest chain for later in the test when we reconsiderblock")
|
||||||
node.generate(12)
|
node.generate(12)
|
||||||
@ -295,7 +324,7 @@ class AssetLocksTest(DashTestFramework):
|
|||||||
self.create_and_check_block([extra_lock_tx], expected_error = 'bad-cbtx-assetlocked-amount')
|
self.create_and_check_block([extra_lock_tx], expected_error = 'bad-cbtx-assetlocked-amount')
|
||||||
|
|
||||||
self.log.info("Mine a quorum...")
|
self.log.info("Mine a quorum...")
|
||||||
self.mine_quorum()
|
self.mine_quorum(llmq_type_name='llmq_test_platform', llmq_type=106, expected_connections=2, expected_members=3, expected_contributions=3, expected_complaints=0, expected_justifications=0, expected_commitments=3 )
|
||||||
|
|
||||||
self.validate_credit_pool_balance(locked_1)
|
self.validate_credit_pool_balance(locked_1)
|
||||||
|
|
||||||
@ -345,7 +374,7 @@ class AssetLocksTest(DashTestFramework):
|
|||||||
reason = "double copy")
|
reason = "double copy")
|
||||||
|
|
||||||
self.log.info("Mining next quorum to check tx 'asset_unlock_tx_late' is still valid...")
|
self.log.info("Mining next quorum to check tx 'asset_unlock_tx_late' is still valid...")
|
||||||
self.mine_quorum()
|
self.mine_quorum(llmq_type_name="llmq_test_platform", llmq_type=106)
|
||||||
self.log.info("Checking credit pool amount is same...")
|
self.log.info("Checking credit pool amount is same...")
|
||||||
self.validate_credit_pool_balance(locked_1 - 1 * COIN)
|
self.validate_credit_pool_balance(locked_1 - 1 * COIN)
|
||||||
self.check_mempool_result(tx=asset_unlock_tx_late, result_expected={'allowed': True})
|
self.check_mempool_result(tx=asset_unlock_tx_late, result_expected={'allowed': True})
|
||||||
@ -365,7 +394,7 @@ class AssetLocksTest(DashTestFramework):
|
|||||||
result_expected={'allowed': False, 'reject-reason' : 'bad-assetunlock-too-late'})
|
result_expected={'allowed': False, 'reject-reason' : 'bad-assetunlock-too-late'})
|
||||||
|
|
||||||
self.log.info("Checking that two quorums later it is too late because quorum is not active...")
|
self.log.info("Checking that two quorums later it is too late because quorum is not active...")
|
||||||
self.mine_quorum()
|
self.mine_quorum(llmq_type_name="llmq_test_platform", llmq_type=106)
|
||||||
self.log.info("Expecting new reject-reason...")
|
self.log.info("Expecting new reject-reason...")
|
||||||
self.check_mempool_result(tx=asset_unlock_tx_too_late,
|
self.check_mempool_result(tx=asset_unlock_tx_too_late,
|
||||||
result_expected={'allowed': False, 'reject-reason' : 'bad-assetunlock-not-active-quorum'})
|
result_expected={'allowed': False, 'reject-reason' : 'bad-assetunlock-not-active-quorum'})
|
||||||
@ -423,7 +452,7 @@ class AssetLocksTest(DashTestFramework):
|
|||||||
|
|
||||||
self.log.info("Fast forward to the next day to reset all current unlock limits...")
|
self.log.info("Fast forward to the next day to reset all current unlock limits...")
|
||||||
self.slowly_generate_batch(blocks_in_one_day + 1)
|
self.slowly_generate_batch(blocks_in_one_day + 1)
|
||||||
self.mine_quorum()
|
self.mine_quorum(llmq_type_name="llmq_test_platform", llmq_type=106)
|
||||||
|
|
||||||
total = self.get_credit_pool_balance()
|
total = self.get_credit_pool_balance()
|
||||||
while total <= 10_900 * COIN:
|
while total <= 10_900 * COIN:
|
||||||
|
@ -303,13 +303,34 @@ class DashGovernanceTest (DashTestFramework):
|
|||||||
self.check_superblockbudget(True)
|
self.check_superblockbudget(True)
|
||||||
self.check_superblock()
|
self.check_superblock()
|
||||||
|
|
||||||
|
# Move a few block past the recent superblock height and make sure we have no new votes
|
||||||
|
for _ in range(5):
|
||||||
|
with self.nodes[1].assert_debug_log("", [f"Voting NO-FUNDING for trigger:{winning_trigger_hash} success"]):
|
||||||
|
self.nodes[0].generate(1)
|
||||||
|
self.bump_mocktime(1)
|
||||||
|
self.sync_blocks()
|
||||||
|
# Votes on both triggers should NOT change
|
||||||
|
assert_equal(self.nodes[0].gobject("list", "valid", "triggers")[winning_trigger_hash]['NoCount'], 1)
|
||||||
|
assert_equal(self.nodes[0].gobject("list", "valid", "triggers")[isolated_trigger_hash]['NoCount'], self.mn_count - 1)
|
||||||
|
|
||||||
|
block_count = self.nodes[0].getblockcount()
|
||||||
|
n = sb_cycle - block_count % sb_cycle
|
||||||
|
|
||||||
|
# Move remaining n blocks until the next Superblock
|
||||||
|
for i in range(n):
|
||||||
|
self.nodes[0].generate(1)
|
||||||
|
self.bump_mocktime(1)
|
||||||
|
self.sync_blocks()
|
||||||
|
assert_equal(self.nodes[0].getblockcount(), 260)
|
||||||
|
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["bip9"]["status"], "active")
|
||||||
|
|
||||||
# Mine and check a couple more superblocks
|
# Mine and check a couple more superblocks
|
||||||
for i in range(2):
|
for i in range(2):
|
||||||
for _ in range(20):
|
for _ in range(20):
|
||||||
self.nodes[0].generate(1)
|
self.nodes[0].generate(1)
|
||||||
self.bump_mocktime(1)
|
self.bump_mocktime(1)
|
||||||
self.sync_blocks()
|
self.sync_blocks()
|
||||||
assert_equal(self.nodes[0].getblockcount(), 240 + (i + 1) * 20)
|
assert_equal(self.nodes[0].getblockcount(), 260 + (i + 1) * 20)
|
||||||
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["bip9"]["status"], "active")
|
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["bip9"]["status"], "active")
|
||||||
self.check_superblockbudget(True)
|
self.check_superblockbudget(True)
|
||||||
self.check_superblock()
|
self.check_superblock()
|
||||||
|
@ -1155,6 +1155,7 @@ class DashTestFramework(BitcoinTestFramework):
|
|||||||
for i in range(0, idx):
|
for i in range(0, idx):
|
||||||
self.connect_nodes(i, idx)
|
self.connect_nodes(i, idx)
|
||||||
|
|
||||||
|
# TODO: to let creating Evo Nodes without instant-send available
|
||||||
def dynamically_add_masternode(self, evo=False, rnd=None, should_be_rejected=False):
|
def dynamically_add_masternode(self, evo=False, rnd=None, should_be_rejected=False):
|
||||||
mn_idx = len(self.nodes)
|
mn_idx = len(self.nodes)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user