Skip to content
This repository has been archived by the owner on Oct 31, 2023. It is now read-only.

Rework (or remove?) merkle module to avoid unwraps #166

Closed
1 task done
phated opened this issue May 8, 2023 · 3 comments
Closed
1 task done

Rework (or remove?) merkle module to avoid unwraps #166

phated opened this issue May 8, 2023 · 3 comments
Labels
enhancement New feature or request

Comments

@phated
Copy link
Contributor

phated commented May 8, 2023

Problem

The merkle.rs module in this crate uses a ton of unwraps. As soon as we land #151, we'll be able to avoid these.

Proposed solution

Either rewrite the module or remove it if we can. I'm not clear on where the merkle stuff should be happening (acvm vs backend).

Alternatives considered

No response

Additional context

No response

Submission Checklist

  • Once I hit submit, I will assign this issue to the Project Board with the appropriate tags.
@phated phated added the enhancement New feature or request label May 8, 2023
@github-project-automation github-project-automation bot moved this to 📋 Backlog in Noir May 8, 2023
@TomAFrench
Copy link
Member

I'm in favour of removing the merkle tree implementation entirely. The compute_merkle_root function should live down in ACVM to match the other black box functions. Alternatively we remove this black box function entirely as we can implement it in a library while being more flexible

The merkle tree implementation is only used for calculating inputs for test cases so we can then remove it entirely.

@TomAFrench
Copy link
Member

We can also remove unwraps if we get a rust pedersen implementation afaik as we only throw errors due to potential wasm issues I think.

@TomAFrench
Copy link
Member

Closing as this code is being deleted in #205

@github-project-automation github-project-automation bot moved this from 📋 Backlog to ✅ Done in Noir May 22, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
Archived in project
Development

No branches or pull requests

2 participants