Releases: HorizenOfficial/zen
v5.0.4
zend v5.0.4
Zend 5.0.2 and Zend 5.0.3 are going to deprecate on Mainnet at block #1627572, which will occur on September 12th 2024 at approximately 08:00 AM UTC. Please, update to a newer version before September 12th, 2024.
All nodes running on Mainnet have to be updated.
Zend 5.0.4 is expected to deprecate on Mainnet at block #1679880, which will occur on December 12th 2024, at approximately 04:00 PM UTC.
Bugfixes and Minor Changes
- Extend the deprecation height of the previous versions
v5.0.2
andv5.0.3
Contributors
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)
v5.0.3
zend v5.0.3
This version of Zend (5.0.3) will deprecate along with Zend v5.0.2. For this reason, the following deprecation warning, originally posted on v5.0.2 release page, still holds:
Zend 5.0.x is expected to deprecate on Mainnet at block #1627572, which will occur on September 12th 2024, at approximately 10:00 AM UTC.
Important Notes
This version changes the order of results returned by the listunspent RPC. Results are ordered by destination address now (previously they were ordered by transaction hash).
Bugfixes and Minor Changes
- PR #645 Refactored listunspent rpc implementation for improved performance
Contributors
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)
v5.0.2
zend v5.0.2
Zend 5.0.0 and Zend 5.0.1 are going to deprecate on Mainnet at block #1554150, which will occur on May 6th 2024 at approximately 3:00 AM UTC. Please, update to a newer version before May 6th, 2024.
All nodes running on Mainnet have to be updated.
Zend 5.0.2 is expected to deprecate on Mainnet at block #1627572, which will occur on September 12th 2024, at approximately 10:00 AM UTC.
Bugfixes and Minor Changes
- Added a test reproducing mempool conflicts #640
- Extend the deprecation height of the previous versions
v5.0.0
andv5.0.1
Contributors
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)
v5.0.1
zend v5.0.1
This version of Zend (5.0.1) will deprecate along with Zend v5.0.0. For this reason, the following deprecation warning, originally posted on v5.0.0 release page, still holds:
Zend 5.0.x is expected to deprecate on Mainnet at block #1554150, which will occur on May 7th 2024, at approximately 10:00 AM UTC.
Bugfixes and Minor Changes
- Update some documentation files to align with the removal of shielded transaction which came with
v5.0.0
#632 - Fix for the
clang
build on MacOS Sonoma #634 - Fix a sporadic failure on the Python test mempool_size_limit.py #635
- Correct a few typos and simplify minor mempool checks #636
Contributors
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)
v5.0.0
zend v5.0.0
Zend 4.1.1 is going to deprecate on Mainnet at block #1502084, which will occur on February 6th 2024 at approximately 6:00 AM UTC. Please, update to a newer version before February 6th, 2024.
A hard fork is going to activate on Mainnet at block #1502800, which will occur on Feb 7th 2024, at approximately 12:00 PM UTC.
All nodes running on Mainnet have to be updated.
Zend 5.0.0 is expected to deprecate on Mainnet at block #1554150, which will occur on May 7th 2024, at approximately 10:00 AM UTC.
Important Notes
Shielded pool removal
-
PR #628 implements ZenIP-42207, which introduces a hard fork fully disabling the shielded pool from
zend
. After the hard fork, it will no longer be possible to submit and process transactions involving shielded (z-) addresses, thus transparent-to-shielded, shielded-to-shielded and shielded-to-transparent transactions will be completely disallowed. -
PR #628 as a consequence of ZenIP-42207, the following RPC commands
z_sendmany
z_mergetoaddress
have been partially disabled, as after the hard fork they are only allowed to submit transparent-to-transparent transactions (check inline documentation for additional details).
Bugfixes and Minor Changes
- All the RPC commands interacting with the shielded pool - hence, all the RPC commands starting with
z_
orzc_
(for instancez_getbalanace
orzc_raw_joinsplit
) - are now deprecated; a warning message has been included in the help body of these commands #628 - Fix for build error on recent compilers, including gcc v13 and clang v14, and with recent glibc (version 2.36); alignment of compiler optimization flags on clang and gcc on Linux #629
Contributors
Special thanks to @mantle0x for the first contribution to Zen!
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)
v5.0.0-rc1
zend v5.0.0-rc1
5.0.0-rc1 is a Testnet pre-release candidate in anticipation of the release of ZEN 5.0.0 to Mainnet later this January 2024.
A hard fork is going to activate on Testnet at block #1404200, on January 16th 2024 at approximately 2:00 PM UTC.
Important Notes
Shielded pool removal
-
PR #628 implements ZenIP-42207, which introduces a hard fork fully disabling the shielded pool from
zend
. After the hard fork, it will be no longer possible to submit and process transactions involving shielded (z-) addresses, thus transparent-to-shielded, shielded-to-shielded and shielded-to-transparent transactions will be completely disallowed. -
PR #628 as a conseqence of ZenIP-42207, the following RPC commands
z_sendmany
z_mergetoaddress
have been partially disabled, as after the hard fork they are only allowed to submit transparent-to-transparent transactions (check inline documentation for additional details).
Minor Changes
- PR #628 all the RPC commands interacting with the shielded pool - hence, all the RPC commands starting with
z_
orzc_
(for instancez_getbalanace
orzc_raw_joinsplit
) - are now deprecated. A warning message has been included in the help body of these commands. - Grammatical and punctuation corrections #625
Contributors
Special thanks to @mantle0x for the first contribution to Zen!
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)
v4.2.0-rc1
zend v4.2.0-rc1
4.2.0-rc1 is a Testnet pre-release candidate in anticipation of the release of ZEN 4.2.0 to Mainnet later next February 2024.
A hard fork is going to activate on Testnet at block #1396500, on January 3rd 2024 at approximately 12:00 PM UTC.
Important Notes
- PR #624 is a follow-up in the gradual path of shielded pool deprecation, it introduces a hard fork requiring the unshielding of private funds to target only script addresses. After the hard fork, unshielding to P2PKH addresses or to P2PK addresses will not be allowed. For this reason, the following RPC commands have been (partially) deprecated:
z_sendmany
andz_mergetoaddress
(check inline documentation for additional details).
New Features and Improvements
- Unshielding to script addresses only: a hard-fork is introduced which results in unshielding txs to target only P2SH addresses #624
Minor Changes
- Grammatical and punctuation corrections #625
Contributors
Special thanks to mantle0x for the first contribution to Zen!
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)
v4.1.1
zend v4.1.1
Zend 4.1.0 is going to deprecate on Mainnet at block #1466716, which will occur on December 6th 2023 at approximately 10:00 AM UTC.
Zend 4.1.1 is expected to deprecate on Mainnet at block #1502084, which will occur on February 6th 2024 at approximately 12:00 PM UTC. Please, update to a newer version before February 6th, 2024.
- All nodes running on Mainnet and Testnet have to be updated.
Important Notes
Proof verifier logging
Starting from this release, zend
includes a logging mechanism specific for the proof verifier, meaning that there will be a new log file named mc_crypto.log
inside the Zen data folder. This new log file can be configured through the mc_crypto_log_config.yaml
, which, during the first restart of the node after the upgrade, will be automatically created inside the same folder.
This logger is disabled by default and can be manually activated with the command line option -enable_mc_crypto_logger
.
New Features and Improvements
- Improved the mechanism to limit the size of the mempool #611
- Updated
libzendoo
(aka MC Crypto Lib) to version0.5.0
. It brings a new logging file in the Zen data folder specific for the SNARK proof verifier #616 - Updated OpenSSL dependency to version
1.1.1w
#617
Bugfixes
- Fixed the build on CentOS #605
Minor Changes
- Refactoring of the networking sub-system: added connection manager class CConnman #573
- Refactoring of Python test
sc_cert_getblocktemplate.py
#581 - Improved the management of connection inside the Python test framework #586
- Improved the validation of
-maxsendbuffer
and-maxreceivebuffer
startup parameters #588 - Fixed logging when running unit tests related to the
alertNotify()
function #589 - Improved the validation of P2P message headers #591
- Increased coverage of tests for the mempool size limit #596
- Minor static analysis fixes #590 599 #606
- Increased robustness and flexibility of release scripts #600
- Improvement of the Python test
mempool_size_limit.py
#601 - Minor refactoring of the usage of the
mempool
pointer #602 - Minor refactoring of the code inside
ThreadSocketHandler()
#608 - Removed any reference to
boost::thread
from the networking code #612 - Copyright header update #613
- Fixed a sporadic error on the CI related to
sc_cert_nonceasing
and improved a few more tests #618 - Fixed the startup warning message that is shown when configuration files are missing #619
- Automatically create the mc-crypto logger configuration file in zen data folder, without user intervention #621
Contributors
@a-petrini
@JackPiri
@ptagl
@drgora
@titusen
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)
v4.1.0
zend v4.1.0
Zend 4.0.0 is going to deprecate on Mainnet at block #1422426, which will occur on September 19th, 2023 at approximately 07:00 PM UTC.
Zend 4.1.0 expected to deprecate on Mainnet at block #1466716, which will occur on December 6th 2023 at approximately 02:00 PM UTC. Please, update to a newer version before December 6th.
A hard fork is going to activate on Mainnet at block #1426200, on September 26th 2023 at approximately 10:00 AM UTC.
- The hard fork will introduce the following changes announced in ZenIP-42204 to remove shielded transactions with transparent inputs from the Horizen Mainchain:
- Shielding of coinbase transactions will not be possible anymore once the hard fork activates.
- Coinbase Transactions continue to mature after 100 confirmations of blocks.
- The Community Fund, Secure Node and Super Node addresses will be rotated with this Hard Fork.
- All nodes running on Mainnet have to be updated.
- An update of s-nomp for mining pools using it will be required for compatibility with 4.1.0.
requireShielding
in the coin configuration will have to be set tofalse
once the Hard Fork activates- Coinbase reward addresses for Community Fund, Secure Node and Super Node will change with the Hard Fork
- If you are not using s-nomp as your mining pool software please refer to this example pull request for the required changes
The Testnet coinbase vout addresses have changed at block #1313400:
Type | From | To |
---|---|---|
Treasury | zrFwQjR613EuvLSufoNvUzZrfKvjSQx5a23 | zrA11hUpuPNofRm3nhSrwBYZ3886B22zgX5 |
Secure Nodes | zrQM7AZ1qpm9TPzLc2YinGhWePt7vaHz4Rg | zrKHh4dNiRCqUe4F9iDUiQcyp9soH86Sx2L |
Super Nodes | zrSRNSqeBNEtXqn8NkAgJ9gwhLTJmXjKqoX | zrDdMQS7nbn5d3o3Ufk1cQnjZPAxJEMBJ36 |
The Mainnet coinbase vout addresses will change at block #1426200:
Type | From | To |
---|---|---|
Treasury | zshX5BAgUvNgM1VoBVKZyFVVozTDjjJvRxJ | zsq5TpKdHRTXTaeKeToTiPTE4Re4279nUj3 |
Secure Nodes | zsx68qSKMNoc1ZPQpGwNFZXVzgf27KN6a9u | zstp5e9WBs5wUQcrNHx2S1UmkaN4koPVBBf |
Super Nodes | zszMgcogAqz49sLHGV22YCDFSvwzwkfog4k | zsvR2ihXmtjGrmAyFWytLdj76VvdFxVUJpP |
Reward percentages will stay unchanged.
Important Notes
- PR #526 implements ZenIP-42204, which introduces a hard fork disabling the possibility to move transparent funds to shield addresses. After the hard fork, only shielded-to-shielded and shielded-to-transparent transactions will be allowed. For this reason, the following RPC commands have been (partially or fully) deprecated:
z_sendmany
,z_shieldcoinbase
andz_mergetoaddress
(check inline documentation for additional details). - PR #539 modifies the data structure returned by RPC method
getrawmempool
- PR #541 fixes an issue that made explorers, relying on
zend
RPC commands, not to show old transactions including P2PK scripts. The fix has an effect only on transactions processed after the update, so in case of explorers it is recommended to run a (fast) reindex to properly handle also previously received transactions. However, reindexing is not mandatory. - Zend
4.0.0
was the last version supporting Ubuntu Bionic, whose End of Life started on May 31, 2023. PR #553 removes Ubuntu Bionic from Travis, and from that date the minimal supported version will be Ubuntu Focal.
New Features and Improvements
- Implementation of ZenIP-42204: a hard-fork is introduced which results in shielding txs being deprecated #526
- Removal of the p2p alert system #540
- Added support for Pay-To-Public-Key (P2PK) scripts #541
- Set a maximum limit to the size of the mempool (400 MB by default, configurable through
-maxmempool
startup parameter)#574
Bugfixes and Minor Changes
- Fix compilation warnings for GCC (v12) and clang (v15), update boost to v1.81 #513
- Refactoring of error code handling for proof verifier, UI improvements for reindex (fast) #504
- Fix compilation errors for recent macOS versions #536
- Fix for preventing already received and spent txs to be asked for again #537
- Fix for limitedmap #538
- Fix for return value of function mempoolToJSON #539
- Fix logfile output for "Leaving block file" statement #530
- Fix undefined behavior of a bitshift executed on a signed integer #552
- Improve
debug.log
file reopening procedure #552 - Introduce a maximum dns look up for one entry #561
- Fix
shieldedpooldeprecation_rpc.py
andwallet_mergetoaddress_2.py
Python tests #544 - Make
fReindex
andfReindexFast
flag variables thread safe #555 - Remove
zencash-apple
as a dependency to build Zend on MacOS #558 - Remove some unnecessary log lines from the command line interface #559
- Update "contributing" documentation and the GitHub issue template #562
- Remove the need to manually specify libzendoo dependencies one by one #565
- General cleaning of code (static analysis) #564
- Minor refactoring of
sc_cert_getblocktemplate.py
#568 - Refactoring of the network functions in the Python test framework #563
- Update
cargo
version from1.51
to1.70
#569 - Remove
pyblake2
Python dependency #570 - Avoid unnecessary copies when passing parameters to functions (static analysis) #567
- Improve syntax of
autogen.sh
(static analysis) #571 - Updated MacOS version on Travis CI from
12.3
to14.2
#572 - Minor performance improvement during the processing of
inv
andgetdata
P2P messages #575 - Minor change of the P2P inactivity timeout check #579
- Improved the management of SSL disconnections #566
- Added the possibility to pass parameters to the
run_until_fails.py
helper script #578 - Avoid relaying transactions coming from whitelisted peers that would make the local node be banned #580
- Remove stale transactions when a hard fork activates #594
- Fix for GUI when reindexing procedure is interrupted #597
Contributors
@JackPiri
@a-petrini
@drgora
@dullerino
@titusen
@la10736
@AndreaLanfranchi
@ptagl
Special thanks to dullerino for the first contribution to Zen!
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)
v4.1.0-rc1
zend v4.1.0-rc1
- 4.1.0-rc1 is a Testnet pre-release candidate in anticipation of the release of ZEN 4.1.0 to Mainnet* later this September.
- Pre-release 4.1.0-rc1 will perform network upgrade on Public Testnet via Hard Fork at block #1313400 which will occur August 8th, 2023 at approximately 10:00 UTC.
- Related to ZenIP-42204 to remove shielded transactions with transparent inputs from the Horizen Mainchain
- Shielding of coinbase transactions will not be possible anymore once the hard fork activates.
- Coinbase Transactions continue to mature after 100 confirmations of blocks.
- Related to ZenIP-42204 to remove shielded transactions with transparent inputs from the Horizen Mainchain
- The Community Fund, Secure Node and Super Node addresses will be rotated with this Hard Fork.
- Only nodes running on Public Testnet have to be updated.
- An update of s-nomp for mining pools using it will be required for compatibility with 4.1.0-rc1.
requireShielding
in the coin configuration will have to be set tofalse
once the Hard Fork activates- Coinbase reward addresses for Community Fund, Secure Node and Super Node will change with the Hard Fork
- If you are not using s-nomp as your mining pool software please refer to this example pull request for the required changes
- Updated wallets incorporating changes for compatibility will be provided with the Mainnet release in September.
Important Notes
- PR #526 implements ZenIP-42204, which introduces a hard fork disabling the possibility to move transparent funds to shield addresses. After the hard fork, only shielded-to-shielded and shielded-to-transparent transactions will be allowed. For this reason, the following RPC commands have been (partially or fully) deprecated:
z_sendmany
,z_shieldcoinbase
andz_mergetoaddress
(check inline documentation for additional details). - PR #539 modifies the data structure returned by RPC method
getrawmempool
- PR #541 fixes an issue that made explorers, relying on
zend
RPC commands, not to show old transactions including P2PK scripts. The fix has an effect only on transactions processed after the update, so in case of explorers it is recommended to run a (fast) reindex to properly handle also previously received transactions. However, reindexing is not mandatory. - Zend
4.0.0
was the last version supporting Ubuntu Bionic, whose End of Life started on May 31, 2023. PR #553 removes Ubuntu Bionic from Travis, and from that date the minimal supported version will be Ubuntu Focal.
New Features and Improvements
- Implementation of ZenIP-42204: a hard-fork is introduced which results in shielding txs being deprecated #526
- Removal of the p2p alert system #540
- Added support for Pay-To-Public-Key (P2PK) scripts #541
- Set a maximum limit to the size of the mempool (400 MB by default, configurable through
-maxmempool
startup parameter)#574
Bugfixes and Minor Changes
- Fix compilation warnings for GCC (v12) and clang (v15), update boost to v1.81 #513
- Refactoring of error code handling for proof verifier, UI improvements for reindex (fast) #504
- Fix compilation errors for recent macOS versions #536
- Fix for preventing already received and spent txs to be asked for again #537
- Fix for limitedmap #538
- Fix for return value of function mempoolToJSON #539
- Fix logfile output for "Leaving block file" statement #530
- Fix undefined behavior of a bitshift executed on a signed integer #552
- Improve
debug.log
file reopening procedure #552 - Introduce a maximum dns look up for one entry #561
- Fix
shieldedpooldeprecation_rpc.py
andwallet_mergetoaddress_2.py
Python tests #544 - Make
fReindex
andfReindexFast
flag variables thread safe #555 - Remove
zencash-apple
as a dependency to build Zend on MacOS #558 - Remove some unnecessary log lines from the command line interface #559
- Update "contributing" documentation and the GitHub issue template #562
- Remove the need to manually specify libzendoo dependencies one by one #565
- General cleaning of code (static analysis) #564
- Minor refactoring of
sc_cert_getblocktemplate.py
#568 - Refactoring of the network functions in the Python test framework #563
- Update
cargo
version from1.51
to1.70
#569 - Remove
pyblake2
Python dependency #570 - Avoid unnecessary copies when passing parameters to functions (static analysis) #567
- Improve syntax of
autogen.sh
(static analysis) #571 - Updated MacOS version on Travis CI from
12.3
to14.2
#572 - Minor performance improvement during the processing of
inv
andgetdata
P2P messages #575 - Minor change of the P2P inactivity timeout check #579
- Improved the management of SSL disconnections #566
- Added the possibility to pass parameters to the
run_until_fails.py
helper script #578 - Avoid relaying transactions coming from whitelisted peers that would make the local node be banned #580
Contributors
@JackPiri
@a-petrini
@drgora
@dullerino
@titusen
@la10736
@AndreaLanfranchi
@ptagl
Special thanks to dullerino for the first contribution to Zen!
Binaries
Windows and MacOS binaries are signed with a valid certificate,
see included instructions.txt for Win/Mac command line wallets.
Install
Debian package dependencies:
Depends: libc6 (>= 2.29), libgcc-s1 (>= 4.2), libgomp1 (>= 4.9), libstdc++6 (>= 9)