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

Epic: Zebra Release Candidate #3096

Closed
48 of 76 tasks
mpguerra opened this issue Nov 23, 2021 · 2 comments · Fixed by #5395
Closed
48 of 76 tasks

Epic: Zebra Release Candidate #3096

mpguerra opened this issue Nov 23, 2021 · 2 comments · Fixed by #5395
Labels
Epic Zenhub Label. Denotes a theme of work under which related issues will be grouped

Comments

@mpguerra
Copy link
Contributor

mpguerra commented Nov 23, 2021

This epic tracks the required tasks for the Zebra release candidate.

Release Candidate Goals

  1. This version of Zebra is a fully-validating node that:
    a. implements all the (relevant) consensus rules (that we’re aware of),
    b. actively contributes to the Zcash network by relaying transactions and blocks, and
    c. can act as a backend for lightwalletd.
  2. Zebra will not have an adverse impact on the Zcash network as a whole or on other nodes (i.e. zcashd nodes)
  3. Zebra has no known significant security issues (e.g. RCEs, DoS bugs)
  4. We are comfortable with Zebra being audited, and for the results of that audit to be published
  5. Zebra's performance:
    a. Improves the network through fast propagation
    b. Connects to approximately ¼ of the nodes on the network by default
    c. Is not significantly slower than zcashd

Required Release Candidate Tasks

Process

Breaking Changes

Testing

Severe Performance Issues

Usability

Release Binaries

Out of Scope

These tasks were suggested for the release candidate, but they are out of scope:

Ready to Work On

These tasks can happen soon, if we want:

Audits

Release Announcement

Release

User Documentation

Comms

  • Work out how we want to explain the "release candidate" status
    • Can be used as a lightwalletd backend or Zcash node
    • Has extensive tests
    • Hasn't been audited yet
  • Do a blog post
    • Mention existing users like ZecWallet Lite, how wallet users can use Zebra, and how people can run a Zebra node
  • Post to the forums
  • Chat to light wallet developers
  • Announce Release on Socials / Website

Security

Versioning

External Contributors

Documentation

User Problem Diagnostics

Developer Diagnostics

Usability

Missing Dependency Upgrades

We might want to:

Here are the missing upgrades as of 6 September 2022:

  • aes v0.7.5 -> v0.8.1
  • bellman v0.13.0 -> v0.13.1
  • color-eyre v0.6.1 -> v0.6.2
  • gumdrop v0.7 -> v0.8.1
  • metrics-exporter-prometheus v0.9.0 -> v0.11.0
  • metrics v0.18.1 -> v0.20.1
  • pin-project v0.4.29 -> v1.0.12
  • proptest v0.10.1 -> v1.0.0
  • rand v0.7 -> v0.8.5
  • secp256k1 v0.21.3 -> v0.24.0
  • sha2 v0.9.9 -> v0.10.5
  • tracing-subscriber v0.3.11 -> v0.3.15
  • tracing v0.1.31 -> v0.1.36
  • uint v0.9.1 -> v0.9.3

The list was created using cargo upgrade --workspace 2>&1 1>/dev/null | sort -u.

After a few Release Candidates

We might need more release experience before doing these things:

Handling Features and Releases

  • Decide if we want to use a stable branch, short-term feature branches, Rust feature flags
  • Decide if we want temporary pre-release branches while we're doing the release PRs
  • Decide if we want nightly or beta releases

Process

  • Update ticket and PR templates to make them easier to use

After Audits

Releases

  • Work out which parts of the release process we want to automate
  • Make zebra-network into a release candidate (needs cargo-semver-checks)
  • Publish zebrad or other crates on crates.io

CI Reliability

Completed

Testing

CI Reliability

Usability

External Contributors

@mpguerra mpguerra added the Epic Zenhub Label. Denotes a theme of work under which related issues will be grouped label Nov 23, 2021
@mpguerra mpguerra changed the title Tracking: Zebra Stable Release Tracking: Zebra Release Candidate Nov 24, 2021
@mpguerra mpguerra changed the title Tracking: Zebra Release Candidate Tracking: Zebra Stable Release Candidate Jan 19, 2022
@mpguerra mpguerra mentioned this issue Jan 27, 2022
40 tasks
@mpguerra mpguerra changed the title Tracking: Zebra Stable Release Candidate Edit: Zebra Stable Release Candidate Jan 27, 2022
@mpguerra mpguerra changed the title Edit: Zebra Stable Release Candidate Epic: Zebra Stable Release Candidate Jan 27, 2022
@teor2345 teor2345 changed the title Epic: Zebra Stable Release Candidate Epic: Zebra Release Candidate Aug 23, 2022
@teor2345 teor2345 changed the title Epic: Zebra Release Candidate Epic: Zebra Release Candidates Aug 23, 2022
This was referenced Aug 25, 2022
@teor2345 teor2345 changed the title Epic: Zebra Release Candidates Epic: Zebra Release Candidate Sep 20, 2022
@mpguerra mpguerra added this to Zebra Sep 22, 2022
@mpguerra mpguerra moved this to 🆕 New in Zebra Sep 22, 2022
@teor2345
Copy link
Contributor

This is now done, just need to tag the release.

Repository owner moved this from 🆕 New to ✅ Done in Zebra Oct 11, 2022
@mpguerra
Copy link
Contributor Author

Reopening with the changes to the dependencies audit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Epic Zenhub Label. Denotes a theme of work under which related issues will be grouped
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

2 participants