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

New LeanIMT incremental Merkle tree #68

Merged
merged 31 commits into from
Nov 27, 2023
Merged

New LeanIMT incremental Merkle tree #68

merged 31 commits into from
Nov 27, 2023

Conversation

cedoor
Copy link
Member

@cedoor cedoor commented Sep 28, 2023

Description

This PR moves the old incremental-merkle-tree library to the new imt package, renaming classes and files, and adds a new incremental Merkle tree library (i.e. LeanIMT), an optimized binary incremental Merkle tree.

The libraries' code has been documented and tests have been reorganized to meet high-quality requirements.

Related Issue

Closes #67

Does this introduce a breaking change?

  • Yes
  • No

TODO

  • Add more comments to the old IMT implementation
  • Rename incremental-merkle-tree.sol to imt.sol
  • Refactor old Solidity implementations' tests
  • Add LeanIMT Solidity implementation
  • Add documentation to Solidity implementations' code
  • Add warnings about new lib names

@cedoor cedoor requested a review from vplasencia September 28, 2023 17:13
@cedoor cedoor marked this pull request as ready for review November 11, 2023 13:12
@cedoor cedoor requested a review from 0xjei November 11, 2023 13:12
Copy link
Member

@0xjei 0xjei left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Outstanding job! I truly commend your approach in modularizing and generalizing the code to the fullest extent. The organization is both meticulous and efficient, to be honest :) I've noticed a few minor oversights in the sample READMEs, but overall, fantastic work! 🤩

packages/imt.sol/contracts/package.json Show resolved Hide resolved
packages/imt.sol/package.json Show resolved Hide resolved
packages/imt.sol/hardhat.config.ts Show resolved Hide resolved
packages/imt/README.md Outdated Show resolved Hide resolved
packages/imt/README.md Outdated Show resolved Hide resolved
packages/imt/README.md Show resolved Hide resolved
@cedoor cedoor removed the request for review from vplasencia November 27, 2023 11:39
@cedoor cedoor merged commit 34ffc3d into main Nov 27, 2023
2 checks passed
@cedoor cedoor deleted the feat/new-imt branch November 27, 2023 12:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add new LeanIMT incremental Merkle tree
2 participants