Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Publish next Zebra release: 1.4.0 #7764

Closed
14 of 18 tasks
mpguerra opened this issue Oct 18, 2023 · 6 comments · Fixed by #7866, #7885 or #7911
Closed
14 of 18 tasks

Publish next Zebra release: 1.4.0 #7764

mpguerra opened this issue Oct 18, 2023 · 6 comments · Fixed by #7866, #7885 or #7911
Assignees
Labels
A-release Area: Zebra releases and release management C-trivial Category: A trivial change that is not worth mentioning in the CHANGELOG

Comments

@mpguerra
Copy link
Contributor

mpguerra commented Oct 18, 2023

Prepare for the Release

These release steps can be done a week before the release, in separate PRs.
They can be skipped for urgent releases.

State Full Sync Test

To check consensus correctness, we want to test that the state format is valid after a full sync. (Format upgrades are tested in CI on each PR.)

State format changes can be made in zebra-state or zebra-chain. The state format can be changed by data that is sent to the state, data created within the state using zebra-chain, or serialization formats in zebra-state or zebra-chain.

After the test has been started, or if it has finished already:

  • Ask for a state code freeze in Slack. The freeze lasts until the release has been published.

Checkpoints

For performance and security, we want to update the Zebra checkpoints in every release.

Missed Dependency Updates

Sometimes dependabot misses some dependency updates, or we accidentally turned them off.

This step can be skipped if there is a large pending dependency upgrade. (For example, shared ECC crates.)

Here's how we make sure we got everything:

  • Run cargo update on the latest main branch, and keep the output
  • If needed, add duplicate dependency exceptions to deny.toml
  • If needed, remove resolved duplicate dependencies from deny.toml
  • Open a separate PR with the changes
  • Add the output of cargo update to that PR as a comment

Prepare and Publish the Release

Follow the steps in the release checklist to prepare the release:

Release PR:

Publish Release:

  • Create & Test GitHub Pre-Release
  • Publish GitHub Release
  • Publish Rust Crates
  • Publish Docker Images
@mpguerra mpguerra added P-Medium ⚡ C-trivial Category: A trivial change that is not worth mentioning in the CHANGELOG A-release Area: Zebra releases and release management labels Oct 18, 2023
@mpguerra mpguerra added this to Zebra Oct 18, 2023
@github-project-automation github-project-automation bot moved this to 🆕 New in Zebra Oct 18, 2023
@teor2345
Copy link
Contributor

The last full sync was successful, but the lightwalletd full sync failed due to an unrelated devops bug #7796.

So I'm happy to call these done.

#7800 changes the sprout parameter data source we're using, so a full sync would be useful but not required. We've already checked they match the parameters used by zcashd.

@teor2345
Copy link
Contributor

The last full sync failed due to the same bug:
https://github.com/ZcashFoundation/zebra/actions/runs/6666908268

@teor2345
Copy link
Contributor

This is waiting on a manual full sync of Zebra and lightwalletd, because we've merged significant state and network changes since the last full sync:
https://github.com/ZcashFoundation/zebra/actions/runs/6686504232

@teor2345

This comment was marked as outdated.

@teor2345
Copy link
Contributor

teor2345 commented Oct 30, 2023

Oops must have been tagged on the wrong PR.

@teor2345
Copy link
Contributor

teor2345 commented Nov 2, 2023

The full sync passed in 2 days 2 hours:
https://github.com/ZcashFoundation/zebra/actions/runs/6686504232

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-release Area: Zebra releases and release management C-trivial Category: A trivial change that is not worth mentioning in the CHANGELOG
Projects
Archived in project
2 participants