diff --git a/.circleci/config.yml b/.circleci/config.yml index db80a877..3866f8a4 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -13,14 +13,14 @@ jobs: keys: - aqua01-{{ checksum "Cargo.lock" }} - run: | - rustup toolchain install nightly-2020-07-12-x86_64-unknown-linux-gnu - rustup default nightly-2020-07-12-x86_64-unknown-linux-gnu + rustup toolchain install nightly-2021-03-24-x86_64-unknown-linux-gnu + rustup default nightly-2021-03-24-x86_64-unknown-linux-gnu rustup target add wasm32-wasi rustup component add rustfmt rustup component add clippy - cargo install fcli + cargo install --force fcli --git https://github.com/fluencelabs/fce # build a Wasm binary for interpreter (cd interpreter; fce build --features fce) diff --git a/.github/workflows/publish_interpreter_dev.yml b/.github/workflows/publish_interpreter_dev.yml index 1cfacf61..ad6afca7 100644 --- a/.github/workflows/publish_interpreter_dev.yml +++ b/.github/workflows/publish_interpreter_dev.yml @@ -197,7 +197,7 @@ jobs: ### === Rust package release === - name: Install fcli - run: cargo install fcli || true + run: cargo install --force fcli --git https://github.com/fluencelabs/fce - name: Build aquamarine.wasm for node run: fce build -p aquamarine --release --features fce diff --git a/Cargo.lock b/Cargo.lock index c9069ffe..90d54c92 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -40,27 +40,26 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.39" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cddc5f91628367664cc7c69714ff08deee8a3efc54623011c772544d7b2767" +checksum = "28b2cd92db5cbd74e8e5028f7e27dd7aa3090e89e4f2a197cc7c8dfb69c7063b" [[package]] name = "aqua-interpreter-interface" -version = "0.3.1" +version = "0.4.0" +source = "git+https://github.com/fluencelabs/air?branch=bwu#ba3809ae175217ab20cb2763d5bb7612da982906" dependencies = [ - "fluence 0.4.2", - "fluence-it-types", + "fluence", + "fluence-it-types 0.3.0", "serde", ] [[package]] name = "aqua-interpreter-interface" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c49b8a5fe1336a9c6981be09cb13706c7d9083e48588d692120b5080a13278" +version = "0.4.0" dependencies = [ - "fluence 0.2.18", - "fluence-it-types", + "fluence", + "fluence-it-types 0.3.0", "serde", ] @@ -68,7 +67,7 @@ dependencies = [ name = "aqua-test-module" version = "0.1.0" dependencies = [ - "fluence 0.4.2", + "fluence", ] [[package]] @@ -76,7 +75,7 @@ name = "aqua-test-utils" version = "0.1.0" dependencies = [ "aquamarine-vm", - "fluence 0.4.2", + "fluence", "serde_json", ] @@ -84,7 +83,7 @@ dependencies = [ name = "aquamarine" version = "0.8.0" dependencies = [ - "fluence 0.4.2", + "fluence", "interpreter-lib", "log", "serde", @@ -94,12 +93,11 @@ dependencies = [ [[package]] name = "aquamarine-vm" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93ba3f6550b35f2b8aca0abb9de64744c0d50a8bc58ed14509e8456a74a2efa8" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/fce#96c32b64d87fbf63b7910c712ec7cdf21debce13" dependencies = [ - "aqua-interpreter-interface 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "fluence-faas", + "aqua-interpreter-interface 0.4.0 (git+https://github.com/fluencelabs/air?branch=bwu)", + "fluence-faas 0.6.0", "log", "maplit", "parking_lot 0.11.1", @@ -159,11 +157,10 @@ checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" [[package]] name = "bincode" -version = "1.3.1" +version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f30d3a39baa26f9651f17b375061f3233dde33424a8b72b0dbe93a68a0bc896d" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" dependencies = [ - "byteorder", "serde", ] @@ -245,10 +242,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] -name = "cast" -version = "0.2.3" +name = "cargo_toml" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b9434b9a5aa1450faa3f9cb14ea0e8c53bb5d2b3c1bfd1ab4fc03e9f33fbfb0" +checksum = "513d17226888c7b8283ac02a1c1b0d8a9d4cbf6db65dfadb79f598f5d7966fe9" +dependencies = [ + "serde", + "serde_derive", + "toml", +] + +[[package]] +name = "cast" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc38c385bfd7e444464011bb24820f40dd1c76bcdfa1b78611cb7c2e5cafab75" dependencies = [ "rustc_version", ] @@ -271,6 +279,19 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "chrono" +version = "0.4.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73" +dependencies = [ + "libc", + "num-integer", + "num-traits", + "time", + "winapi", +] + [[package]] name = "clap" version = "2.33.3" @@ -420,9 +441,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dca26ee1f8d361640700bde38b2c37d8c22b3ce2d360e1fc1c74ea4b0aa7d775" +checksum = "06ed27e177f16d65f0f0c22a213e17c696ace5dd64b14258b52f9417ccb52db4" dependencies = [ "cfg-if 1.0.0", "crossbeam-utils", @@ -618,10 +639,10 @@ checksum = "c75a27d84a4a5622cc3a30fcd02418cccce10e6964af80fe99564d3d8731ec19" dependencies = [ "anyhow", "boolinator", - "fce-utils", - "fce-wit-generator", - "fce-wit-interfaces", - "fce-wit-parser", + "fce-utils 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", + "fce-wit-generator 0.2.0", + "fce-wit-interfaces 0.1.29", + "fce-wit-parser 0.2.0", "log", "multi-map", "multimap", @@ -630,12 +651,69 @@ dependencies = [ "safe-transmute", "serde", "thiserror", - "wasmer-interface-types-fl", + "wasmer-interface-types-fl 0.17.24", "wasmer-runtime-core-fl", "wasmer-runtime-fl", "wasmer-wasi-fl", ] +[[package]] +name = "fce" +version = "0.4.0" +source = "git+https://github.com/fluencelabs/fce#96c32b64d87fbf63b7910c712ec7cdf21debce13" +dependencies = [ + "anyhow", + "boolinator", + "fce-module-info-parser", + "fce-utils 0.1.29 (git+https://github.com/fluencelabs/fce)", + "fce-wit-generator 0.3.0", + "fce-wit-interfaces 0.2.0", + "fce-wit-parser 0.4.0", + "it-lilo", + "log", + "multimap", + "once_cell", + "parity-wasm", + "paste", + "pwasm-utils", + "semver 0.11.0", + "serde", + "thiserror", + "wasmer-interface-types-fl 0.20.0", + "wasmer-runtime-core-fl", + "wasmer-runtime-fl", + "wasmer-wasi-fl", +] + +[[package]] +name = "fce-module-info-parser" +version = "0.1.0" +source = "git+https://github.com/fluencelabs/fce#96c32b64d87fbf63b7910c712ec7cdf21debce13" +dependencies = [ + "anyhow", + "chrono", + "fluence-sdk-main 0.6.0", + "semver 0.11.0", + "serde", + "thiserror", + "walrus 0.18.0", + "wasmer-runtime-core-fl", +] + +[[package]] +name = "fce-timestamp-macro" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk#e8bc1db0dff8550b97675d4835cf17e0f27848ef" +dependencies = [ + "chrono", + "quote", +] + +[[package]] +name = "fce-utils" +version = "0.1.29" +source = "git+https://github.com/fluencelabs/fce#96c32b64d87fbf63b7910c712ec7cdf21debce13" + [[package]] name = "fce-utils" version = "0.1.29" @@ -648,13 +726,30 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1eca715cf832f99fd59dae4f639e4437e5ac92a4470e0879624049f6cb1a3910" dependencies = [ - "fce-wit-parser", + "fce-wit-parser 0.2.0", "fluence-sdk-wit 0.2.18", "once_cell", "serde", "serde_json", - "walrus", - "wasmer-interface-types-fl", + "walrus 0.17.0", + "wasmer-interface-types-fl 0.17.24", +] + +[[package]] +name = "fce-wit-generator" +version = "0.3.0" +source = "git+https://github.com/fluencelabs/fce#96c32b64d87fbf63b7910c712ec7cdf21debce13" +dependencies = [ + "cargo_toml", + "fce-wit-parser 0.4.0", + "fluence-sdk-wit 0.6.0", + "it-lilo", + "once_cell", + "serde", + "serde_json", + "thiserror", + "walrus 0.18.0", + "wasmer-interface-types-fl 0.20.0", ] [[package]] @@ -664,7 +759,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0c6afb4d6525ec972f27f6d65324efcb8b2aee4e11fdf6afc4c047e91efcb58" dependencies = [ "multimap", - "wasmer-interface-types-fl", + "wasmer-interface-types-fl 0.17.24", +] + +[[package]] +name = "fce-wit-interfaces" +version = "0.2.0" +source = "git+https://github.com/fluencelabs/fce#96c32b64d87fbf63b7910c712ec7cdf21debce13" +dependencies = [ + "multimap", + "wasmer-interface-types-fl 0.20.0", ] [[package]] @@ -674,10 +778,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f59267a5533d352406b7203eee4b9fe918f4671f2f66a990cab9632f528c952" dependencies = [ "anyhow", - "fce-wit-interfaces", + "fce-wit-interfaces 0.1.29", "serde", - "walrus", - "wasmer-interface-types-fl", + "walrus 0.17.0", + "wasmer-interface-types-fl 0.17.24", + "wasmer-runtime-core-fl", +] + +[[package]] +name = "fce-wit-parser" +version = "0.4.0" +source = "git+https://github.com/fluencelabs/fce#96c32b64d87fbf63b7910c712ec7cdf21debce13" +dependencies = [ + "anyhow", + "fce-wit-interfaces 0.2.0", + "nom", + "semver 0.11.0", + "serde", + "thiserror", + "walrus 0.18.0", + "wasmer-interface-types-fl 0.20.0", "wasmer-runtime-core-fl", ] @@ -689,22 +809,13 @@ checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" [[package]] name = "fluence" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27d9a5e4292d7bbd809a0e968e3c3aacac91cbc5acab3e26ee1e1d726f0aab24" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk#e8bc1db0dff8550b97675d4835cf17e0f27848ef" dependencies = [ - "fluence-sdk-macro 0.2.18", - "fluence-sdk-main 0.2.18", -] - -[[package]] -name = "fluence" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31068fe4873478f9c59f01230dc6f23d504d8c11a36d6b6c51693b20c6d2570e" -dependencies = [ - "fluence-sdk-macro 0.4.2", - "fluence-sdk-main 0.4.2", + "fce-timestamp-macro", + "fluence-sdk-macro 0.6.0", + "fluence-sdk-main 0.6.0", + "serde", ] [[package]] @@ -713,7 +824,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f64788737ce00700efe6a1e45f7462d3bdba6765891d76b81c806f250f8062f0" dependencies = [ - "fluence-faas", + "fluence-faas 0.5.2", "log", "maplit", "serde", @@ -730,8 +841,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "00434a1581cfdb781b889f1c11e2b8b6ad160a717021e62054be2e9796c1d13d" dependencies = [ "cmd_lib", - "fce", - "fce-utils", + "fce 0.3.0", + "fce-utils 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "fluence-sdk-main 0.4.2", "itertools 0.9.0", "log", @@ -741,7 +852,31 @@ dependencies = [ "serde_json", "thiserror", "toml", - "wasmer-interface-types-fl", + "wasmer-interface-types-fl 0.17.24", + "wasmer-runtime-core-fl", + "wasmer-runtime-fl", + "wasmer-wasi-fl", +] + +[[package]] +name = "fluence-faas" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/fce#96c32b64d87fbf63b7910c712ec7cdf21debce13" +dependencies = [ + "cmd_lib", + "fce 0.4.0", + "fce-utils 0.1.29 (git+https://github.com/fluencelabs/fce)", + "fluence", + "fluence-sdk-main 0.6.0", + "itertools 0.9.0", + "log", + "safe-transmute", + "serde", + "serde_derive", + "serde_json", + "thiserror", + "toml", + "wasmer-interface-types-fl 0.20.0", "wasmer-runtime-core-fl", "wasmer-runtime-fl", "wasmer-wasi-fl", @@ -760,12 +895,15 @@ dependencies = [ ] [[package]] -name = "fluence-sdk-macro" -version = "0.2.18" +name = "fluence-it-types" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea1a7c75a617f827d1ba9a17b4d84e1565ab239915c63f5a85c41f89a9f1d4ba" +checksum = "5006d09553345421af5dd2334cc945fc34dc2a73d7c1ed842a39a3803699619d" dependencies = [ - "fluence-sdk-wit 0.2.18", + "it-to-bytes", + "nom", + "serde", + "wast", ] [[package]] @@ -778,14 +916,11 @@ dependencies = [ ] [[package]] -name = "fluence-sdk-main" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6edcc983f9517c1b6bf9f851ef27f2894a3159aaa4a2fb6c9deb2ae8ecb603fa" +name = "fluence-sdk-macro" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk#e8bc1db0dff8550b97675d4835cf17e0f27848ef" dependencies = [ - "fluence-sdk-macro 0.2.18", - "log", - "serde", + "fluence-sdk-wit 0.6.0", ] [[package]] @@ -799,6 +934,16 @@ dependencies = [ "serde", ] +[[package]] +name = "fluence-sdk-main" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk#e8bc1db0dff8550b97675d4835cf17e0f27848ef" +dependencies = [ + "fluence-sdk-macro 0.6.0", + "log", + "serde", +] + [[package]] name = "fluence-sdk-wit" version = "0.2.18" @@ -827,6 +972,19 @@ dependencies = [ "uuid", ] +[[package]] +name = "fluence-sdk-wit" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk#e8bc1db0dff8550b97675d4835cf17e0f27848ef" +dependencies = [ + "proc-macro2", + "quote", + "serde", + "serde_json", + "syn", + "uuid", +] + [[package]] name = "fstrings" version = "0.2.3" @@ -903,7 +1061,7 @@ checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8" dependencies = [ "cfg-if 1.0.0", "libc", - "wasi 0.10.2+wasi-snapshot-preview1", + "wasi 0.10.0+wasi-snapshot-preview1", ] [[package]] @@ -1003,13 +1161,13 @@ name = "interpreter-lib" version = "0.8.0" dependencies = [ "air-parser", - "aqua-interpreter-interface 0.3.1", + "aqua-interpreter-interface 0.4.0", "aqua-test-utils", "boolinator", "criterion", "csv", "env_logger", - "fluence 0.4.2", + "fluence", "fluence-app-service", "jsonpath_lib-fl", "log", @@ -1045,6 +1203,18 @@ dependencies = [ "syn", ] +[[package]] +name = "it-lilo" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99ccf40e1e08f6f47ffbafe3cfb2e3adb721ddde80b178240f038d07dc9652fb" +dependencies = [ + "fluence-it-types 0.3.0", + "log", + "paste", + "thiserror", +] + [[package]] name = "it-to-bytes" version = "0.1.0" @@ -1143,9 +1313,9 @@ checksum = "3576a87f2ba00f6f106fdfcd16db1d698d648a26ad8e0573cad8537c3c362d2a" [[package]] name = "lexical-core" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21f866863575d0e1d654fbeeabdc927292fdf862873dc3c96c6f753357e13374" +checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe" dependencies = [ "arrayvec", "bitflags", @@ -1156,9 +1326,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.91" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8916b1f6ca17130ec6568feccee27c156ad12037880833a3b842a823236502e7" +checksum = "9385f66bf6105b241aa65a61cb923ef20efc665cb9f9bb50ac2f0c4b7f378d41" [[package]] name = "lock_api" @@ -1171,9 +1341,9 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd96ffd135b2fd7b973ac026d28085defbe8983df057ced3eb4f2130b0831312" +checksum = "5a3c91c24eae6777794bb1997ad98bbb87daf92890acab859f7eaa4320333176" dependencies = [ "scopeguard", ] @@ -1211,9 +1381,9 @@ dependencies = [ [[package]] name = "memoffset" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc14fc54a812b4472b4113facc3e44d099fbc0ea2ce0551fa5c703f8edfbfd38" +checksum = "f83fb6581e8ed1f85fd45c116db8405483899489e38406156c25eb743554361d" dependencies = [ "autocfg", ] @@ -1263,6 +1433,16 @@ dependencies = [ "version_check", ] +[[package]] +name = "num-integer" +version = "0.1.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" +dependencies = [ + "autocfg", + "num-traits", +] + [[package]] name = "num-traits" version = "0.2.14" @@ -1336,7 +1516,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb" dependencies = [ "instant", - "lock_api 0.4.2", + "lock_api 0.4.3", "parking_lot_core 0.8.3", ] @@ -1363,11 +1543,26 @@ dependencies = [ "cfg-if 1.0.0", "instant", "libc", - "redox_syscall 0.2.5", + "redox_syscall 0.2.6", "smallvec", "winapi", ] +[[package]] +name = "paste" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf547ad0c65e31259204bd90935776d1c693cec2f4ff7abb7a1bbbd40dfe58" + +[[package]] +name = "pest" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53" +dependencies = [ + "ucd-trie", +] + [[package]] name = "petgraph" version = "0.5.1" @@ -1425,7 +1620,7 @@ dependencies = [ name = "polyplets" version = "0.1.0" dependencies = [ - "fluence 0.4.2", + "fluence", "serde", ] @@ -1455,9 +1650,9 @@ checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" [[package]] name = "proc-macro2" -version = "1.0.24" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71" +checksum = "a152013215dca273577e18d2bf00fa862b89b24169fb78c4c95aeb07992c9cec" dependencies = [ "unicode-xid", ] @@ -1532,9 +1727,9 @@ checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" [[package]] name = "redox_syscall" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9" +checksum = "8270314b5ccceb518e7e578952f0b72b88222d02e8f77f5ecf7abbb673539041" dependencies = [ "bitflags", ] @@ -1552,9 +1747,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.4.5" +version = "1.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "957056ecddbeba1b26965114e191d2e8589ce74db242b6ea25fc4062427a5c19" +checksum = "2a26af418b574bd56588335b3a3659a65725d4e636eb1016c2f9e3b38c7cc759" dependencies = [ "aho-corasick", "memchr", @@ -1594,7 +1789,7 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" dependencies = [ - "semver", + "semver 0.9.0", ] [[package]] @@ -1630,7 +1825,16 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" dependencies = [ - "semver-parser", + "semver-parser 0.7.0", +] + +[[package]] +name = "semver" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" +dependencies = [ + "semver-parser 0.10.2", ] [[package]] @@ -1639,6 +1843,15 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" +[[package]] +name = "semver-parser" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" +dependencies = [ + "pest", +] + [[package]] name = "serde" version = "1.0.118" @@ -1738,9 +1951,9 @@ checksum = "1e81da0851ada1f3e9d4312c704aa4f8806f0f9d69faaf8df2f3464b4a9437c2" [[package]] name = "syn" -version = "1.0.64" +version = "1.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fd9d1e9976102a03c542daa2eff1b43f9d72306342f3f8b3ed5fb8908195d6f" +checksum = "b9505f307c872bab8eb46f77ae357c8eba1fdacead58ee5a850116b1d7f82883" dependencies = [ "proc-macro2", "quote", @@ -1804,11 +2017,12 @@ dependencies = [ [[package]] name = "time" -version = "0.1.43" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438" +checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" dependencies = [ "libc", + "wasi 0.10.0+wasi-snapshot-preview1", "winapi", ] @@ -1870,6 +2084,12 @@ dependencies = [ "syn", ] +[[package]] +name = "ucd-trie" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c" + [[package]] name = "unicode-segmentation" version = "1.7.1" @@ -1930,10 +2150,24 @@ dependencies = [ "id-arena", "leb128", "log", - "walrus-macro", + "walrus-macro 0.17.0", "wasmparser 0.55.0", ] +[[package]] +name = "walrus" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d470d0583e65f4cab21a1ff3c1ba3dd23ae49e68f516f0afceaeb001b32af39" +dependencies = [ + "anyhow", + "id-arena", + "leb128", + "log", + "walrus-macro 0.18.0", + "wasmparser 0.59.0", +] + [[package]] name = "walrus-macro" version = "0.17.0" @@ -1946,6 +2180,18 @@ dependencies = [ "syn", ] +[[package]] +name = "walrus-macro" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7c2bb690b44cb1b0fdcc54d4998d21f8bdaf706b93775425e440b174f39ad16" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "wasi" version = "0.9.0+wasi-snapshot-preview1" @@ -1954,9 +2200,9 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" [[package]] name = "wasi" -version = "0.10.2+wasi-snapshot-preview1" +version = "0.10.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" +checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" [[package]] name = "wasm-bindgen" @@ -2070,7 +2316,7 @@ version = "0.17.24" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e29cd6c3670db55e8aa3dfe6fb02c8ec9e7a17789e0204cef0a7cb50e0b8c5cb" dependencies = [ - "fluence-it-types", + "fluence-it-types 0.1.1", "it-to-bytes", "log", "nom", @@ -2080,6 +2326,26 @@ dependencies = [ "wast", ] +[[package]] +name = "wasmer-interface-types-fl" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b47648f6ed55acbd6ddf2a4efed8c2976ce19a55997eb159e511fbd11e366006" +dependencies = [ + "fluence-it-types 0.3.0", + "it-lilo", + "it-to-bytes", + "itertools 0.10.0", + "log", + "nom", + "safe-transmute", + "semver 0.11.0", + "serde", + "serde_json", + "thiserror", + "wast", +] + [[package]] name = "wasmer-runtime-core" version = "0.17.1" @@ -2196,6 +2462,12 @@ version = "0.55.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af931e2e1960c53f4a28b063fec4cacd036f35acbec8ff3a4739125b17382a87" +[[package]] +name = "wasmparser" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a950e6a618f62147fd514ff445b2a0b53120d382751960797f85f058c7eda9b9" + [[package]] name = "wast" version = "8.0.0" diff --git a/crates/interpreter-interface/Cargo.toml b/crates/interpreter-interface/Cargo.toml index 214c8ddc..79894956 100644 --- a/crates/interpreter-interface/Cargo.toml +++ b/crates/interpreter-interface/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "aqua-interpreter-interface" description = "Interface of the Aquamarine interpreter" -version = "0.3.1" +version = "0.4.0" authors = ["Fluence Labs"] edition = "2018" license = "Apache-2.0" @@ -11,7 +11,7 @@ name = "aqua_interpreter_interface" path = "src/lib.rs" [dependencies] -fluence = { version = "0.4.2", features = ["logger"] } -fluence-it-types = "0.1.0" +fluence = { git = "https://github.com/fluencelabs/rust-sdk", features = ["logger"] } +fluence-it-types = "0.3.0" serde = "=1.0.118" diff --git a/crates/interpreter-interface/src/lib.rs b/crates/interpreter-interface/src/lib.rs index 83f603dd..7a728544 100644 --- a/crates/interpreter-interface/src/lib.rs +++ b/crates/interpreter-interface/src/lib.rs @@ -83,6 +83,7 @@ impl InterpreterOutcome { .collect(); array? } + IValue::ByteArray(array) => array, v => return Err(format!("expected Vec for data, got {:?}", v)), }; diff --git a/crates/polyplets/Cargo.toml b/crates/polyplets/Cargo.toml index 2894e360..337496ab 100644 --- a/crates/polyplets/Cargo.toml +++ b/crates/polyplets/Cargo.toml @@ -10,5 +10,6 @@ name = "polyplets" path = "src/lib.rs" [dependencies] -fluence = { version = "0.4.2", features = ["logger"] } +fluence = { git = "https://github.com/fluencelabs/rust-sdk", features = ["logger"] } serde = { version = "=1.0.118", features = ["rc", "derive"] } + diff --git a/crates/test-module/Cargo.toml b/crates/test-module/Cargo.toml index e97a8960..9125b134 100644 --- a/crates/test-module/Cargo.toml +++ b/crates/test-module/Cargo.toml @@ -10,4 +10,4 @@ name = "aqua_test_module" path = "src/main.rs" [dependencies] -fluence = { version = "0.4.2", features = ["logger"] } +fluence = { git = "https://github.com/fluencelabs/rust-sdk", features = ["logger"] } diff --git a/crates/test-utils/Cargo.toml b/crates/test-utils/Cargo.toml index 6a360362..7f5a18d3 100644 --- a/crates/test-utils/Cargo.toml +++ b/crates/test-utils/Cargo.toml @@ -10,6 +10,6 @@ name = "aqua_test_utils" path = "src/lib.rs" [dependencies] -fluence = { version = "0.4.2", features = ["logger"] } -aquamarine-vm = { version = "0.5.1", features = ["raw-aquamarine-vm-api"] } +fluence = { git = "https://github.com/fluencelabs/rust-sdk", features = ["logger"] } +aquamarine-vm = { git = "https://github.com/fluencelabs/fce", features = ["raw-aquamarine-vm-api"] } serde_json = "1.0.56" diff --git a/interpreter-lib/Cargo.toml b/interpreter-lib/Cargo.toml index af52c6fc..8f388c6a 100644 --- a/interpreter-lib/Cargo.toml +++ b/interpreter-lib/Cargo.toml @@ -10,7 +10,7 @@ path = "src/lib.rs" [dependencies] air-parser = { path = "../crates/air-parser" } -fluence = { version = "0.4.2", features = ["logger"] } +fluence = { git = "https://github.com/fluencelabs/rust-sdk", features = ["logger"] } polyplets = { path = "../crates/polyplets" } aqua-interpreter-interface = { path = "../crates/interpreter-interface" } diff --git a/interpreter-lib/benches/chat_benchmark.rs b/interpreter-lib/benches/chat_benchmark.rs index 6b23fcd4..b9ae81df 100644 --- a/interpreter-lib/benches/chat_benchmark.rs +++ b/interpreter-lib/benches/chat_benchmark.rs @@ -43,8 +43,8 @@ fn chat_sent_message_benchmark() -> Result std::result::Result { std::env::var(CURRENT_PEER_ID_ENV_NAME) } @@ -29,10 +32,5 @@ pub(crate) fn get_current_peer_id() -> std::result::Result { #[fce] #[link(wasm_import_module = "host")] extern "C" { - pub(crate) fn call_service( - service_id: String, - fn_name: String, - args: String, - tetraplets: String, - ) -> CallServiceResult; + pub(crate) fn call_service(service_id: &str, fn_name: &str, args: &str, tetraplets: &str) -> CallServiceResult; } diff --git a/interpreter-lib/src/build_targets/wasm_bindgen_target.rs b/interpreter-lib/src/build_targets/wasm_bindgen_target.rs index 455f822d..f28b65b5 100644 --- a/interpreter-lib/src/build_targets/wasm_bindgen_target.rs +++ b/interpreter-lib/src/build_targets/wasm_bindgen_target.rs @@ -18,10 +18,10 @@ use wasm_bindgen::__rt::std::env::VarError; use wasm_bindgen::prelude::*; pub(crate) fn call_service( - service_id: String, - fn_name: String, - args: String, - security_tetraplets: String, + service_id: &str, + fn_name: &str, + args: &str, + security_tetraplets: &str, ) -> super::CallServiceResult { let result = call_service_impl(service_id, fn_name, args, security_tetraplets); log::trace!("result {}", result); @@ -45,5 +45,5 @@ extern "C" { extern "C" { #[allow(unused_attributes)] #[link_name = "call_service"] - fn call_service_impl(service_id: String, fn_name: String, args: String, security_tetraplets: String) -> String; + fn call_service_impl(service_id: &str, fn_name: &str, args: &str, security_tetraplets: &str) -> String; } diff --git a/interpreter-lib/src/execution/air/call/resolved_call.rs b/interpreter-lib/src/execution/air/call/resolved_call.rs index f242ed86..bab6a870 100644 --- a/interpreter-lib/src/execution/air/call/resolved_call.rs +++ b/interpreter-lib/src/execution/air/call/resolved_call.rs @@ -93,11 +93,10 @@ impl<'i> ResolvedCall<'i> { let service_result = unsafe { crate::build_targets::call_service( - // copying here is necessary because of current limitations of rust-sdk - self.triplet.service_id.clone(), - self.triplet.function_name.clone(), - call_arguments, - serialized_tetraplets, + &self.triplet.service_id, + &self.triplet.function_name, + &call_arguments, + &serialized_tetraplets, ) }; diff --git a/interpreter-lib/tests/security_tetraplets.rs b/interpreter-lib/tests/security_tetraplets.rs index 2aa5994a..7058c473 100644 --- a/interpreter-lib/tests/security_tetraplets.rs +++ b/interpreter-lib/tests/security_tetraplets.rs @@ -14,6 +14,7 @@ * limitations under the License. */ +/* use aqua_test_utils::call_vm; use aqua_test_utils::create_aqua_vm; use aqua_test_utils::CallServiceClosure; @@ -311,3 +312,4 @@ fn tetraplet_with_wasm_modules() { assert_eq!(actual_trace[1], expected_state) } + */ diff --git a/interpreter-lib/tests/security_tetraplets/auth_module/Cargo.lock b/interpreter-lib/tests/security_tetraplets/auth_module/Cargo.lock index 1b9637eb..a673e500 100644 --- a/interpreter-lib/tests/security_tetraplets/auth_module/Cargo.lock +++ b/interpreter-lib/tests/security_tetraplets/auth_module/Cargo.lock @@ -1,5 +1,7 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +version = 3 + [[package]] name = "aho-corasick" version = "0.7.15" @@ -11,19 +13,29 @@ dependencies = [ [[package]] name = "air-parser" -version = "0.4.0" +version = "0.7.0" dependencies = [ "codespan", "codespan-reporting", - "itertools 0.10.0", + "itertools", "lalrpop", "lalrpop-util", + "multimap", "regex", "serde", "serde_json", "thiserror", ] +[[package]] +name = "aqua-interpreter-interface" +version = "0.4.0" +dependencies = [ + "fluence", + "fluence-it-types", + "serde", +] + [[package]] name = "array_tool" version = "1.0.3" @@ -108,27 +120,6 @@ dependencies = [ "constant_time_eq", ] -[[package]] -name = "block-buffer" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" -dependencies = [ - "block-padding", - "byte-tools", - "byteorder", - "generic-array", -] - -[[package]] -name = "block-padding" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" -dependencies = [ - "byte-tools", -] - [[package]] name = "boolinator" version = "2.4.0" @@ -141,12 +132,6 @@ version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820" -[[package]] -name = "byte-tools" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" - [[package]] name = "byteorder" version = "1.4.2" @@ -165,6 +150,19 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "chrono" +version = "0.4.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73" +dependencies = [ + "libc", + "num-integer", + "num-traits", + "time", + "winapi", +] + [[package]] name = "codespan" version = "0.9.5" @@ -201,21 +199,18 @@ dependencies = [ "lazy_static", ] +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + [[package]] name = "diff" version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e25ea47919b1560c4e3b7fe0aaab9becf5b84a10325ddf7db0f0ba5e1026499" -[[package]] -name = "digest" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" -dependencies = [ - "generic-array", -] - [[package]] name = "dirs" version = "1.0.5" @@ -227,18 +222,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "docopt" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f525a586d310c87df72ebcd98009e57f1cc030c8c268305287a476beb653969" -dependencies = [ - "lazy_static", - "regex", - "serde", - "strsim", -] - [[package]] name = "either" version = "1.6.1" @@ -268,10 +251,13 @@ dependencies = [ ] [[package]] -name = "fake-simd" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" +name = "fce-timestamp-macro" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" +dependencies = [ + "chrono", + "quote", +] [[package]] name = "fixedbitset" @@ -281,19 +267,19 @@ checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" [[package]] name = "fluence" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27d9a5e4292d7bbd809a0e968e3c3aacac91cbc5acab3e26ee1e1d726f0aab24" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" dependencies = [ + "fce-timestamp-macro", "fluence-sdk-macro", "fluence-sdk-main", + "serde", ] [[package]] name = "fluence-it-types" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b81c770e52b35e2406f8251f6c01b3b882c3eaed3029731d8c19c74dc1b423c" +version = "0.2.0" +source = "git+https://github.com/fluencelabs/interface-types?branch=optimizations#27c13e9547ac55ddbc5e7a4e1ab6f1a1368075ed" dependencies = [ "it-to-bytes", "serde", @@ -301,18 +287,16 @@ dependencies = [ [[package]] name = "fluence-sdk-macro" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea1a7c75a617f827d1ba9a17b4d84e1565ab239915c63f5a85c41f89a9f1d4ba" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" dependencies = [ "fluence-sdk-wit", ] [[package]] name = "fluence-sdk-main" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6edcc983f9517c1b6bf9f851ef27f2894a3159aaa4a2fb6c9deb2ae8ecb603fa" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" dependencies = [ "fluence-sdk-macro", "log", @@ -321,9 +305,8 @@ dependencies = [ [[package]] name = "fluence-sdk-wit" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b75dbdd0275160f3818db3218563d791e6c612b616cd3c5d6e66283f207f648d" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" dependencies = [ "proc-macro2", "quote", @@ -333,15 +316,6 @@ dependencies = [ "uuid", ] -[[package]] -name = "generic-array" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec" -dependencies = [ - "typenum", -] - [[package]] name = "getrandom" version = "0.1.16" @@ -361,7 +335,7 @@ checksum = "4060f4657be78b8e766215b02b18a2e862d83745545de804638e2b545e81aee6" dependencies = [ "cfg-if 1.0.0", "libc", - "wasi 0.10.1+wasi-snapshot-preview1", + "wasi 0.10.0+wasi-snapshot-preview1", ] [[package]] @@ -399,19 +373,26 @@ dependencies = [ ] [[package]] -name = "it-to-bytes" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "729c74bb4236418898a219c6d96f14cba77456dd7c04a2e99e65e9c643709b56" +name = "interpreter-lib" +version = "0.8.0" +dependencies = [ + "air-parser", + "aqua-interpreter-interface", + "boolinator", + "fluence", + "jsonpath_lib-fl", + "log", + "polyplets", + "serde", + "serde_json", + "thiserror", + "wasm-bindgen", +] [[package]] -name = "itertools" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b" -dependencies = [ - "either", -] +name = "it-to-bytes" +version = "0.1.0" +source = "git+https://github.com/fluencelabs/interface-types?branch=optimizations#27c13e9547ac55ddbc5e7a4e1ab6f1a1368075ed" [[package]] name = "itertools" @@ -430,9 +411,9 @@ checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736" [[package]] name = "jsonpath_lib-fl" -version = "0.2.6" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "243653439f0992adf0bbf6ed5b798966fdbacd417b9dcb025b50200ec20c17ff" +checksum = "e81233a3c2e1f4579f1fdb856eeec115dcb23817374268212ebad691bd53e664" dependencies = [ "array_tool", "env_logger", @@ -443,32 +424,32 @@ dependencies = [ [[package]] name = "lalrpop" -version = "0.19.1" -source = "git+https://github.com/fluencelabs/lalrpop?branch=cloneable_parser#486546b479b51ee370beec1d9e663dcbafa7cab1" +version = "0.19.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46962a8c71b91c3524b117dfdd70844d4265a173c4c9109f98171aebdcf1195f" dependencies = [ "ascii-canvas", "atty", "bit-set", "diff", - "docopt", "ena", - "itertools 0.9.0", + "itertools", "lalrpop-util", "petgraph", + "pico-args", "regex", "regex-syntax", - "serde", - "serde_derive", - "sha2", "string_cache", "term", + "tiny-keccak", "unicode-xid", ] [[package]] name = "lalrpop-util" -version = "0.19.1" -source = "git+https://github.com/fluencelabs/lalrpop?branch=cloneable_parser#486546b479b51ee370beec1d9e663dcbafa7cab1" +version = "0.19.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a708007b751af124d09e9c5d97515257902bc6b486a56b40bcafd939e8ff467" dependencies = [ "regex", ] @@ -500,6 +481,15 @@ version = "2.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525" +[[package]] +name = "multimap" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" +dependencies = [ + "serde", +] + [[package]] name = "new_debug_unreachable" version = "1.0.4" @@ -507,10 +497,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" [[package]] -name = "opaque-debug" -version = "0.2.3" +name = "num-integer" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" +checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" +dependencies = [ + "autocfg", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290" +dependencies = [ + "autocfg", +] [[package]] name = "petgraph" @@ -531,6 +534,12 @@ dependencies = [ "siphasher", ] +[[package]] +name = "pico-args" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d70072c20945e1ab871c472a285fc772aefd4f5407723c206242f2c6f94595d6" + [[package]] name = "polyplets" version = "0.1.0" @@ -562,9 +571,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "991431c3519a3f36861882da93630ce66b52918dcf1b8e2fd66b397fc96f28df" +checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" dependencies = [ "proc-macro2", ] @@ -654,50 +663,12 @@ dependencies = [ "serde", ] -[[package]] -name = "sha2" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69" -dependencies = [ - "block-buffer", - "digest", - "fake-simd", - "opaque-debug", -] - [[package]] name = "siphasher" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa8f3741c7372e75519bd9346068370c9cdaabcc1f9599cbcf2a2719352286b7" -[[package]] -name = "interpreter-interface" -version = "0.1.2" -dependencies = [ - "fluence", - "fluence-it-types", - "serde", -] - -[[package]] -name = "interpreter-lib" -version = "0.5.0" -dependencies = [ - "air-parser", - "boolinator", - "fluence", - "jsonpath_lib-fl", - "log", - "polyplets", - "serde", - "serde_json", - "interpreter-interface", - "thiserror", - "wasm-bindgen", -] - [[package]] name = "string_cache" version = "0.8.1" @@ -708,20 +679,13 @@ dependencies = [ "new_debug_unreachable", "phf_shared", "precomputed-hash", - "serde", ] -[[package]] -name = "strsim" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" - [[package]] name = "syn" -version = "1.0.58" +version = "1.0.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc60a3d73ea6594cd712d830cc1f0390fd71542d8c8cd24e70cc54cdfd5e05d5" +checksum = "6498a9efc342871f91cc2d0d694c674368b4ceb40f62b65a7a08c3792935e702" dependencies = [ "proc-macro2", "quote", @@ -778,10 +742,24 @@ dependencies = [ ] [[package]] -name = "typenum" -version = "1.12.0" +name = "time" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33" +checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" +dependencies = [ + "libc", + "wasi 0.10.0+wasi-snapshot-preview1", + "winapi", +] + +[[package]] +name = "tiny-keccak" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" +dependencies = [ + "crunchy", +] [[package]] name = "unicode-width" @@ -812,9 +790,9 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" [[package]] name = "wasi" -version = "0.10.1+wasi-snapshot-preview1" +version = "0.10.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93c6c3420963c5c64bca373b25e77acb562081b9bb4dd5bb864187742186cea9" +checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" [[package]] name = "wasm-bindgen" diff --git a/interpreter-lib/tests/security_tetraplets/auth_module/Cargo.toml b/interpreter-lib/tests/security_tetraplets/auth_module/Cargo.toml index 68d56c50..05c0390d 100644 --- a/interpreter-lib/tests/security_tetraplets/auth_module/Cargo.toml +++ b/interpreter-lib/tests/security_tetraplets/auth_module/Cargo.toml @@ -10,6 +10,6 @@ path = "src/main.rs" [dependencies] interpreter-lib = { path = "../../../../interpreter-lib" } -fluence = { version = "0.4.2", features = ["logger"] } +fluence = { git = "https://github.com/fluencelabs/rust-sdk", features = ["logger"] } [workspace] diff --git a/interpreter-lib/tests/security_tetraplets/log_storage/Cargo.lock b/interpreter-lib/tests/security_tetraplets/log_storage/Cargo.lock index daed4b37..0a0a5723 100644 --- a/interpreter-lib/tests/security_tetraplets/log_storage/Cargo.lock +++ b/interpreter-lib/tests/security_tetraplets/log_storage/Cargo.lock @@ -1,5 +1,7 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +version = 3 + [[package]] name = "aho-corasick" version = "0.7.15" @@ -11,19 +13,29 @@ dependencies = [ [[package]] name = "air-parser" -version = "0.4.0" +version = "0.7.0" dependencies = [ "codespan", "codespan-reporting", - "itertools 0.10.0", + "itertools", "lalrpop", "lalrpop-util", + "multimap", "regex", "serde", "serde_json", "thiserror", ] +[[package]] +name = "aqua-interpreter-interface" +version = "0.4.0" +dependencies = [ + "fluence", + "fluence-it-types", + "serde", +] + [[package]] name = "array_tool" version = "1.0.3" @@ -100,27 +112,6 @@ dependencies = [ "constant_time_eq", ] -[[package]] -name = "block-buffer" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" -dependencies = [ - "block-padding", - "byte-tools", - "byteorder", - "generic-array", -] - -[[package]] -name = "block-padding" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" -dependencies = [ - "byte-tools", -] - [[package]] name = "boolinator" version = "2.4.0" @@ -133,12 +124,6 @@ version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820" -[[package]] -name = "byte-tools" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" - [[package]] name = "byteorder" version = "1.4.2" @@ -157,6 +142,19 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "chrono" +version = "0.4.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73" +dependencies = [ + "libc", + "num-integer", + "num-traits", + "time", + "winapi", +] + [[package]] name = "codespan" version = "0.9.5" @@ -193,21 +191,18 @@ dependencies = [ "lazy_static", ] +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + [[package]] name = "diff" version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e25ea47919b1560c4e3b7fe0aaab9becf5b84a10325ddf7db0f0ba5e1026499" -[[package]] -name = "digest" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" -dependencies = [ - "generic-array", -] - [[package]] name = "dirs" version = "1.0.5" @@ -219,18 +214,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "docopt" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f525a586d310c87df72ebcd98009e57f1cc030c8c268305287a476beb653969" -dependencies = [ - "lazy_static", - "regex", - "serde", - "strsim", -] - [[package]] name = "either" version = "1.6.1" @@ -260,10 +243,13 @@ dependencies = [ ] [[package]] -name = "fake-simd" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" +name = "fce-timestamp-macro" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" +dependencies = [ + "chrono", + "quote", +] [[package]] name = "fixedbitset" @@ -273,19 +259,19 @@ checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" [[package]] name = "fluence" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27d9a5e4292d7bbd809a0e968e3c3aacac91cbc5acab3e26ee1e1d726f0aab24" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" dependencies = [ + "fce-timestamp-macro", "fluence-sdk-macro", "fluence-sdk-main", + "serde", ] [[package]] name = "fluence-it-types" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b81c770e52b35e2406f8251f6c01b3b882c3eaed3029731d8c19c74dc1b423c" +version = "0.2.0" +source = "git+https://github.com/fluencelabs/interface-types?branch=optimizations#27c13e9547ac55ddbc5e7a4e1ab6f1a1368075ed" dependencies = [ "it-to-bytes", "serde", @@ -293,18 +279,16 @@ dependencies = [ [[package]] name = "fluence-sdk-macro" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea1a7c75a617f827d1ba9a17b4d84e1565ab239915c63f5a85c41f89a9f1d4ba" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" dependencies = [ "fluence-sdk-wit", ] [[package]] name = "fluence-sdk-main" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6edcc983f9517c1b6bf9f851ef27f2894a3159aaa4a2fb6c9deb2ae8ecb603fa" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" dependencies = [ "fluence-sdk-macro", "log", @@ -313,9 +297,8 @@ dependencies = [ [[package]] name = "fluence-sdk-wit" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b75dbdd0275160f3818db3218563d791e6c612b616cd3c5d6e66283f207f648d" +version = "0.6.0" +source = "git+https://github.com/fluencelabs/rust-sdk?branch=optimizations#43c3908409b20cd875f2a42ae5563672453129a0" dependencies = [ "proc-macro2", "quote", @@ -325,15 +308,6 @@ dependencies = [ "uuid", ] -[[package]] -name = "generic-array" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec" -dependencies = [ - "typenum", -] - [[package]] name = "getrandom" version = "0.1.16" @@ -353,7 +327,7 @@ checksum = "4060f4657be78b8e766215b02b18a2e862d83745545de804638e2b545e81aee6" dependencies = [ "cfg-if 1.0.0", "libc", - "wasi 0.10.1+wasi-snapshot-preview1", + "wasi 0.10.0+wasi-snapshot-preview1", ] [[package]] @@ -391,19 +365,26 @@ dependencies = [ ] [[package]] -name = "it-to-bytes" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "729c74bb4236418898a219c6d96f14cba77456dd7c04a2e99e65e9c643709b56" +name = "interpreter-lib" +version = "0.8.0" +dependencies = [ + "air-parser", + "aqua-interpreter-interface", + "boolinator", + "fluence", + "jsonpath_lib-fl", + "log", + "polyplets", + "serde", + "serde_json", + "thiserror", + "wasm-bindgen", +] [[package]] -name = "itertools" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b" -dependencies = [ - "either", -] +name = "it-to-bytes" +version = "0.1.0" +source = "git+https://github.com/fluencelabs/interface-types?branch=optimizations#27c13e9547ac55ddbc5e7a4e1ab6f1a1368075ed" [[package]] name = "itertools" @@ -422,9 +403,9 @@ checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736" [[package]] name = "jsonpath_lib-fl" -version = "0.2.6" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "243653439f0992adf0bbf6ed5b798966fdbacd417b9dcb025b50200ec20c17ff" +checksum = "e81233a3c2e1f4579f1fdb856eeec115dcb23817374268212ebad691bd53e664" dependencies = [ "array_tool", "env_logger", @@ -435,32 +416,32 @@ dependencies = [ [[package]] name = "lalrpop" -version = "0.19.1" -source = "git+https://github.com/fluencelabs/lalrpop?branch=cloneable_parser#486546b479b51ee370beec1d9e663dcbafa7cab1" +version = "0.19.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46962a8c71b91c3524b117dfdd70844d4265a173c4c9109f98171aebdcf1195f" dependencies = [ "ascii-canvas", "atty", "bit-set", "diff", - "docopt", "ena", - "itertools 0.9.0", + "itertools", "lalrpop-util", "petgraph", + "pico-args", "regex", "regex-syntax", - "serde", - "serde_derive", - "sha2", "string_cache", "term", + "tiny-keccak", "unicode-xid", ] [[package]] name = "lalrpop-util" -version = "0.19.1" -source = "git+https://github.com/fluencelabs/lalrpop?branch=cloneable_parser#486546b479b51ee370beec1d9e663dcbafa7cab1" +version = "0.19.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a708007b751af124d09e9c5d97515257902bc6b486a56b40bcafd939e8ff467" dependencies = [ "regex", ] @@ -500,6 +481,15 @@ version = "2.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525" +[[package]] +name = "multimap" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" +dependencies = [ + "serde", +] + [[package]] name = "new_debug_unreachable" version = "1.0.4" @@ -507,10 +497,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" [[package]] -name = "opaque-debug" -version = "0.2.3" +name = "num-integer" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" +checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" +dependencies = [ + "autocfg", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290" +dependencies = [ + "autocfg", +] [[package]] name = "petgraph" @@ -531,6 +534,12 @@ dependencies = [ "siphasher", ] +[[package]] +name = "pico-args" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d70072c20945e1ab871c472a285fc772aefd4f5407723c206242f2c6f94595d6" + [[package]] name = "polyplets" version = "0.1.0" @@ -562,9 +571,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "991431c3519a3f36861882da93630ce66b52918dcf1b8e2fd66b397fc96f28df" +checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" dependencies = [ "proc-macro2", ] @@ -654,50 +663,12 @@ dependencies = [ "serde", ] -[[package]] -name = "sha2" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69" -dependencies = [ - "block-buffer", - "digest", - "fake-simd", - "opaque-debug", -] - [[package]] name = "siphasher" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa8f3741c7372e75519bd9346068370c9cdaabcc1f9599cbcf2a2719352286b7" -[[package]] -name = "interpreter-interface" -version = "0.1.2" -dependencies = [ - "fluence", - "fluence-it-types", - "serde", -] - -[[package]] -name = "interpreter-lib" -version = "0.5.0" -dependencies = [ - "air-parser", - "boolinator", - "fluence", - "jsonpath_lib-fl", - "log", - "polyplets", - "serde", - "serde_json", - "interpreter-interface", - "thiserror", - "wasm-bindgen", -] - [[package]] name = "string_cache" version = "0.8.1" @@ -708,20 +679,13 @@ dependencies = [ "new_debug_unreachable", "phf_shared", "precomputed-hash", - "serde", ] -[[package]] -name = "strsim" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" - [[package]] name = "syn" -version = "1.0.58" +version = "1.0.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc60a3d73ea6594cd712d830cc1f0390fd71542d8c8cd24e70cc54cdfd5e05d5" +checksum = "6498a9efc342871f91cc2d0d694c674368b4ceb40f62b65a7a08c3792935e702" dependencies = [ "proc-macro2", "quote", @@ -778,10 +742,24 @@ dependencies = [ ] [[package]] -name = "typenum" -version = "1.12.0" +name = "time" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33" +checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" +dependencies = [ + "libc", + "wasi 0.10.0+wasi-snapshot-preview1", + "winapi", +] + +[[package]] +name = "tiny-keccak" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" +dependencies = [ + "crunchy", +] [[package]] name = "unicode-width" @@ -812,9 +790,9 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" [[package]] name = "wasi" -version = "0.10.1+wasi-snapshot-preview1" +version = "0.10.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93c6c3420963c5c64bca373b25e77acb562081b9bb4dd5bb864187742186cea9" +checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" [[package]] name = "wasm-bindgen" diff --git a/interpreter-lib/tests/security_tetraplets/log_storage/Cargo.toml b/interpreter-lib/tests/security_tetraplets/log_storage/Cargo.toml index e57bf729..7fb3d5cf 100644 --- a/interpreter-lib/tests/security_tetraplets/log_storage/Cargo.toml +++ b/interpreter-lib/tests/security_tetraplets/log_storage/Cargo.toml @@ -10,6 +10,6 @@ path = "src/main.rs" [dependencies] interpreter-lib = { path = "../../../../interpreter-lib" } -fluence = { version = "0.4.2", features = ["logger"] } +fluence = { git = "https://github.com/fluencelabs/rust-sdk", features = ["logger"] } [workspace] diff --git a/interpreter/Cargo.toml b/interpreter/Cargo.toml index 74d170b9..457fcc1d 100644 --- a/interpreter/Cargo.toml +++ b/interpreter/Cargo.toml @@ -16,7 +16,7 @@ path = "src/fce.rs" [dependencies] interpreter-lib = { path = "../interpreter-lib" } -fluence = { version = "0.4.2", features = ["logger"] } +fluence = { git = "https://github.com/fluencelabs/rust-sdk", features = ["logger"] } # Keep 0.2.65 until this is resolved https://github.com/rustwasm/wasm-pack/issues/886 wasm-bindgen = "=0.2.65"