-
Notifications
You must be signed in to change notification settings - Fork 35
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
Pull in forked changes #190
Conversation
* chore: rename rsa circuit from main to main_rsa remove wasmer dep remove static proof generation logic, in memory zkey, etc add rust_witness chore: switch to git copy of rust-witness fix: rsa circuit path fix: mutability fix: re-enable example fix: move witness fn into scope refactor: register list of proofs fix: build anonaadhaar wasm to fix ci refactor: remove wasm path fix: zkey pathing chore: remove wasmer ref chore: switch to wasm delete copy of circom-compat * chore: remove mutability and ignore * chore: comment anonaadhaar build chore: switch to zkmopro circom-compat fork chore: update cargo lock * fix: compile error in build script * fix: put anonaadhaar tests behind feature flag * chore: remove wasmer deps * refactor: pass zkey path through ffi bridge * chore: rebase, revert name changes * chore: comments * chore: fix halo2 build * chore: conditionals...............
refactor: separate circom/halo2 functions in udl
chore(ci): split circom and halo2 tests
fix: don't export circom and halo2 modules
* wip: readme tutorial * fix: use the name zkey_witness_map function name
* feat: add exporting android bindings * chore: install cargo-ndk * chore: apply suggestions * chore: apply suggestions from chatGPT, fix cargo ndk build
* feat: add ios app to test-e2e * feat: add android build * chore: update ci * chore: commit gradle wrapper
* fix(docs): header scroll bug * feat: versioned docs * refactor(docs): update docs for reworked repo
*.iml | ||
.gradle | ||
/local.properties | ||
/.idea/caches |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the whole /.idea
can be ignored
e.g. https://github.com/zkmopro/mopro-android/blob/main/Example/.gitignore
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file was auto-generated by android studio, i don't know much about it
additional information |
This PR includes major changes to the structure of mopro. These changes are made to support application defined native logic like witness generation and halo2 proof calculation.
ark-zkey
ark-zkey was moved into it's own repo.
gpu-research
All gpu research logic is removed and contained in a separate branch/repo. In the future specific gpu accelerations can be added as needed.
mopro-ios/mopro-android
These legacy directories were removed.
mopro-cli
The mopro-cli was removed in favor of rust implemented build logic. Additionally the circuit compilation logic (e.g. circom) was removed in favor of having the user supply zkey files themselves.
mopro-core/mopro-ffi
mopro-core and mopro-ffi were merged into just mopro-ffi. Additionally mopro-ffi does not invoke uniffi directly. It's expected that the app will build the uniffi logic itself with it's own rust logic (e.g. for witness gen).
templates
The template system for setting up projects was removed. Instead manual instructions are provided to create a project using
cargo init
.app!
macroThe app macro was added as the main method of implementing uniffi in apps. This macro expects a
zkey_witness_map
function for native witness calculation.test-e2e
The test-e2e folder contains app implementations for android and ios. Both apps are built in ci. iOS has UI tests implemented as well.
library bundles
For iOS and Android the static libraries are built into an
xcframework
andjniLibs
respectively. This means we can build multiple architectures at once so the user doesn't need to re-runcargo build
when they switch from simulator to device. The user only needs to rebuild to switch from debug to release.Depends #189
Closes #9
Closes #11 as unnecessary
Closes #73
Closes #83 (i think, @vivianjeng can you double check this?)
Closes #107
Closes #109
Related #117 (i think we can pull the mopro-app code into test-e2e)
Closes #141
Closes #151
Closes #180
Closes #127