Zcash 1.1.2 has been released on the heels of Zcon0. This Overwinter-compatible release focused on implementing internal changes necessary for Sapling in tandem with the librustzcash and sapling-crypto libraries.
Developer tips for Overwinter network upgrade
Overwinter activated successfully at block 347500 with most of the ecosystem upgrading smoothly. Common third-party issues were:
- When using an offline node to sign raw transactions, the offline node must be synced past the Overwinter activation block height so that the correct consensus branch id is used.
- With the new Overwinter signature hashing scheme, when passing in the
prevtxs
parameter tosignrawtransaction
, theamount
field must be specified. Previously, this was not mandatory. - When developing custom code to perform the Overwinter signature hashing scheme, a common issue has been mixing up the endianness of fields.
See our previous blog post and the Overwinter Network Upgrade page for more information.
Other notable changes
Removal of option -disabledeprecation
We implemented end-of-support (EOS) halt for zcashd
software versions made by the Zcash Company in release 1.0.9. The configuration option-disabledeprecation
was added to allow users to choose to stay on a particular software version. However, it incorrectly implied that deprecated releases would still be supported.
This release removes the -disabledeprecation
option so that zcashd
software versions made by the Zcash Company will always shut down in accordance with the defined EOS policy (currently 16 weeks after release). Users who wish to use a different policy must now specifically choose to either:
- edit and compile the source code themselves, or
- obtain a software version from someone else who has done so (and obtain
support from them).
Either way, it is much clearer that the software they are running is not supported by the Zcash Company.
Summary of the changes included in this release
- Removed configuration option for turning off EOS halt, previously known as auto-senescence. (#3137)
- Data field
hashFinalSaplingRoot
has been added to RPC callgetblocktemplate
. (#3299) - Data field
finalsaplingroot
has been added to RPC callsgetblockheader
andgetblock
. (#3337) - We added encodings for Sapling addresses. (#3326)
- We added a class for Sapling notes. (#3272)
- We created tests for Sapling anchors. (#3258)
- Test vectors were created for components of Sapling keys. (#3332)
- The help message of RPC call
signmessage
has been clarified. (#3259) - Some tests were updated with fixes. (#3303, #3320).
- We performed some refactoring for code clean up. (#3237, #3321, #3322)
For a more complete list of changes, see the 1.1.2 milestone.