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

[main] Add support to build bindings using mina as a submodule in o1js repo #159

Merged
merged 23 commits into from
Dec 19, 2023

Conversation

MartinMinkov
Copy link
Contributor

@MartinMinkov MartinMinkov commented Sep 28, 2023

Description

Addresses o1-labs/o1js#1096

🔗 Mina: MinaProtocol/mina#14461
🔗 o1js: o1-labs/o1js#1133

This PR makes mina buildable as a submodule of o1js. To do so, the following changes have been made:

  1. Moved kimchi into mina repo.
    • This was done for several reasons. Firstly, we want to replace the snarkyjs submodule in the mina repo with an o1js stub module with the same dependencies as o1js, but just checks compiling. This test ensures o1js can be compiled if anything changes in the mina repo.
    • Secondly, there is a longer-term plan internally to create a o1 crypto repo that will combine the wasm bindings with the ocaml-rust stubs, and it's easier to colocate these libraries in the mina repo as of now.
  2. Changes the dune files in a few places to accommodate the mina submodule in o1js
  3. Changes the build scripts to accommodate the mina submodule in o1js
  4. Removed codeowners entry for kimchi

…vectors.sh and dune files

feat(dump-test-vectors.sh): add debug statements to print current working directory for better troubleshooting
fix(dune): update chmod command to reflect new path to crypto/proof-systems for correct permissions setting
@MartinMinkov MartinMinkov force-pushed the feat/mina-submodule-support branch from 32e03bd to 26723fd Compare October 2, 2023 20:09
Copy link
Collaborator

@mitschabaude mitschabaude left a comment

Choose a reason for hiding this comment

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

Could you update the top-level README file to remove /kimchi?

@MartinMinkov MartinMinkov changed the title Add support to build bindings using mina as a submodule in o1js repo [main] Add support to build bindings using mina as a submodule in o1js repo Dec 13, 2023
Copy link
Collaborator

@mitschabaude mitschabaude left a comment

Choose a reason for hiding this comment

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

Awesome!

@@ -9,7 +9,6 @@ The repo is included as a git submodule in the [o1js repo](https://github.com/o1
- `/compiled` - compiled JS and Wasm artifacts produced by `js_of_ocaml` and `wasm-bindgen` from Rust and OCaml source code. We keep these artifacts in the source tree so that developing on o1js can be done with standard JS tooling and doesn't require setting up the full OCaml/Rust build pipeline.
Copy link
Member

Choose a reason for hiding this comment

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

I think the instructions in the README has to be changed.

Copy link
Member

@dannywillems dannywillems left a comment

Choose a reason for hiding this comment

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

I link this follow-up issue: MinaProtocol/mina#14741.

@MartinMinkov MartinMinkov merged commit 8160055 into main Dec 19, 2023
1 check passed
@MartinMinkov MartinMinkov deleted the feat/mina-submodule-support branch December 19, 2023 16:57
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.

3 participants