diff --git a/scripts/tezos-docker-manager.sh b/scripts/tezos-docker-manager.sh index d73a9b8a833788af15920fe2106ffc9ea59eaefc..beb5fbcc9e9c0eddfcc67a6b9fd9b3f0d7def111 100755 --- a/scripts/tezos-docker-manager.sh +++ b/scripts/tezos-docker-manager.sh @@ -704,21 +704,21 @@ if [ "$#" -eq 0 ] ; then usage ; exit 1; else shift ; fi case $(basename "$0") in granadanet.sh) docker_base_dir="$HOME/.tezos-granadanet" - docker_image=tezos/tezos:master + docker_image=tezos/tezos:v11.0-rc1 docker_compose_base_name=granadanet default_port=9732 network=granadanet ;; hangzhounet.sh) docker_base_dir="$HOME/.tezos-hangzhounet" - docker_image=tezos/tezos:master + docker_image=tezos/tezos:v11.0-rc1 docker_compose_base_name=hangzhounet default_port=9732 network=hangzhounet ;; *) docker_base_dir="$HOME/.tezos-mainnet" - docker_image=tezos/tezos:master + docker_image=tezos/tezos:v11.0-rc1 docker_compose_base_name="mainnet" default_port=9732 network=mainnet diff --git a/src/lib_context/tezos-context.opam b/src/lib_context/tezos-context.opam index c86f4612b95f4a2da792e92ea755db104fa61f42..af8f55a88840118d029399d33052a613fccf6b15 100644 --- a/src/lib_context/tezos-context.opam +++ b/src/lib_context/tezos-context.opam @@ -8,8 +8,8 @@ license: "MIT" depends: [ "dune" { >= "2.0" } "tezos-base" - "irmin" { >= "2.7.2" } - "irmin-pack" { >= "2.7.2" } + "irmin" { >= "2.7.2" & < "2.8.0" } + "irmin-pack" { >= "2.7.2" & < "2.8.0" } "digestif" {>= "0.7.3"} "tezos-shell-services" "tezos-stdlib-unix" diff --git a/src/lib_protocol_environment/tezos-protocol-environment-structs.opam b/src/lib_protocol_environment/tezos-protocol-environment-structs.opam index 0323b2d0420bcf4dd3f4db246c0f7480ec2e9e07..c863487ee5cdd8b09b870c73fa6a3985d80794eb 100644 --- a/src/lib_protocol_environment/tezos-protocol-environment-structs.opam +++ b/src/lib_protocol_environment/tezos-protocol-environment-structs.opam @@ -8,6 +8,7 @@ license: "MIT" depends: [ "dune" { >= "2.0" } "tezos-stdlib" + "bls12-381-legacy" "tezos-crypto" "tezos-protocol-environment-packer" "data-encoding" { >= "0.4" & < "0.5" } diff --git a/src/lib_sapling/core.ml b/src/lib_sapling/core.ml index b13df11a0aa9894014be1606bbc6aa4565c762b6..279e31b156c9d377ca9260f29add4f8125c83af4 100644 --- a/src/lib_sapling/core.ml +++ b/src/lib_sapling/core.ml @@ -616,7 +616,7 @@ module Raw = struct let merkle_hash = R.merkle_hash - let uncommitted_hashes = + let uncommitted_hashes () = let max_height = 32 in let res = Array.make (max_height + 1) R.tree_uncommitted in for height = 0 to max_height - 1 do @@ -625,7 +625,7 @@ module Raw = struct done ; res - let uncommitted ~height = uncommitted_hashes.(height) + let uncommitted ~height = (uncommitted_hashes ()).(height) let of_bytes_exn = R.to_hash diff --git a/src/lib_stdlib/tezos-stdlib.opam b/src/lib_stdlib/tezos-stdlib.opam index 5a6df2ab117352eb58c2a66d87ba33007e5a11fb..e45289aa9aa1ba16807990b381ad29214ac965c7 100644 --- a/src/lib_stdlib/tezos-stdlib.opam +++ b/src/lib_stdlib/tezos-stdlib.opam @@ -7,7 +7,7 @@ dev-repo: "git+https://gitlab.com/tezos/tezos.git" license: "MIT" depends: [ "dune" { >= "2.0" } - "ppx_inline_test" {with-test} + "ppx_inline_test" "hex" "zarith" { < "1.12" } "lwt" { >= "5.4.0" } diff --git a/src/lib_stdlib_unix/dune b/src/lib_stdlib_unix/dune index c904a543be9adba28c81ca08a5c008f5b8608627..bac354152793659e062883297d57fac29f357cd5 100644 --- a/src/lib_stdlib_unix/dune +++ b/src/lib_stdlib_unix/dune @@ -17,6 +17,7 @@ re ptime ptime.clock.os + fmt mtime mtime.clock.os lwt_log)) diff --git a/src/lib_stdlib_unix/tezos-stdlib-unix.opam b/src/lib_stdlib_unix/tezos-stdlib-unix.opam index 6da3c048608b050ebb743ea244e8a44ffdf52891..18a9ec27d2b3c3f25bd4e1fe5b548aa1dfdd712a 100644 --- a/src/lib_stdlib_unix/tezos-stdlib-unix.opam +++ b/src/lib_stdlib_unix/tezos-stdlib-unix.opam @@ -15,6 +15,7 @@ depends: [ "tezos-stdlib" "re" { >= "1.7.2" } "lwt" + "fmt" "ptime" { >= "0.8.4" } "mtime" { >= "1.0.0" } "conf-libev" diff --git a/src/lib_version/version.ml b/src/lib_version/version.ml index 71b69bc326a1c5a851a9013363cca0df6e40c19f..3789f8a9fbbf993a971a5924f3d1ea67b4be36d7 100644 --- a/src/lib_version/version.ml +++ b/src/lib_version/version.ml @@ -39,6 +39,6 @@ let to_string {major; minor; additional_info} = string_of_int major ^ "." ^ string_of_int minor ^ string_of_additional_info additional_info -let current = {major = 11; minor = 0; additional_info = Dev} +let current = {major = 11; minor = 0; additional_info = RC 1} let current_string = to_string current diff --git a/src/proto_011_PtHangzH/lib_protocol/sapling_storage.ml b/src/proto_011_PtHangzH/lib_protocol/sapling_storage.ml index 167f75f1f913b2468af80c9c6385b832b46e7375..be4bccfa3d9f31e7b9446555fa19267b40a931d5 100644 --- a/src/proto_011_PtHangzH/lib_protocol/sapling_storage.ml +++ b/src/proto_011_PtHangzH/lib_protocol/sapling_storage.ml @@ -26,7 +26,7 @@ module type COMMITMENTS = sig val init : Raw_context.t -> Storage.Sapling.id -> Raw_context.t Lwt.t - val default_root : Sapling.Hash.t + val default_root : unit -> Sapling.Hash.t val get_root : Raw_context.t -> @@ -113,7 +113,15 @@ module Commitments : COMMITMENTS = struct let assert_pos pos height = assert (Compare.Int64.(pos >= 0L && pos <= pow2 height)) - let default_root = H.uncommitted ~height:max_height + let default_root_ = ref None + + let default_root () = + match ! default_root_ with + | None -> + let default_root = H.uncommitted ~height:max_height in + default_root_ := Some default_root ; + default_root + | Some default_root -> default_root let init = Storage.Sapling.commitments_init @@ -309,7 +317,7 @@ module Roots = struct let[@coq_struct "pos"] rec aux ctx pos = if Compare.Int32.(pos < 0l) then return ctx else - Storage.Sapling.Roots.init (ctx, id) pos Commitments.default_root + Storage.Sapling.Roots.init (ctx, id) pos (Commitments.default_root ()) >>=? fun ctx -> aux ctx (Int32.pred pos) in aux ctx (Int32.pred size) >>=? fun ctx -> @@ -446,7 +454,7 @@ let root_mem ctx {id; _} tested_root = | None -> return Compare.Int.( - Sapling.Hash.compare tested_root Commitments.default_root = 0) + Sapling.Hash.compare tested_root (Commitments.default_root ()) = 0) (* to avoid a double spend we need to check the disk AND the diff *) let nullifiers_mem ctx {id; diff; _} nf =