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

Upgrade zcash_script after the zcashd 5.5.0 release #6535

Closed
teor2345 opened this issue Apr 18, 2023 · 7 comments · Fixed by ZcashFoundation/zcash_script#84 or #6624
Closed

Upgrade zcash_script after the zcashd 5.5.0 release #6535

teor2345 opened this issue Apr 18, 2023 · 7 comments · Fixed by ZcashFoundation/zcash_script#84 or #6624
Assignees
Labels
A-consensus Area: Consensus rule updates A-script Area: Script handling C-enhancement Category: This is an improvement S-needs-triage Status: A bug report needs triage

Comments

@teor2345
Copy link
Contributor

teor2345 commented Apr 18, 2023

Motivation

After zcashd 5.5.0 is released:
https://github.com/zcash/zcash/tags

We want to update our script engine to match its implementation. There haven't been any significant changes to script behaviour, but the surrounding code has been refactored.

Scheduling

This doesn't need to be in the same release as #6232, but builds will be slower until we update our entire set of dependencies. There's also a small but acceptable risk of consensus divergence.

Specifications

Zcash transparent scripts are mostly unspecified, so we must match zcashd's behaviour.

Complex Code or Requirements

This is consensus-critical code.

Testing

Our existing unit and integration tests have good coverage of this code.

Manually use cargo tree to check that we don't depend on any vulnerable orchard versions: we must only depend on orchard 0.4 or later.

Related Work

Follow up to:

@teor2345 teor2345 added A-consensus Area: Consensus rule updates C-enhancement Category: This is an improvement S-needs-triage Status: A bug report needs triage P-Medium ⚡ A-script Area: Script handling labels Apr 18, 2023
@mpguerra mpguerra added this to Zebra Apr 18, 2023
@github-project-automation github-project-automation bot moved this to 🆕 New in Zebra Apr 18, 2023
@teor2345
Copy link
Contributor Author

The zcash_script crate upgrades are in ZcashFoundation/zcash_script#84

@mpguerra
Copy link
Contributor

@mpguerra
Copy link
Contributor

@teor2345 are you working on this one in ZcashFoundation/zcash_script#84 ? Is there anything else that needs to be done to close this issue?

@teor2345
Copy link
Contributor Author

teor2345 commented Apr 26, 2023

@teor2345 are you working on this one in ZcashFoundation/zcash_script#84 ?

Yes, please see my updates on that PR and in Slack.

I am waiting for the ECC developers to push the zcashd v5.5.0 tag, but we can proceed based on the second release candidate if we need to. Is there any reason we need to do this soon?

Is there anything else that needs to be done to close this issue?

We need to:

  • wait for the zcashd tag
  • finish the zcash_script changes
  • get the PR reviewed
  • merge and publish the crate
  • open a PR in Zebra to update the crate dependency (or wait for dependabot)
  • get that PR reviewed and approved

@teor2345
Copy link
Contributor Author

You can see the detailed instructions here:
#6532 (comment)

@mpguerra
Copy link
Contributor

@teor2345 are you working on this one in ZcashFoundation/zcash_script#84 ?

Yes, please see my updates on that PR and in Slack.

I am waiting for the ECC developers to push the zcashd v5.5.0 tag, but we can proceed based on the second release candidate if we need to. Is there any reason we need to do this soon?

No no :) I was just trying to figure out if this was in progress and who was working on it

@mpguerra
Copy link
Contributor

mpguerra commented May 5, 2023

I think we still need to:

  • merge and publish the crate
  • open a PR in Zebra to update the crate dependency (or wait for dependabot)
  • get that PR reviewed and approved

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-consensus Area: Consensus rule updates A-script Area: Script handling C-enhancement Category: This is an improvement S-needs-triage Status: A bug report needs triage
Projects
Archived in project
2 participants