diff --git a/sdk/src/browser.ts b/sdk/src/browser.ts index 47313d8a7..f296ff8d0 100644 --- a/sdk/src/browser.ts +++ b/sdk/src/browser.ts @@ -111,6 +111,7 @@ export { VerifyingKey, ViewKey, initThreadPool, + setConsensusVersionTestHeights, verifyFunctionExecution, } from "./wasm.js"; diff --git a/sdk/src/node.ts b/sdk/src/node.ts index fb4b630ce..cb67f4aac 100644 --- a/sdk/src/node.ts +++ b/sdk/src/node.ts @@ -1,2 +1,13 @@ import "./node-polyfill.js"; +import { setConsensusVersionTestHeights } from "./browser.js"; export * from "./browser.js"; + +// Attempt to set the default test heights for the consensus versions from the CONSENSUS_VERSION_HEIGHTS envar when nodeJS loads its wasm module. +function setDefaultTestHeights() { + const consensusVersionHeights = process.env["CONSENSUS_VERSION_HEIGHTS"]; + if (consensusVersionHeights) { + setConsensusVersionTestHeights(consensusVersionHeights) + } +} + +setDefaultTestHeights() diff --git a/sdk/src/wasm.ts b/sdk/src/wasm.ts index edb4a5548..7f777a415 100644 --- a/sdk/src/wasm.ts +++ b/sdk/src/wasm.ts @@ -48,5 +48,6 @@ export { VerifyingKey, ViewKey, initThreadPool, + setConsensusVersionTestHeights, verifyFunctionExecution, } from "@provablehq/wasm/%%NETWORK%%.js"; diff --git a/sdk/tests/wasm.test.ts b/sdk/tests/wasm.test.ts index 4210aeb07..bffaedd6b 100644 --- a/sdk/tests/wasm.test.ts +++ b/sdk/tests/wasm.test.ts @@ -1,5 +1,5 @@ import { expect } from "chai"; -import { Address, AleoNetworkClient, CREDITS_PROGRAM_KEYS, Field, FunctionKeyPair, PrivateKey, ViewKey, Signature, RecordCiphertext, RecordPlaintext, PrivateKeyCiphertext, EncryptionToolkit, Transition, VerifyingKey, AleoKeyProvider} from "../src/node.js"; +import { Address, AleoNetworkClient, CREDITS_PROGRAM_KEYS, Field, FunctionKeyPair, PrivateKey, ViewKey, Signature, RecordCiphertext, RecordPlaintext, PrivateKeyCiphertext, EncryptionToolkit, Transition, VerifyingKey, AleoKeyProvider, setConsensusVersionTestHeights} from "../src/node.js"; import { seed, message, diff --git a/wasm/Cargo.lock b/wasm/Cargo.lock index 8efc512e2..067dba306 100644 --- a/wasm/Cargo.lock +++ b/wasm/Cargo.lock @@ -93,7 +93,6 @@ dependencies = [ "hex", "indexmap", "js-sys", - "log", "rand", "rayon", "reqwest 0.11.27", @@ -2019,9 +2018,8 @@ dependencies = [ [[package]] name = "snarkvm-algorithms" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ff92927dbd501b3975f3a35be4514f154c7bfde0db3dae2c89a4ebd0a6c2a31" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std", "anyhow", @@ -2047,9 +2045,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfedf2ae76fbb1b50228619777e403091d86afa68431977e3254047621d631eb" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-account", "snarkvm-circuit-algorithms", @@ -2062,9 +2059,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-account" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9ada6b1454609b36c1f3b7bc267730e2f0cd0417b0757d8418202b7fa10023" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-network", "snarkvm-circuit-types", @@ -2073,9 +2069,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-algorithms" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9f7d5a0455572948306431129ac86f66e5a826c4d6483003f63c1aa06d66dcb" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-types", "snarkvm-console-algorithms", @@ -2084,9 +2079,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-collections" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "279271263ba9c9643e791fa7b8a445761a02ac56fbb530faac6c7c350b85f10b" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-algorithms", "snarkvm-circuit-types", @@ -2095,9 +2089,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-environment" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1024c91b9bf4cb14268fafd7945b9a68e462132cd5c834bcec8e04def98cd207" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "indexmap", "itertools", @@ -2114,15 +2107,13 @@ dependencies = [ [[package]] name = "snarkvm-circuit-environment-witness" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433b0c2fc969a514ac01f6e05756be6d928142eaae3f0ef6805aa6396159dd83" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" [[package]] name = "snarkvm-circuit-network" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "220bee6126a7290a2697f44ba9dea9d46e586303827306637bd93a63ce505fe9" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-algorithms", "snarkvm-circuit-collections", @@ -2132,9 +2123,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-program" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf624e44496a2db2d28917acf62a3da026298909f60d051aae8ff022cb5e2f30" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-account", "snarkvm-circuit-algorithms", @@ -2147,9 +2137,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3e86fd576228776bcd748aca18926d17851120cfc8746bbf186481b9d7acdab" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-address", @@ -2163,9 +2152,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-address" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fada6e6937fb8ae7d25ad0e84110f89492c30e079d71b25c4b952abb8ba5e0ee" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2177,9 +2165,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-boolean" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b0dfd0497a5b5bede8cabbb79e5b95b9f2c0de6ff896e6f89295509243ef9d0" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-environment", "snarkvm-console-types-boolean", @@ -2187,9 +2174,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-field" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9406f29259e02fc2a110022619cec95f8a7db420542c6daae6b8258ff7501205" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2198,9 +2184,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-group" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9978e0b3331faec1244931a62bae48d79b5b8d2b0d247aa8bc6f945b650d95a" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2211,9 +2196,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-integers" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c68dd8c19158cf4734377ef906c3dab5c756465b05f7d5a838f4ee4adbca549" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2224,9 +2208,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-scalar" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbea45346dc6247f31d294c84ef4595c784d16766939dceb8ddfe3b18ea9feb9" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2236,9 +2219,8 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-string" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9467bba1edd47c201dfd863b8e5e67be6ea3c268bb705f084d98bbf72ff25385" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2249,9 +2231,8 @@ dependencies = [ [[package]] name = "snarkvm-console" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8819ed1e129aa99dc5636017a9397e18d356dfbd13b1141e4275816a0d817968" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console-account", "snarkvm-console-algorithms", @@ -2263,9 +2244,8 @@ dependencies = [ [[package]] name = "snarkvm-console-account" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eaeb0b8c5402d1e9ec0e22466d87e621a72b5c4d191e9e4282a2b4aec21707b" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "bs58", "snarkvm-console-network", @@ -2275,9 +2255,8 @@ dependencies = [ [[package]] name = "snarkvm-console-algorithms" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c09b9d82502ae99c20f335baa431977513e2676092970ff5deb9b8ef997b295" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "blake2s_simd", "smallvec", @@ -2289,9 +2268,8 @@ dependencies = [ [[package]] name = "snarkvm-console-collections" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2e5d68b4a24c928ef579de5d46e882b0cf85d48206e29fd6f0413216204a249" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std", "rayon", @@ -2301,9 +2279,8 @@ dependencies = [ [[package]] name = "snarkvm-console-network" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1220d41581ac064d916e953d78fcca4ce13c28648bef3df71eadd1359d61f594" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "anyhow", "enum-iterator", @@ -2322,9 +2299,8 @@ dependencies = [ [[package]] name = "snarkvm-console-network-environment" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2cff4c435e430b62ee09304da850f26aa9839e5ccf0603618b62c2db745a2db" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "anyhow", "bech32", @@ -2341,9 +2317,8 @@ dependencies = [ [[package]] name = "snarkvm-console-program" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86af968fb1d5777b235aca1a6819a291c2d89cdb971e939f60e0c8bebef169fb" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "enum-iterator", "enum_index", @@ -2362,9 +2337,8 @@ dependencies = [ [[package]] name = "snarkvm-console-types" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdfc69ed664199bf8ec712dbba4174437f5b4e326b673c204d5070afcfd90d58" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-address", @@ -2378,9 +2352,8 @@ dependencies = [ [[package]] name = "snarkvm-console-types-address" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a3c338adfab1d4171c1333ea971cf4506165cf6cd4be5128f044cd50cb926f" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2390,18 +2363,16 @@ dependencies = [ [[package]] name = "snarkvm-console-types-boolean" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea5306794f9ec3e380f8de5d8e3f1674182a6f758892604861b85d7292bd8496" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console-network-environment", ] [[package]] name = "snarkvm-console-types-field" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053872b00170acc87bbd010b6ec953e950cd80fd504aa9e789754358090bf2fc" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2410,9 +2381,8 @@ dependencies = [ [[package]] name = "snarkvm-console-types-group" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ccf05eb7691e7616fd5c8864d0be6b9c92664d9b360b14e41fe5b0c55f4c613" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2422,9 +2392,8 @@ dependencies = [ [[package]] name = "snarkvm-console-types-integers" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bafa8e38818b6886411204f6263c081f9119f0b8173eb1d824ff1fb0446f6f60" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2434,9 +2403,8 @@ dependencies = [ [[package]] name = "snarkvm-console-types-scalar" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14823c16c5a3e5bf70e2346994f43386967d327835b7a622dc2ed086266e790" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2446,9 +2414,8 @@ dependencies = [ [[package]] name = "snarkvm-console-types-string" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c253940e1e7754a14b2cf4e72f56db50b8c34bb28a5b896b76e35f29b250d92a" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2458,9 +2425,8 @@ dependencies = [ [[package]] name = "snarkvm-curves" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9f4cae48b8f560acbf178616b781877b4fe752e44ec6925f53b5d4805d1b6fe" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "rand", "rayon", @@ -2473,9 +2439,8 @@ dependencies = [ [[package]] name = "snarkvm-fields" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b58192c2da361f2b77b088d6da1c0e73d9f29cc6375cb3c03965a055bf0990" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std", "anyhow", @@ -2491,9 +2456,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-authority" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45bda7ffa0ed7626b39b11a992ccfb41a1a977737194699c2804069900f6d28c" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "anyhow", "rand", @@ -2504,9 +2468,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-block" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18338abd3ea59b4447c5e02681dfe2bccc5dbd5b7f62a2be3bfd4be2c6318e18" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "indexmap", "rayon", @@ -2525,9 +2488,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-committee" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54083bd33e3e8401672cab534e484362ff54a947f234e566a64a07e13ee6f818" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "indexmap", "rayon", @@ -2538,9 +2500,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-batch-certificate" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d3bef13150d91e07d57109520b27d99731520386d529500b874e7378ff727d4" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "indexmap", "rayon", @@ -2552,9 +2513,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-batch-header" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70bd7ad7a309542acb0d640fefafb195d80b894c494a2c2c9c103017347ed87f" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "indexmap", "rayon", @@ -2565,9 +2525,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-data" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ae4b94d1c2899fac3ebc620f48c60ecd7ab9e27ced13efe1cf272cf4472a62" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "bytes", "serde_json", @@ -2576,9 +2535,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-subdag" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7123458b2e723fbe1f12f04fc145d77eaebf37dac4e4aff06c45e10b27ab0928" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "indexmap", "rayon", @@ -2592,9 +2550,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-transmission-id" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "834e57f5d2f062aa27ecaca5e2a871e70014069030ec333bb263264899e8ecbd" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "snarkvm-console", "snarkvm-ledger-puzzle", @@ -2602,9 +2559,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-puzzle" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa5d53b35ea5961ad0373a333a4804c0c98717b89788c0e10fb5431c4fb1b2b4" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std", "anyhow", @@ -2622,9 +2578,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-puzzle-epoch" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c64b9c837315b38c736c4c7094e43b91f061404c526c81c7ffda7dcc5a4486" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std", "anyhow", @@ -2645,9 +2600,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-query" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8919e7e17484d214a717960036496459a3c39862cc0a3ec685b808e6f73c2ba" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "anyhow", "async-trait", @@ -2663,9 +2617,8 @@ dependencies = [ [[package]] name = "snarkvm-ledger-store" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4d63c2459f69ed66343c4f8258cb997b29be201b59ae6d32d4bb8f973c9dea8" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std-storage", "anyhow", @@ -2687,9 +2640,8 @@ dependencies = [ [[package]] name = "snarkvm-parameters" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dccae4ccd30d936f69a8470c1c06fdd53172ab25b6f0352c409205e6f0526213" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std", "anyhow", @@ -2713,9 +2665,8 @@ dependencies = [ [[package]] name = "snarkvm-synthesizer" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d3f1b6a76f83dea1d10a36f51022507e38e04ea6420184522a12435e4e5bfb4" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std", "anyhow", @@ -2745,9 +2696,8 @@ dependencies = [ [[package]] name = "snarkvm-synthesizer-process" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "202f8993b1d84e4b435e6f06655e5faf8611318b49a724db3bcc6521061b846c" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std", "colored", @@ -2770,9 +2720,8 @@ dependencies = [ [[package]] name = "snarkvm-synthesizer-program" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf311b775983ceeacd94a20e076b4cf37f2f2233177a5a332e48f8af2fdcf505" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "indexmap", "paste", @@ -2789,9 +2738,8 @@ dependencies = [ [[package]] name = "snarkvm-synthesizer-snark" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8497d8ffd96bab5dc5a4d2c1365598a7390f79ac75dd7961609e7f607b07840" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "bincode", "serde_json", @@ -2803,9 +2751,8 @@ dependencies = [ [[package]] name = "snarkvm-utilities" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7c752d0233bb34b61fefa01d20ed114c559950883d18a68a3023b91dced54a6" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "aleo-std", "anyhow", @@ -2825,9 +2772,8 @@ dependencies = [ [[package]] name = "snarkvm-utilities-derives" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd2e4465f1af843b2f9e4c83c97d48c4a9c9e3522b4020e8dd9ef82d0ce5324a" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "proc-macro2", "quote 1.0.38", @@ -2836,9 +2782,8 @@ dependencies = [ [[package]] name = "snarkvm-wasm" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "262cbd26d4065b6d88d2a6fea7d26b3f400d0b85810f8e8c9975b10086aea127" +version = "4.2.1" +source = "git+https://github.com/ProvableHQ/snarkVM.git?rev=df90b14#df90b1439d1ad56b572c86d81b47768c34f77c18" dependencies = [ "getrandom", "snarkvm-console", diff --git a/wasm/Cargo.toml b/wasm/Cargo.toml index 6025e2efa..0ab8c29b4 100644 --- a/wasm/Cargo.toml +++ b/wasm/Cargo.toml @@ -22,14 +22,17 @@ crate-type = [ "cdylib", "rlib" ] doctest = false [dependencies.snarkvm-algorithms] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" [dependencies.snarkvm-circuit-network] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" features = ["wasm"] [dependencies.snarkvm-console] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" default-features = false features = [ "account", @@ -42,31 +45,38 @@ features = [ ] [dependencies.snarkvm-ledger-block] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" features = ["wasm"] [dependencies.snarkvm-ledger-query] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" features = ["async", "wasm"] [dependencies.snarkvm-ledger-store] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" [dependencies.snarkvm-parameters] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" default-features = false features = ["wasm"] [dependencies.snarkvm-synthesizer-program] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" features = ["wasm"] [dependencies.snarkvm-synthesizer] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" features = ["async", "wasm"] [dependencies.snarkvm-wasm] -version = "4.2.0" +git = "https://github.com/ProvableHQ/snarkVM.git" +rev = "df90b14" features = ["fields", "utilities"] [dependencies.anyhow] diff --git a/wasm/src/utilities/mod.rs b/wasm/src/utilities/mod.rs index 82d1f937a..87a2e8556 100644 --- a/wasm/src/utilities/mod.rs +++ b/wasm/src/utilities/mod.rs @@ -16,11 +16,42 @@ mod array; mod bits; -#[cfg(test)] -pub mod test; pub mod encrypt; pub use encrypt::EncryptionToolkit; pub mod rest; pub use rest::{get, get_network, get_statepaths_for_commitments, latest_block_height, latest_stateroot}; + +#[cfg(test)] +pub mod test; + +/// Set test consensus version heights for testing. +/// +/// @params {string | undefined} heights The block heights at which each consensus version applies. This input should be a simple csv list of block heights and there should be one number for each consensus version. If left undefined, the default test heights will be applied. +/// +/// @example +/// import { setConsensusVersionHeights } from @provablehq/sdk; +/// +/// Set the consensus version heights. +/// setConsensusVersionTestHeights("0,1,2,3,4,5,6,7,8,9"); +#[wasm_bindgen::prelude::wasm_bindgen(js_name = setConsensusVersionTestHeights)] +pub fn set_consensus_version_test_heights_js(heights: Option) -> js_sys::Array { + // Call the underlying Rust function that returns [(ConsensusVersion, u32); N] + let pairs = snarkvm_console::network::set_consensus_version_test_heights(heights); + + // Map to just the heights (u32) and convert to JS array + pairs.iter().map(|(_, height)| wasm_bindgen::JsValue::from_f64(*height as f64)).collect::() +} + +#[cfg(test)] +mod tests { + use super::*; + use wasm_bindgen_test::*; + + #[wasm_bindgen_test] + #[should_panic] + fn test_set_genesis_block_non_zero_fails() { + set_consensus_version_test_heights_js(Some("9,8,7,6,5,4,3,2,1,0".to_string())); + } +}