Zcash Z3 updates (formerly Zcashd Deprecation)

July 4th

Hello! Happy independence day for those who celebrate. I’m writing this from a plane to Prague. I always remember the 4th of july because it’s the date when many years ago I got my first job and started my own journey as an independent adult-wannabe like 20 years ago when I started the accent training and american culture course to be a call center tech support representative for a company that had a very “family oriented” business but very racist customers that wanted to speak to “real americans” (if that ever existed) when they had problems with their devices. So remember: facism is not “a respectable opinion”. Embrace every accent, every culture. No borders! No masters!

Now, to our weekly update

Outreach

Status: Paused
We will discuss this further in the next sections but we are getting closer to having artifacts and containers that Zcash partners can start testing so we will pivot to the next phase of outreach when those are almost done.

Zebra

Project Roadmap board
Priority board

The Zebra team is preparing Release 2.4.0! Which has items that take us closer to Zcashd deprecation like:

  • The debug_like_zcashd config option for mining is no longer available.
  • Implemented deserialization for Zebra’s block and transaction types (#9522)
  • Update getaddressbalance RPC to return received field (#9295, #9539)
  • Added a mempool_change() gRPC method for listening to changes in the mempool (#9494)
  • Added invalidateblock and reconsiderblock RPC methods (#9551)
  • Updated (z_)validateaddress to validate TEX addresses (#9483)
  • Added a addnode RPC method (#9604)
  • Added missing fields to getrawtransaction (#9636)
  • Added value pool balances to getblock RPC output (#9432, #9539)
  • Added support for configuring shielded addresses for mining (#9574)

While that is cooking, other important changes are on their way, like feat(rpc): Sync all chains in TrustedChainSync::sync which incorporates non-best-chain information to the ReadStateService which is one of the main sources of information for Zaino.

Congrats to the Zebra team for this future release.

Zaino (ZingoLabs)

  • Status: in progress

Project Board

Zingo continues with their re-architecting work while parallelizing other RPC work on newer members of the team. Chain index types and Zaino-state work progresses as part of the rearchitecting work that Hazel and Idky have been developing with Zaino API Workgroup meetings as input while Nacho, Dorian and Alamode are working on development tooling, error handling and testing.

A huge PR on non-finalized chain landed on the Zaino codebase. Congrats to Hazel and @idky137 for it!. This moves Zingo’s winning horse further down the road to Zcashd deprecation by being better at tracking the many competing chain tips of a PoW blockchain such as Zcash.

It’s very motivating to see a new team continue to grow and gain experience and expertise on core development tasks. We should all continue to foster new teams to join the ecosystem and take great responsibilities like Zingo is doing.

In-Memory backend wrap up
- status: pending review :warning:

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

Kris Nuttycombe will try to make some room on his schedule to complete this review.

Zallet full node wallet

  • Status: in progress

ECC has notified a deviation of 2 months from the original schedule.

tracking work on this repository.
Are travelling to Z|ECC summit this week.

We are still looking for testers and new developers. See the call to action below

Call for Testers!

This won’t be a public alpha. We are looking for people that can build Zallet from code and run it with their Zebra nodes.

Call for Developers!

If you want to start working on something Zcash related and you don’t know where to start, Zallet is a good way to do it. With many RPC methods already developed that can be good examples for the creation of others, the project is in a good shape to start taking contributions from the broad community. Fork the Zallet repo and start hacking!.

Block Explorer Support

  • Status: Testing

A testnet zebra block explorer has been spawned and is being tested as @cacho announced a few days ago. This development is working around some methods that are still missing from the RPC API of Z3 so it’s less performant than the Zcashd one. Once we have the methods in place we will be able to fully replace Zcashd in terms of block exploring!

Pending reviews:

Regtest? What is that?

  • Status: in review

I’ve addressed a second round of comments and am waiting for more.

Thanks for reading!

5 Likes