From 3d2854a84f576ae16bead9c4684fa4edb4fee484 Mon Sep 17 00:00:00 2001 From: Geometer1729 <16kuhnb@gmail.com> Date: Thu, 19 Dec 2024 09:23:56 -0500 Subject: [PATCH] add documentation for bindings patch (and break bindings) --- .github/workflows/build-bindings.yml | 2 ++ README-dev.md | 14 ++++++++++++++ src/bindings | 2 +- 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-bindings.yml b/.github/workflows/build-bindings.yml index 5595c7df9..4a42d71a0 100644 --- a/.github/workflows/build-bindings.yml +++ b/.github/workflows/build-bindings.yml @@ -30,6 +30,8 @@ jobs: nix run o1js#update-bindings --max-jobs 4 #fail if this changes any files cd src/bindings + echo If this check fails you can download a patch from the patch-upload job + echo "https://github.com/o1-labs/o1js/blob/main/README-dev.md#build-scripts" git diff --exit-code - name: add build to gc-root if on main if: github.ref == 'refs/heads/main' diff --git a/README-dev.md b/README-dev.md index 8d1ec0fbb..6a7e08107 100644 --- a/README-dev.md +++ b/README-dev.md @@ -86,6 +86,20 @@ In addition to building the OCaml and Rust code, the build script also generates o1js uses these types to ensure that the constants used in the protocol are consistent with the OCaml source files. +### Bindings check in ci + +If the bindings check fails in CI it will upload a patch you can use to update the bindings without having to rebuild locally. +This can also be helpful when the bindings don't build identically, as unfortunately often happens. + +To use this patch: +- Click details on the `Build o1js bindings / build-bindings-ubunutu` job +- Go to the `patch-upload` job and expand the logs for `Upload patch` +- Download the file linked in the last line of the logs ie. +`Artifact download URL: https://github.com/o1-labs/o1js/actions/runs/12401083741/artifacts/2339952965` +- unzip it +- navigate to `src/bindings` +- run `git apply path/to/bindings.patch` + ## Development ### Branching Policy diff --git a/src/bindings b/src/bindings index f157000fa..74ac5f5e0 160000 --- a/src/bindings +++ b/src/bindings @@ -1 +1 @@ -Subproject commit f157000fadd98f3699ed573ce7a3e3be784f6022 +Subproject commit 74ac5f5e055b66a92cf88b6d9970d5103f1dbaaa