April 28, 2017 - Dev update

First of all, happy 6 month anniversary, Zcashers!! :heart_eyes::zcash:

Going forward, we’re going to try reformatting these developer updates in accordance with the working groups so I’ll be breaking down work into categories reflected in that document.

Meta - organizes other working groups:

The process of jumpstarting the working groups model for software and ecosystem development is ongoing. We encourage anyone interested in participating existing or proposed working groups to reach out and let us know.

Protocol - design and deploy the Sapling protocol upgrade:

While still a near future priority, there will be a prior hard fork (HF0) to the Sapling upgrade which will focus on setting a hardfork process and improving the protocol so that future hard forks can be done securely. You can see the progress on tickets related to HF0 in the Hard Fork 0 project.

Tasks related to the Sapling protocol upgrade can be viewed in the Sapling Protocol Upgrade w/ UIT project.

We still have a lot of initial steps to do for Sapling as our regular meetings on the topic have been postponed to focus on retrospective of the security incident from a couple weeks ago.

Release - defines and executes the release process of the zcashd software, selects pull requests for inclusion in the zcashd software, ensures that the release quality and schedule are consistent, and packages software:

We’ve done a lot of work recently focusing on improving the release lifecycle and process. On Monday, we’ll be posting a public notice on our blog detailing these changes.

We’re working on porting tickets into Github projects to better track progress on distinct categories of development. This work is ongoing and new projects are likely to be added moving forward.

The upcoming 1.0.9 release scheduled for May 16th will be mostly focused on continuous improvement and security and stability. We’re temporarily slowing down the work on near priority features such as XCAT, payment offloading and payment disclosure while we make sure the immediate priorities are handled properly. This basically means first iterations of near priority features are much more likely to come in 1.0.10 instead of 1.0.9.

Development infrastructure - manages development infrastructure including continuous integration, performance measurement, and packaging systems:

This has been a big focus for us in the last weeks since the security incident including improved unit testing both for Zcash specific code and upstream Bitcoin code we use (and update).

To track related tickets in this category, you can see the Development Infrastructure project.

Network infrastructure - manages development and operation of infrastructure for the Zcash blockchain, including monitoring systems, community faucets and explorers, bootstrap nodes, Tor nodes, and so on:

We’re continuing work on tasks like a timestamp observatory, block observatory and testnet faucet. Most of the backend for these tasks is complete, with remainder work focusing on public interfaces.

Most (but not all) tickets related to this category can also be found in the continuous improvement project, however we might decide to split out this project into more specific subprojects.

Berkeley DB replacement - manages the migration of the wallet database format from BerkeleyDB to SQLite:

This is something we’ve been wanting to do for a while now and suspect that some wallet corruption issues that we’ve seen with users are directly related to Berkeley DB. The wallet DB to SQLite project is where we’ll be tracking progress on this.

Miscellaneous - until more working groups are set up, updates on development not covered in existing working groups will be specified here:

This week, we added our initial version of the zk-SNARKs tech page to the website which gives an overview of the technology and links to resources for extended learning.

Relatedly, in collaboration with the Zcash Foundation, we’re hosting the first tutoring session for understanding zk-SNARKs next Friday at 9:00 PT, noon ET, 16:00 UTC. Please get in touch if you would like to join the hangout!

We’re also working on adding Japanese translations to the website.

We sent alerts to pre- 1.0.8-1 nodes requesting an upgrade. If you haven’t done this, please upgrade ASAP.