Note: This release of Zcashd v2.0.5-1 is a hotfix release that all users are encouraged to upgrade to, especially users who built v2.0.5 from source. Shortly after tagging v2.0.5, we became aware of an issue that caused nodes running Sprout-to-Sapling migrations to occasionally crash. Zcashd v2.0.5-1 fixes the issue. Users who normally upgrade via Debian package repository or tarball download were not exposed to v2.0.5.
The v2.0.5 release added the Sprout-to-Sapling migration tool, introduced a new consensus rule on mainnet to reject blocks that violate turnstiles and adds 64-bit ARMv8 support. Zcashd v2.0.5-1 will be supported until block 593762, expected to arrive around 28th August 2019, at which point the software will end-of-support halt and shut down.
Sprout-to-Sapling Migration Tool
This release includes the addition of a tool that will enable users to migrate shielded funds from the Sprout pool to the Sapling pool while minimizing information leakage.
The migration can be enabled using the RPC
z_setmigration or by including
-migration in the
zcash.conf file. Unless otherwise specified funds will be migrated to the wallet’s default Sapling address; it is also possible to set the receiving Sapling address using the
-migrationdestaddress option in
New consensus rule: Reject blocks that violate turnstile
In the 2.0.4 release, the consensus rules were changed on testnet to enforce a new rule which marks blocks as invalid if they would lead to a turnstile violation in the Sprout or Shielded value pools. This release enforces the consensus rule change on mainnet.
Developers can use a new experimental feature
-developersetpoolsizezero to test Sprout and Sapling turnstile violations. See PR 3964 for more details.
64-bit ARMv8 support
Added ARMv8 (AArch64) support. This enables users to build zcash on even more devices.
For information on how to build see the User Guide
Users on the Zcash forum have reported successes with both the Pine64 Rock64Pro and Odroid C2, which contain 4GB and 2GB of RAM respectively.
Just released, the Odroid N2 looks like a great solution with 4GB of RAM. The newly released Jetson Nano Developer Kit from Nvidia (also 4GB of RAM) is also worth a look. The NanoPC-T3 Plus is another option but for the simplest/best experience choose a board with 4GB of RAM. Just make sure before purchase that the CPU supports the 64-bit ARMv8 architecture.
Summary of the Changes
- Sprout-to-Sapling migration (#3848, #3888, #3967, #3973, #3977)
- Activate turnstile on mainnet (#3968)
- Update boost to v1.70.0 to eliminate build warning (#3951)
- Fix new HD seed generation for previously-encrypted wallets (#3940)
- Fix enable-debug build DB_COINS undefined (#3907)
- Update “Zcash Company” to “Electric Coin Company” (#3901)
- Support additional cross-compilation targets in Rust (#3505)
- We fixed an issue that would cause the Zcashd to crash when calling
z_getmigrationstatuswhile a wallet’s migration transactions were in the mempool. (#3987)
- We fixed an issue where the wallet would incorrectly calculate the amount to migrate and would not send as many migration transactions as it could each round of migration. (#3990)
- We fixed an issue that could cause Zcashd to crash while generating migration transactions if a wallet had a large number of sprout notes. (#3990)
For a more complete list of changes, please see the 2.0.5 milestone.