diff --git a/configure.ac b/configure.ac index 8251e1ab220e5..9243d753a42bc 100644 --- a/configure.ac +++ b/configure.ac @@ -2,8 +2,8 @@ dnl require autoconf 2.60 (AS_ECHO/AS_ECHO_N) AC_PREREQ([2.60]) define(_CLIENT_VERSION_MAJOR, 0) define(_CLIENT_VERSION_MINOR, 12) -define(_CLIENT_VERSION_REVISION, 14) -define(_CLIENT_VERSION_BUILD, 1) +define(_CLIENT_VERSION_REVISION, 15) +define(_CLIENT_VERSION_BUILD, 0) define(_CLIENT_VERSION_IS_RELEASE, true) define(_COPYRIGHT_YEAR, 2020) define(_COPYRIGHT_HOLDERS,[The %s developers]) diff --git a/contrib/seeds/nodes_main.txt b/contrib/seeds/nodes_main.txt index 37ecc7869c3c1..2f1d7c04955a6 100644 --- a/contrib/seeds/nodes_main.txt +++ b/contrib/seeds/nodes_main.txt @@ -1,3 +1,4 @@ +45.35.81.200:41319 45.84.0.125:41319 45.124.64.164:41319 46.105.181.190:41319 @@ -12,7 +13,7 @@ 107.174.203.97:41319 107.175.31.173:41319 145.239.184.91:41319 -159.69.189.185:41319 +185.137.181.114:41319 192.3.80.58:41319 195.201.226.128:41319 213.59.123.142:41319 diff --git a/contrib/seeds/nodes_test.txt b/contrib/seeds/nodes_test.txt index f8c29f6741614..3f40a22745934 100644 --- a/contrib/seeds/nodes_test.txt +++ b/contrib/seeds/nodes_test.txt @@ -1,7 +1,6 @@ -81.169.215.168:41319 +81.169.215.168:41419 85.214.65.60:41419 95.216.143.13:41419 107.174.203.97:41419 -159.69.189.185:41419 185.122.58.44:41419 195.201.226.128:41419 diff --git a/doc/Doxyfile b/doc/Doxyfile index 6be03855a572b..8fe01dd38ab0d 100644 --- a/doc/Doxyfile +++ b/doc/Doxyfile @@ -41,7 +41,7 @@ PROJECT_NAME = "DMS Core" # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 0.12.14.1 +PROJECT_NUMBER = 0.12.15.0 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a diff --git a/doc/release-notes/dms/release-notes-0.12.15.0.md b/doc/release-notes/dms/release-notes-0.12.15.0.md new file mode 100644 index 0000000000000..5c24546ebd047 --- /dev/null +++ b/doc/release-notes/dms/release-notes-0.12.15.0.md @@ -0,0 +1,18 @@ +DMS Core version 0.12.15.0 "Grace", 17 Apr 2020 +====================================== + +Release is available from: + + + +## Notable changes + +* Document index: total count and search for document hash +* Permanently locked unspents +* 2 MB block size (DIP0001) +* Logo with trademark +* GUI and RPC enhancements + +Please report bugs using the issue tracker at github: + + diff --git a/doc/release-process.md b/doc/release-process.md index 28990d35ba9ae..cc4b2a6aa8a4b 100644 --- a/doc/release-process.md +++ b/doc/release-process.md @@ -38,12 +38,14 @@ Client version - `_CLIENT_VERSION_MAJOR` - `_CLIENT_VERSION_MINOR` - `_CLIENT_VERSION_REVISION` + - `_CLIENT_VERSION_BUILD` - Set `_CLIENT_VERSION_IS_RELEASE` to `true` - `_COPYRIGHT_YEAR` - `src/clientversion.h`: (this mirrors `configure.ac` - see issue #3539) - `CLIENT_VERSION_MAJOR` - `CLIENT_VERSION_MINOR` - `CLIENT_VERSION_REVISION` + - `CLIENT_VERSION_BUILD` - Set `CLIENT_VERSION_IS_RELEASE` to `true` - `COPYRIGHT_YEAR` - `RELEASE_CODE_NAME` **A**lice, **B**ob, **C**arol etc. diff --git a/src/chainparams.cpp b/src/chainparams.cpp index 5617af54d31c5..0a2c58627ada8 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -144,7 +144,7 @@ class CMainParams : public CChainParams { consensus.BIP34Hash = uint256S("0x00000af4a21d6e8daa4026a5eafc7132089a7dbb9d3921b12c4fa39b78c9a010"); consensus.BIP65Height = 84100; consensus.BIP66Height = 84000; - consensus.DIP0001Height = 782208; // TODO + consensus.DIP0001Height = 150446; // TODO consensus.powLimit = uint256S("0000ffffff000000000000000000000000000000000000000000000000000000"); consensus.nPowTargetTimespan = 24 * 60 * 60; // PoW calculation 24 * 60 * 60; 1 day consensus.nPowTargetSpacing = 6 * 60; // DMS 6 minutes (initial 4 minutes); Bitcoin 10 minutes; Dash 2.5 minutes @@ -164,10 +164,10 @@ class CMainParams : public CChainParams { // Deployment of DIP0001 consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].bit = 1; - consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].nStartTime = 1508025600; // Dash: Oct 15th, 2017 - consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].nTimeout = 1539561600; // Dash: Oct 15th, 2018 - consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].nWindowSize = 4032; - consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].nThreshold = 3226; // 80% of 4032 + consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].nStartTime = 1589536800; // May 15th, 2020 + consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].nTimeout = 1592215200; // Jun 15th, 2020 + consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].nWindowSize = 283; + consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].nThreshold = 254; // 80% of 283 // Deployment of BIP147 consensus.vDeployments[Consensus::DEPLOYMENT_BIP147].bit = 2; @@ -177,10 +177,10 @@ class CMainParams : public CChainParams { consensus.vDeployments[Consensus::DEPLOYMENT_BIP147].nThreshold = 3226; // 80% of 4032 // The best chain should have at least this much work. - consensus.nMinimumChainWork = uint256S("0x00000000000000000000000000000000000000000000000000000045eb877ed3"); // 103260 - + consensus.nMinimumChainWork = uint256S("0x000000000000000000000000000000000000000000000000000001c0fca849bf"); // = 1.928.384.235.967 total work, block 135808 + // By default assume that the signatures in ancestors of this block are valid. - consensus.defaultAssumeValid = uint256S("0x0000000c15de23b822043f7fd7ff4ace4761ec455da710442ef6c1e5035a14d1"); // 103260 + consensus.defaultAssumeValid = uint256S("0x00000025868ef0958009ba542ded2faf5242cd835445ca6c5556eff5a19161ab"); // 135808 /** * The message start string is designed to be unlikely to occur in normal data. @@ -264,14 +264,17 @@ class CMainParams : public CChainParams { ( 86998, uint256S("0x0000000d6ca0904b7ec849283a177b7a25b0ed3c23413c14d9e564bfa4d2514a")) // 2019-Sep-14 ( 94707, uint256S("0x000000d52750d7b5cf3e682106b258de7f9c0f66e011e7cf0699b6526a05339d")) // 2019-Oct-18 (100000, uint256S("0x00000095a23b6cc9ec9c0d7385bf4c3705220271d425a203af41163b4600e96d")) // 2019-Nov-10 - (103260, uint256S("0x0000000c15de23b822043f7fd7ff4ace4761ec455da710442ef6c1e5035a14d1")) // 2019-Nov-24 + (110034, uint256S("0x00000025fcd0421225ea0c8d5874b3040a81618c609f2419bce9d339a96faee7")) // 2019-Dec-24 + (120004, uint256S("0x00000031fd82d41fa6fda29a405a55162304822be9b03beed79e47f25d3f3296")) // 2020-Feb-06 + (127991, uint256S("0x00000042ec60e4badf5e3288b1dbb8da2a27af4b88b6ec299e7149586784ccfd")) // 2020-Mar-12 + (135808, uint256S("0x00000025868ef0958009ba542ded2faf5242cd835445ca6c5556eff5a19161ab")) // 2020-Apr-15 }; chainTxData = ChainTxData{ - 1574599910, // * UNIX timestamp of last known number of transactions - 141893, // * total number of transactions between genesis and that timestamp + 1586930538, // * UNIX timestamp of last known number of transactions + 205946, // * total number of transactions between genesis and that timestamp // (the tx=... number in the UpdateTip debug.log lines) - 0.01 // * estimated number of transactions per second after that timestamp + 0.04 // * estimated number of transactions per second after that timestamp }; } }; @@ -303,7 +306,7 @@ class CTestNetParams : public CChainParams { consensus.BIP34Hash = uint256S("0x00004399a114a034b2f8d742b8e7f018d3cfdec0b25150d0b7e271b63c9cd4ce"); consensus.BIP65Height = 84100; consensus.BIP66Height = 84000; - consensus.DIP0001Height = 139246; // ~ 2020-Apr-10 + consensus.DIP0001Height = 138820; consensus.powLimit = uint256S("000fffffff000000000000000000000000000000000000000000000000000000"); consensus.nPowTargetTimespan = 24 * 60 * 60; consensus.nPowTargetSpacing = 6 * 60; @@ -318,8 +321,8 @@ class CTestNetParams : public CChainParams { // Deployment of BIP68, BIP112, and BIP113. consensus.vDeployments[Consensus::DEPLOYMENT_CSV].bit = 0; - consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nStartTime = 1586080800; // 2020-Apr-05 - consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nTimeout = 1586253600; // 2020-Apr-07 + consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nStartTime = 1588327200; // May 1th, 2020 + consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nTimeout = 1591005600; // Jun 1th, 2020 // Deployment of DIP0001 consensus.vDeployments[Consensus::DEPLOYMENT_DIP0001].bit = 1; @@ -336,10 +339,10 @@ class CTestNetParams : public CChainParams { consensus.vDeployments[Consensus::DEPLOYMENT_BIP147].nThreshold = 8; // 80% of 10 MN // The best chain should have at least this much work. - consensus.nMinimumChainWork = uint256S("0x0000000000000000000000000000000000000000000000000000000052604b37"); + consensus.nMinimumChainWork = uint256S("0x00000000000000000000000000000000000000000000000000000000566f4ad8"); // = 1450134232, block 140464 // By default assume that the signatures in ancestors of this block are valid. - consensus.defaultAssumeValid = uint256S("0x000090f59b07ccd5285bd79dd9a4190cd23cd6efd3d0b7b1c4069e9ce9897c12"); // 137044 + consensus.defaultAssumeValid = uint256S("0x00000174ee13b777c20a7aa6aef53650f0e42777788ec2c00e36a76658dfc6f6"); // 140464 pchMessageStart[0] = 0xce; // same as Dash Testnet pchMessageStart[1] = 0x44; // D @@ -416,10 +419,11 @@ class CTestNetParams : public CChainParams { (120000, uint256S("0x0000a59203584f8fa8b9556595dc01c4df53d6c1e19810d7761129ebf8f2ec1c")) (130004, uint256S("0x00004646f1ca07c4dc563368ac427c930fc22d2e1f7b689eddbbdf5c2026e97a")) (137044, uint256S("0x000090f59b07ccd5285bd79dd9a4190cd23cd6efd3d0b7b1c4069e9ce9897c12")) + (140464, uint256S("0x00000174ee13b777c20a7aa6aef53650f0e42777788ec2c00e36a76658dfc6f6")) }; chainTxData = ChainTxData{ - 1585728042, // * UNIX timestamp of last known number of transactions - 138640, // * total number of transactions between genesis and that timestamp + 1586930531, // * UNIX timestamp of last known number of transactions + 142227, // * total number of transactions between genesis and that timestamp // (the tx=... number in the UpdateTip debug.log lines) 0.003 // * estimated number of transactions per second after that timestamp }; diff --git a/src/chainparamsseeds.h b/src/chainparamsseeds.h index 93c0819e2d374..e10c6f945f996 100644 --- a/src/chainparamsseeds.h +++ b/src/chainparamsseeds.h @@ -8,6 +8,7 @@ * IPv4 as well as onion addresses are wrapped inside a IPv6 address accordingly. */ static SeedSpec6 pnSeed6_main[] = { + {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x2d,0x23,0x51,0xc8}, 41319}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x2d,0x54,0x00,0x7d}, 41319}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x2d,0x7c,0x40,0xa4}, 41319}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x2e,0x69,0xb5,0xbe}, 41319}, @@ -22,7 +23,7 @@ static SeedSpec6 pnSeed6_main[] = { {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x6b,0xae,0xcb,0x61}, 41319}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x6b,0xaf,0x1f,0xad}, 41319}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x91,0xef,0xb8,0x5b}, 41319}, - {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x9f,0x45,0xbd,0xb9}, 41319}, + {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xb9,0x89,0xb5,0x72}, 41319}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xc0,0x03,0x50,0x3a}, 41319}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xc3,0xc9,0xe2,0x80}, 41319}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xd5,0x3b,0x7b,0x8e}, 41319}, @@ -30,11 +31,10 @@ static SeedSpec6 pnSeed6_main[] = { }; static SeedSpec6 pnSeed6_test[] = { - {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x51,0xa9,0xd7,0xa8}, 41319}, + {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x51,0xa9,0xd7,0xa8}, 41419}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x55,0xd6,0x41,0x3c}, 41419}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x5f,0xd8,0x8f,0x0d}, 41419}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x6b,0xae,0xcb,0x61}, 41419}, - {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x9f,0x45,0xbd,0xb9}, 41419}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xb9,0x7a,0x3a,0x2c}, 41419}, {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xc3,0xc9,0xe2,0x80}, 41419} }; diff --git a/src/clientversion.h b/src/clientversion.h index ab78f8784f0cb..5c19288485475 100644 --- a/src/clientversion.h +++ b/src/clientversion.h @@ -18,8 +18,8 @@ //! These need to be macros, as clientversion.cpp's and dms*-res.rc's voodoo requires it #define CLIENT_VERSION_MAJOR 0 #define CLIENT_VERSION_MINOR 12 -#define CLIENT_VERSION_REVISION 14 -#define CLIENT_VERSION_BUILD 1 +#define CLIENT_VERSION_REVISION 15 +#define CLIENT_VERSION_BUILD 0 //! Set to true for release, false for prerelease or test build #define CLIENT_VERSION_IS_RELEASE true @@ -32,8 +32,15 @@ #endif //HAVE_CONFIG_H -// Release code names: Alice 0.12.9, Bob 0.12.10, Carol 0.12.11, Dave 0.12.12, Erin 0.12.13, Faythe 0.12.14 -#define RELEASE_CODE_NAME "Faythe" +// Release code names: +// Alice 0.12.9, 26 Aug 2018 +// Bob 0.12.10, 13 Nov 2018 +// Carol 0.12.11, 4 Jan 2019 +// Dave 0.12.12, 15 Apr 2019 +// Erin 0.12.13, 16 Aug 2019 +// Faythe 0.12.14, 29 Nov 2019 +// Grace 0.12.15, 17 Apr 2020 +#define RELEASE_CODE_NAME "Grace" /** * Converts the parameter X to a string after macro replacement on X has been performed. diff --git a/src/validation.cpp b/src/validation.cpp index 3fb14a8c20bab..99b342e15c18c 100644 --- a/src/validation.cpp +++ b/src/validation.cpp @@ -1352,10 +1352,10 @@ CAmount GetMasternodePayment(int nHeight, CAmount blockValue) if(nHeight > nMNPIBlock+(nMNPIPeriod* 4)) ret += blockValue / 40; // 88000 - 40.0% ~ 2019-09-18 if(nHeight > nMNPIBlock+(nMNPIPeriod* 5)) ret += blockValue /100; // 95000 - 41.0% ~ 2019-10-19 if(nHeight > nMNPIBlock+(nMNPIPeriod* 6)) ret += blockValue /100; // 102000 - 42.0% ~ 2019-11-19 - if(nHeight > nMNPIBlock+(nMNPIPeriod* 7)) ret += blockValue /100; // 109000 - 43.0% ~ 2019-12 - if(nHeight > nMNPIBlock+(nMNPIPeriod* 8)) ret += blockValue /100; // 116000 - 44.0% ~ 2020-01 - if(nHeight > nMNPIBlock+(nMNPIPeriod* 9)) ret += blockValue /100; // 123000 - 45.0% ~ 2020-02 - if(nHeight > nMNPIBlock+(nMNPIPeriod*10)) ret += blockValue /100; // 130000 - 46.0% ~ 2020-03 + if(nHeight > nMNPIBlock+(nMNPIPeriod* 7)) ret += blockValue /100; // 109000 - 43.0% ~ 2019-12-19 + if(nHeight > nMNPIBlock+(nMNPIPeriod* 8)) ret += blockValue /100; // 116000 - 44.0% ~ 2020-01-19 + if(nHeight > nMNPIBlock+(nMNPIPeriod* 9)) ret += blockValue /100; // 123000 - 45.0% ~ 2020-02-19 + if(nHeight > nMNPIBlock+(nMNPIPeriod*10)) ret += blockValue /100; // 130000 - 46.0% ~ 2020-03-20 if(nHeight > nMNPIBlock+(nMNPIPeriod*11)) ret += blockValue /100; // 137000 - 47.0% ~ 2020-04 if(nHeight > nMNPIBlock+(nMNPIPeriod*12)) ret += blockValue /100; // 144000 - 48.0% ~ 2020-05 if(nHeight > nMNPIBlock+(nMNPIPeriod*13)) ret += blockValue /100; // 151000 - 49.0% ~ 2020-06