Skip to content

Commit

Permalink
Merge pull request #2734 from o1-labs/volhovm/merge-develop-into-mast…
Browse files Browse the repository at this point in the history
…er-epic-2024-10-25

Merge develop into master (after a while)
  • Loading branch information
volhovm authored Nov 1, 2024
2 parents e3ab2ad + 295c19f commit 99eb8ff
Show file tree
Hide file tree
Showing 81 changed files with 1,675 additions and 504 deletions.
7 changes: 7 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ jobs:
name: Run checks and tests
# We run only one of the matrix options on the toffee `hetzner-1` self-hosted GitHub runner.
# Only in this configuration we enable tests with the code coverage data gathering.
# runs-on: [hetzner-proof-systems-runners-group-1]
runs-on: ${{ matrix.rust_toolchain_version == '1.74' && 'hetzner-1' || 'ubuntu-latest' }}
env:
RUST_TOOLCHAIN_COVERAGE_VERSION: "1.74"
Expand All @@ -77,12 +78,18 @@ jobs:
# It might be related to boxroot dependency, and we would need to bump
# up the ocaml-rs dependency
ocaml_version: ["4.14"]
node: [20]
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive

- name: Set up NodeJS
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node }}

- name: Use shared Rust toolchain setting up steps
uses: ./.github/actions/toolchain-shared
with:
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ idea
*.sage.py
params
_build
build
.merlin
*.swp
*.swo
Expand Down
4 changes: 2 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[submodule "o1vm/ethereum-optimism"]
path = o1vm/ethereum-optimism
url = https://github.com/ethereum-optimism/optimism.git
path = o1vm/ethereum-optimism
url = https://github.com/ethereum-optimism/optimism.git
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ We have a list of easy task to start contributing. [Start over there](https://gi

## Setting up the project

Make sure you have the GNU `make` utility installed since we use it to streamline various tasks.
Windows users may need to use the `WSL` to run `make` commands.
Make sure you have the GNU `make` utility installed since we use it to streamline various tasks.
Windows users may need to use the `WSL` to run `make` commands.
For the complete list of `make` targets, please refer to the [Makefile](Makefile).

After the repository being cloned, run:
Expand Down Expand Up @@ -102,7 +102,7 @@ Note: cargo can automatically fix some lints. To do so, add `--fix` to the `CARG
CARGO_EXTRA_ARGS="--fix" make lint
```

Formatting and lints are enforced by GitHub PR checks, so please be sure to have any errors produced by the above tools fixed before pushing the code to your pull request branch.
Formatting and lints are enforced by GitHub PR checks, so please be sure to have any errors produced by the above tools fixed before pushing the code to your pull request branch.
Please refer to [CI](.github/workflows/ci.yml) workflow to see all PR checks.

## Branching policy
Expand Down
111 changes: 93 additions & 18 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

24 changes: 13 additions & 11 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ members = [
"groupmap",
"hasher",
"kimchi",
"kimchi/snarky-deriver/",
"msm",
"o1vm",
"poseidon",
Expand All @@ -30,9 +29,10 @@ ark-ec = { version = "0.4.2", features = ["parallel"] }
ark-ff = { version = "0.4.2", features = ["parallel", "asm"] }
ark-poly = { version = "0.4.2", features = ["parallel"] }
ark-serialize = "0.4.2"
ark-std = "0.4.0"
bcs = "0.1.3"
ark-std = { version = "0.4.0", features = ["parallel"] }
ark-test-curves = { version = "0.4.2", features = ["parallel", "asm"] }
base64 = "0.21.5"
bcs = "0.1.3"
bitvec = "1.0.0"
blake2 = "0.10.0"
bs58 = "0.5.0"
Expand All @@ -49,7 +49,7 @@ itertools = "0.12.1"
libc = "0.2.62"
libflate = "2"
log = "0.4.20"
num-bigint = { version = "0.4.3", features = ["rand", "serde"] }
num-bigint = { version = "0.4.4", features = ["rand", "serde"] }
num-derive = "0.4"
num-integer = "0.1.45"
num-traits = "0.2"
Expand All @@ -61,15 +61,15 @@ proc-macro2 = "1.0.43"
proptest = "1.0.0"
proptest-derive = "0.4.0"
quote = "1.0.21"
rand = { version = "0.8.0", features = ["std_rng"] }
rand = { version = "0.8.5", features = ["std_rng"] }
rand_chacha = { version = "0.3.0" }
rand_core = { version = "0.6.0" }
rayon = "1"
rand_core = { version = "0.6.3" }
rayon = "1.5.0"
regex = "1.10.2"
rmp-serde = "1.1.1"
rmp-serde = "1.1.2"
secp256k1 = "0.28.2"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0.79"
serde = { version = "1.0.130", features = ["derive", "rc"] }
serde_json = "1.0.113"
serde_with = "3.6.0"
sha2 = "0.10.0"
sha3 = "0.10.8"
Expand All @@ -80,6 +80,8 @@ thiserror = "1.0.30"
tinytemplate = "1.1"
wasm-bindgen = "=0.2.90"


arrabiata = { path = "./arrabiata", version = "0.1.0" }
folding = { path = "./folding", version = "0.1.0" }
groupmap = { path = "./groupmap", version = "0.1.0" }
internal-tracing = { path = "./internal-tracing", version = "0.1.0" }
Expand All @@ -92,9 +94,9 @@ mina-poseidon = { path = "./poseidon", version = "0.1.0" }
mvpoly = { path = "./mvpoly", version = "0.1.0" }
o1-utils = { path = "./utils", version = "0.1.0" }
o1vm = { path = "./o1vm", version = "0.1.0" }
optimism = { path = "./optimism", version = "0.1.0" }
poly-commitment = { path = "./poly-commitment", version = "0.1.0" }
signer = { path = "./signer", version = "0.1.0" }
snarky-deriver = { path = "./kimchi/snarky-deriver", version = "0.1.0" }
turshi = { path = "./turshi", version = "0.1.0" }
utils = { path = "./utils", version = "0.1.0" }

Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,13 +80,13 @@ You can visualize the documentation by opening the file `target/doc/index.html`.

<!-- Please update this section if you add more workflows -->

- [CI](.github/workflows/ci.yml).
- [CI](.github/workflows/ci.yml).
This workflow ensures that the entire project builds correctly, adheres to guidelines, and passes all necessary tests.
- [Nightly tests with the code coverage](.github/workflows/ci-nightly.yml).
- [Nightly tests with the code coverage](.github/workflows/ci-nightly.yml).
This workflow runs all the tests per scheduler or on-demand, generates and attaches the code coverage report to the job's execution results.
- [Benchmarks](.github/workflows/benches.yml).
- [Benchmarks](.github/workflows/benches.yml).
This workflow runs benchmarks when a pull request is labeled with "benchmark." It sets up the Rust and OCaml environments, installs necessary tools, and executes cargo criterion benchmarks on the kimchi crate. The benchmark results are then posted as a comment on the pull request for review.
- [Deploy Specifications & Docs to GitHub Pages](.github/workflows/gh-page.yml).
- [Deploy Specifications & Docs to GitHub Pages](.github/workflows/gh-page.yml).
When CI passes on master, the documentation built from the rust code will be available by this [link](https://o1-labs.github.io/proof-systems/rustdoc) and the book will be available by this [link](https://o1-labs.github.io/proof-systems).

## Nix for Dependencies (WIP)
Expand Down
Loading

0 comments on commit 99eb8ff

Please sign in to comment.