From afbe10f693e7d3a6ae981b0218a817eda2a6af32 Mon Sep 17 00:00:00 2001 From: Paolo Tagliaferri Date: Fri, 3 Mar 2023 10:10:37 +0100 Subject: [PATCH 1/7] Set fork 10 activation height (testnet only) Fork 10 enables sidechains v2 Testnet fork activation block 1228700 2023-03-13 ~15:00UTC --- src/gtest/test_forkmanager.cpp | 4 ++-- src/zen/forks/fork10_nonceasingsidechainfork.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/gtest/test_forkmanager.cpp b/src/gtest/test_forkmanager.cpp index 04800c6231..24030b9a1f 100644 --- a/src/gtest/test_forkmanager.cpp +++ b/src/gtest/test_forkmanager.cpp @@ -462,7 +462,7 @@ TEST(ForkManager, NonCeasingSCVersionForkMainnet) { TEST(ForkManager, NonCeasingSCVersionForkTestnet) { SelectParams(CBaseChainParams::TESTNET); - int nonCeasingSCVersionForkHeight = 2000000; // PLACEHOLDER! + int nonCeasingSCVersionForkHeight = 1228700; EXPECT_EQ(ForkManager::getInstance().getMaxSidechainVersion(nonCeasingSCVersionForkHeight - 1), 1); EXPECT_EQ(ForkManager::getInstance().getMaxSidechainVersion(nonCeasingSCVersionForkHeight), 2); EXPECT_EQ(ForkManager::getInstance().getMaxSidechainVersion(nonCeasingSCVersionForkHeight + 1), 2); @@ -471,7 +471,7 @@ TEST(ForkManager, NonCeasingSCVersionForkTestnet) { TEST(ForkManager, NonCeasingSCVersionForkRegtest) { SelectParams(CBaseChainParams::REGTEST); - int nonCeasingSCVersionForkHeight = 480; // PLACEHOLDER! + int nonCeasingSCVersionForkHeight = 480; EXPECT_EQ(ForkManager::getInstance().getMaxSidechainVersion(nonCeasingSCVersionForkHeight - 1), 1); EXPECT_EQ(ForkManager::getInstance().getMaxSidechainVersion(nonCeasingSCVersionForkHeight), 2); EXPECT_EQ(ForkManager::getInstance().getMaxSidechainVersion(nonCeasingSCVersionForkHeight + 1), 2); diff --git a/src/zen/forks/fork10_nonceasingsidechainfork.cpp b/src/zen/forks/fork10_nonceasingsidechainfork.cpp index b23811e145..9738deea6d 100644 --- a/src/zen/forks/fork10_nonceasingsidechainfork.cpp +++ b/src/zen/forks/fork10_nonceasingsidechainfork.cpp @@ -5,7 +5,7 @@ namespace zen { NonCeasingSidechainFork::NonCeasingSidechainFork() { setHeightMap({{CBaseChainParams::Network::MAIN,2500000}, // PLACEHOLDER! - {CBaseChainParams::Network::REGTEST,480}, // PLACEHOLDER! - {CBaseChainParams::Network::TESTNET,2000000}}); // PLACEHOLDER! + {CBaseChainParams::Network::REGTEST,480}, + {CBaseChainParams::Network::TESTNET,1228700}}); } } From 71ce70d1b79d16308c04ba55dbc108ec8ec589fd Mon Sep 17 00:00:00 2001 From: Paolo Tagliaferri Date: Thu, 2 Mar 2023 16:16:53 +0100 Subject: [PATCH 2/7] Set clientversion 4.0.0-RC1 --- configure.ac | 4 ++-- src/clientversion.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac index 1b69c6973c..c49d3874cd 100644 --- a/configure.ac +++ b/configure.ac @@ -3,11 +3,11 @@ AC_PREREQ([2.60]) define(_CLIENT_VERSION_MAJOR, 4) define(_CLIENT_VERSION_MINOR, 0) define(_CLIENT_VERSION_REVISION, 0) -define(_CLIENT_VERSION_BUILD, 1) +define(_CLIENT_VERSION_BUILD, 25) define(_ZC_BUILD_VAL, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, m4_incr(_CLIENT_VERSION_BUILD), m4_eval(_CLIENT_VERSION_BUILD < 50), 1, m4_eval(_CLIENT_VERSION_BUILD - 24), m4_eval(_CLIENT_VERSION_BUILD == 50), 1, , m4_eval(_CLIENT_VERSION_BUILD - 50))) define(_CLIENT_VERSION_SUFFIX, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, _CLIENT_VERSION_REVISION-beta$1, m4_eval(_CLIENT_VERSION_BUILD < 50), 1, _CLIENT_VERSION_REVISION-rc$1, m4_eval(_CLIENT_VERSION_BUILD == 50), 1, _CLIENT_VERSION_REVISION, _CLIENT_VERSION_REVISION-$1))) define(_CLIENT_VERSION_IS_RELEASE, true) -define(_COPYRIGHT_YEAR, 2022) +define(_COPYRIGHT_YEAR, 2023) AC_INIT([Zcash],[_CLIENT_VERSION_MAJOR._CLIENT_VERSION_MINOR._CLIENT_VERSION_SUFFIX(_ZC_BUILD_VAL)],[https://github.com/zcash/zcash/issues],[zcash]) AC_CONFIG_SRCDIR([src/main.cpp]) AC_CONFIG_HEADERS([src/config/bitcoin-config.h]) diff --git a/src/clientversion.h b/src/clientversion.h index f8debfb1c4..0ec4d720e4 100644 --- a/src/clientversion.h +++ b/src/clientversion.h @@ -35,7 +35,7 @@ #define CLIENT_VERSION_MAJOR 4 #define CLIENT_VERSION_MINOR 0 #define CLIENT_VERSION_REVISION 0 -#define CLIENT_VERSION_BUILD 1 +#define CLIENT_VERSION_BUILD 25 //! Set to true for release, false for prerelease or test build #define CLIENT_VERSION_IS_RELEASE true @@ -44,7 +44,7 @@ * Copyright year (2009-this) * Todo: update this when changing our copyright comments in the source */ -#define COPYRIGHT_YEAR 2022 +#define COPYRIGHT_YEAR 2023 #endif //HAVE_CONFIG_H From 7024ca3e9d7aa3f3b7a4530a92de673a4f0b035b Mon Sep 17 00:00:00 2001 From: Paolo Tagliaferri Date: Thu, 2 Mar 2023 16:17:36 +0100 Subject: [PATCH 3/7] Update checkpoint blocks --- src/chainparams.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/chainparams.cpp b/src/chainparams.cpp index 9dfb0ea6fa..0fa2ff92a9 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -159,11 +159,12 @@ class CMainParams : public CChainParams { ( 1035000, uint256S("0x0000000002cadc8f4c43ab96406211c489318c2e56b8e7d1e4e4b9fa5dffeea5")) ( 1107000, uint256S("0x000000000184d804ea3b77864616d5af5bb2dbe1953a805a47c427e9dceeca7b")) ( 1218500, uint256S("0x000000000335a5c54143d3fc6e143baeeb9a11e5e2250487b578f370114cd879")) - ( 1286500, uint256S("0x0000000002b9240e8e1ce741102c0d873148665e2aa45e5122fabf478b5c2fc2")), - 1674538856, // * UNIX timestamp of last checkpoint block - 33465154, // * total number of transactions between genesis and last checkpoint + ( 1286500, uint256S("0x0000000002b9240e8e1ce741102c0d873148665e2aa45e5122fabf478b5c2fc2")) + ( 1307700, uint256S("0x00000000010c48dcfeb74eeffa4623aaea0404f553707f4b2bee7763acc040dc")), + 1677743087, // * UNIX timestamp of last checkpoint block + 34094778, // * total number of transactions between genesis and last checkpoint // (the tx=... number in the SetBestChain debug.log lines) - 14983 // * estimated number of transactions per day after checkpoint + 15017 // * estimated number of transactions per day after checkpoint // total number of tx / (checkpoint block height / (24 * 24)) }; @@ -268,11 +269,12 @@ class CTestNetParams : public CMainParams { ( 949700, uint256S("0x0001ec9be52a04c305335d0669bd2aa283248be6f274ab5280bd883d8b8db0d8")) ( 1021000, uint256S("0x000118d2f94a42758d0efa60d5a95f968a668b0d4669cd7ca0c20b95d1d187e8")) ( 1133000, uint256S("0x00022703828f9b9e76d2c11525d9fcc182b2119095b27c5f51081615b3132b11")) - ( 1201000, uint256S("0x0004acc3f9f26a8314a59962219b23e3c7ed06cbec16893fb0ea8a993167a847")), - 1674537238, // * UNIX timestamp of last checkpoint block - 2060056, // * total number of transactions between genesis and last checkpoint + ( 1201000, uint256S("0x0004acc3f9f26a8314a59962219b23e3c7ed06cbec16893fb0ea8a993167a847")) + ( 1222300, uint256S("0x0009f1427d98efd8d5dcb44230d793960b0564ea55bfd533cd6b69b944bbe824")), + 1677753627, // * UNIX timestamp of last checkpoint block + 2090548, // * total number of transactions between genesis and last checkpoint // (the tx=... number in the SetBestChain debug.log lines) - 988 // * estimated number of transactions per day after checkpoint + 985 // * estimated number of transactions per day after checkpoint // total number of tx / (checkpoint block height / (24 * 24)) }; From 4bb17a4234b1507c87865585964ceb10945cc7fb Mon Sep 17 00:00:00 2001 From: Paolo Tagliaferri Date: Thu, 2 Mar 2023 17:02:19 +0100 Subject: [PATCH 4/7] Update Debian package info --- contrib/debian/changelog | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/contrib/debian/changelog b/contrib/debian/changelog index 0c29b5b7d8..c926e286e8 100644 --- a/contrib/debian/changelog +++ b/contrib/debian/changelog @@ -1,5 +1,5 @@ -zen (3.2.1) stable; urgency=medium +zen (4.0.0-RC1) stable; urgency=medium * new release - -- Zen Blockchain Foundation Tue, 24 Jan 2023 18:30:00 +0000 + -- Zen Blockchain Foundation Tue, 2 Mar 2023 18:30:00 +0000 From ef92d0b7de75a525d39801f4691fa87f31f1852b Mon Sep 17 00:00:00 2001 From: Paolo Tagliaferri Date: Thu, 2 Mar 2023 17:23:54 +0100 Subject: [PATCH 5/7] Update man pages --- doc/man/zen-cli.1 | 16 ++++++++-------- doc/man/zen-tx.1 | 16 ++++++++-------- doc/man/zend.1 | 23 ++++++++++++++--------- 3 files changed, 30 insertions(+), 25 deletions(-) diff --git a/doc/man/zen-cli.1 b/doc/man/zen-cli.1 index 4abb004f5c..5eebf1e10d 100644 --- a/doc/man/zen-cli.1 +++ b/doc/man/zen-cli.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1. -.TH ZEN-CLI "1" "January 2023" "zen-cli v3.2.1" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. +.TH ZEN-CLI "1" "March 2023" "zen-cli v4.0.0-rc1" "User Commands" .SH NAME -zen-cli \- manual page for zen-cli v3.2.1 +zen-cli \- manual page for zen-cli v4.0.0-rc1 .SH DESCRIPTION -Horizen RPC client version v3.2.1 +Horizen RPC client version v4.0.0\-rc1 .SS "Usage:" .TP zen\-cli [options] [params] @@ -64,10 +64,10 @@ Timeout in seconds during HTTP requests, or 0 for no timeout. (default: 900) .SH COPYRIGHT -Copyright (C) 2009-2021 The Bitcoin Core Developers -Copyright (C) 2015-2021 The Zcash Developers -Copyright (C) 2015-2021 Zdeveloper.org -Copyright (C) 2015-2021 Zen Blockchain Foundation +Copyright (C) 2009-2023 The Bitcoin Core Developers +Copyright (C) 2015-2023 The Zcash Developers +Copyright (C) 2015-2023 Zdeveloper.org +Copyright (C) 2015-2023 Zen Blockchain Foundation This is experimental software. diff --git a/doc/man/zen-tx.1 b/doc/man/zen-tx.1 index 671527f770..a494f0e6fa 100644 --- a/doc/man/zen-tx.1 +++ b/doc/man/zen-tx.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1. -.TH ZEN-TX "1" "January 2023" "zen-tx v3.2.1" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. +.TH ZEN-TX "1" "March 2023" "zen-tx v4.0.0-rc1" "User Commands" .SH NAME -zen-tx \- manual page for zen-tx v3.2.1 +zen-tx \- manual page for zen-tx v4.0.0-rc1 .SH DESCRIPTION -Horizen zen\-tx utility version v3.2.1 +Horizen zen\-tx utility version v4.0.0\-rc1 .SS "Usage:" .TP zen\-tx [options] [commands] @@ -85,10 +85,10 @@ set=NAME:JSON\-STRING Set register NAME to given JSON\-STRING .SH COPYRIGHT -Copyright (C) 2009-2021 The Bitcoin Core Developers -Copyright (C) 2015-2021 The Zcash Developers -Copyright (C) 2015-2021 Zdeveloper.org -Copyright (C) 2015-2021 Zen Blockchain Foundation +Copyright (C) 2009-2023 The Bitcoin Core Developers +Copyright (C) 2015-2023 The Zcash Developers +Copyright (C) 2015-2023 Zdeveloper.org +Copyright (C) 2015-2023 Zen Blockchain Foundation This is experimental software. diff --git a/doc/man/zend.1 b/doc/man/zend.1 index 0e36a4df91..154d48d081 100644 --- a/doc/man/zend.1 +++ b/doc/man/zend.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1. -.TH ZEND "1" "January 2023" "zend v3.2.1" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. +.TH ZEND "1" "March 2023" "zend v4.0.0-rc1" "User Commands" .SH NAME -zend \- manual page for zend v3.2.1 +zend \- manual page for zend v4.0.0-rc1 .SH DESCRIPTION -Zen Daemon version v3.2.1 +Zen Daemon version v4.0.0\-rc1 .SS "Usage:" .TP zend [options] @@ -51,7 +51,7 @@ Specify data directory \fB\-disabledeprecation=\fR .IP Disable block\-height node deprecation and automatic shutdown (example: -\fB\-disabledeprecation\fR=\fI\,3\/\fR.2.1) +\fB\-disabledeprecation\fR=\fI\,4\/\fR.0.0\-rc1) .HP \fB\-exportdir=\fR .IP @@ -597,12 +597,17 @@ output (default: 1 if running in a console, 0 otherwise) .IP Number of seconds between metrics refreshes (default: 1 if running in a console, 600 otherwise) +.HP +\fB\-maxtipage=\fR +.IP +regtest only \- Set the maximum tip age used for the relay of chain +blocks) .SH COPYRIGHT -Copyright (C) 2009-2021 The Bitcoin Core Developers -Copyright (C) 2015-2021 The Zcash Developers -Copyright (C) 2015-2021 Zdeveloper.org -Copyright (C) 2015-2021 Zen Blockchain Foundation +Copyright (C) 2009-2023 The Bitcoin Core Developers +Copyright (C) 2015-2023 The Zcash Developers +Copyright (C) 2015-2023 Zdeveloper.org +Copyright (C) 2015-2023 Zen Blockchain Foundation This is experimental software. From bf6eb2fcf0d6ab20f87425bdc4e312b1af15635b Mon Sep 17 00:00:00 2001 From: Paolo Tagliaferri Date: Fri, 3 Mar 2023 11:53:10 +0100 Subject: [PATCH 6/7] Add release notes --- doc/authors.md | 14 +++++----- doc/release-notes/release-notes-4.0.0-rc1.md | 28 ++++++++++++++++++++ 2 files changed, 35 insertions(+), 7 deletions(-) create mode 100644 doc/release-notes/release-notes-4.0.0-rc1.md diff --git a/doc/authors.md b/doc/authors.md index 7f484b39ce..37fb8307b3 100644 --- a/doc/authors.md +++ b/doc/authors.md @@ -5,20 +5,22 @@ Jack Grigg (784) abi87 (686) Alberto Sala (597) Simon Liu (342) -cronicc (315) +cronicc (318) FranckDG (219) +Paolo Tagliaferri (218) Sean Bowe (204) -Paolo Tagliaferri (187) Daira Hopwood (142) Wladimir J. van der Laan (122) Nathan Wilcox (106) VolodymyrBabaiev (85) +Alessandro Petrini (80) Taylor Hornby (75) Jay Graber (75) Jonas Schnelli (74) MarcoOl94 (55) +Daniele Rogora (54) +DanieleDiBenedetto (45) Cory Fields (45) -DanieleDiBenedetto (41) pierstab (39) Kevin Gallagher (38) Oleksandr Iozhytsia (36) @@ -28,7 +30,7 @@ Pieter Wuille (24) joshuayabut (20) nomnombtc (18) i-Alex (18) -Alessandro Petrini (15) +GiacomoPirinoli (16) Paige Peterson (13) luisantoniocrag (12) fanquake (12) @@ -50,8 +52,6 @@ Philip Kaufmann (7) PeaStew (7) Phoinic (6) Pavel Janík (6) -GiacomoPirinoli (6) -Daniele Rogora (6) Patrick Strateman (5) Jonathan "Duke" Leto (5) Johnathan Corgan (5) @@ -101,7 +101,6 @@ Robert C. Seacord (2) René Nyffenegger (2) Pavel Vasin (2) Paul Georgiou (2) -Paolo (2) Nathaniel Mahieu (2) Murilo Santana (2) Matt Quinn (2) @@ -122,6 +121,7 @@ Boris Hajduk (2) Bob McElrath (2) Ariel (2) Anthony Towns (2) +Andrea Lanfranchi (2) Allan Niemerg (2) Alex van der Peet (2) Alberto Garoffolo (2) diff --git a/doc/release-notes/release-notes-4.0.0-rc1.md b/doc/release-notes/release-notes-4.0.0-rc1.md new file mode 100644 index 0000000000..84da42ef72 --- /dev/null +++ b/doc/release-notes/release-notes-4.0.0-rc1.md @@ -0,0 +1,28 @@ +zend v4.0.0-RC1 +========= + +This is a release candidate of `zend` meant to be used primarily on testnet. +As the previous version of `zend` (3.2.1), this RC1 is expected to deprecate at block **#1328320**, which will occur on **April 7th, 2023 at approximately 12:00 PM UTC**. Please, update to `v4.0.0` before April 7th (the final release will be available soon). + +A **hard fork** is expected to activate on testnet at block **#1228700**, which will occur on **March 13th at approximately 4:00 PM**. + +## New Features and Improvements +* Sidechains version 2 (introducing non-ceasable behavior and key rotation) [#512](https://github.com/HorizenOfficial/zen/pull/512) +* Added some light pre-checks for the sidechain transaction commitment tree to improve performance [#515](https://github.com/HorizenOfficial/zen/pull/515) + +## Bugfixes and Minor Changes +* Fixed an issue that was causing the build procedure to fail when the path of the project folder was too long [#470](https://github.com/HorizenOfficial/zen/pull/470) +* Added on the Travis CI the possibility to dynamically enable/disable the MacOS build on some branches [#489](https://github.com/HorizenOfficial/zen/pull/489) +* Fixed a bug affecting the z_mergetoaddress RPC command that was causing a wrong estimation of transaction size potentially leading to the creation of invalid transactions (rejected by the mempool for exceeding the max size) [#479](https://github.com/HorizenOfficial/zen/pull/479) +* Added the usage of Travis cache for compiling zend dependencies in order to speed up the CI [#498](https://github.com/HorizenOfficial/zen/pull/498) +* Minor fixes for help-documentation of some RPC methods [#501](https://github.com/HorizenOfficial/zen/pull/501) +* Updated MC Crypto Lib dependency to version 0.3.0-rc1 [#506](https://github.com/HorizenOfficial/zen/pull/506) + +## Contributors +* [@AndreaLanfranchi](https://github.com/AndreaLanfranchi) +* [@a-petrini](https://github.com/a-petrini) +* [@cronicc](https://github.com/cronicc) +* [@DanieleDiBenedetto](https://github.com/DanieleDiBenedetto) +* [@drgora](https://github.com/drgora) +* [@JackPiri](https://github.com/JackPiri) +* [@ptagl](https://github.com/ptagl) From a1f3e95c0281c5a10677114f45d1966574d3e78d Mon Sep 17 00:00:00 2001 From: Paolo Tagliaferri Date: Fri, 3 Mar 2023 12:22:22 +0100 Subject: [PATCH 7/7] Update README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 658c6b82d3..64904540ae 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Zen 3.2.1 +Zen 4.0.0-RC1 ================ What is Horizen? ----------------