-
Notifications
You must be signed in to change notification settings - Fork 227
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
Create CLI Foundry template #185
Comments
The challenge here is to deploy the Semaphore contract properly using Foundry in the test environment. The equivalent in Hardhat is: https://github.com/semaphore-protocol/semaphore/blob/main/packages/hardhat/src/tasks/deploy-semaphore.ts More context: The poseidon function in the PoseidonT3 library is empty by default, to get its code the We didn't change the implementation of the poseidon function because that code is already audited. |
Re-opening this issue as Semaphore V4 will use an actual contract for Poseidon and there shouldn't be any problems with Foundry. |
Hi @cedoor, @vplasencia! I'm interested in this issue. Please assign it to me. |
Hey @csiejimmyliu, assigned :) |
Hey @cedoor ! |
Hey @csiejimmyliu, sure! They need to comment here tho. |
Hi @cedoor ! Just created a PR of this issue! |
* Semaphore identity example code bug fix * Receive suggestion for consistency * chore: forge init * forge install: forge-std v1.9.2 * Foundry CLI First Draft * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * forge install: forge-std v1.9.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * forge install: forge-std v1.9.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * forge install: forge-std v1.9.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * forge install: forge-std v1.9.2 * modules * forge install: semaphore v4.0.3 * forge install: zk-kit.solidity * forge install: poseidon-solidity v0.0.5 * forge install: openzeppelin-contracts v5.0.2 * forge install: forge-std v1.9.2 * change test name * modify declaration of semaphore and verifier * Modify Test Function Name * Add Test Chain Target * forge std install * refactor(cli-template-contracts-foundry): change default Anvil address and private key * chore(cli-template-contracts-foundry): add comments * refactor(cli-template-contracts-foundry): add Semaphore & SemaphoreVerifier addresses for test chain * chore(cli-template-contracts-foundry): add forge coverage for Makefile * chore(cli-template-contracts-foundry): add env.example * docs(cli-template-contracts-foundry): add command instructions * updated * forge build works * Fixed for linting * chore(cli-template-contracts-foundry): make the lint, prettier, and lint-staged pass * chore(cli-template-contracts-foundry): replace Makefile(removed) with package.json * chore(cli-template-contracts-foundry): passing the ci test * updated test * feat(cli-template-contracts-foundry): complete cli-template-contracts-foundry re #854, #185 * Update dependencies * Add explanation on `yarn dev` * fix(cli-template-contracts-foundry): fix `yarn dev` command and add docs on integrate w/ boilerplate * Added yarnrc * updated version * Added Foundry in template option --------- Co-authored-by: weipooppys93030 <55434365+weipooppys93030@users.noreply.github.com> Co-authored-by: timou0911 <x0928048316@gmail.com> Co-authored-by: csiejimmyliu <91661606+csiejimmyliu@users.noreply.github.com>
Description
There is a CLI Hardhat template called
cli-template-contracts-hardhat
with a sample contract and tests for that contract.The idea is to recreate that same template using Foundry instead of Hardhat. The template will be called
cli-template-contracts-foundry
.Previous work
https://github.com/vplasencia/semaphore-foundry
https://github.com/vplasencia/semaphore-foundry-hardhat
https://github.com/vplasencia/semaphore-hardhat-foundry
The text was updated successfully, but these errors were encountered: