Extract execution engines definitions into their own crates (#4489)

* Clean imports in wasmi_execution

* Replace `interpret_runtime_api_result` with `pointer_and_len_from_u64`.

* Extract sc-executor-common crate

* Extract `sc-executor-wasmi` into its own crate

* Extract `sc-executor-wasmtime` into its own crate.

* Add missing headers.

* Clean and docs

* Docs for sc-executor-wasmi

* Expand a comment about sandboxing

* Fix assert_matches

* Rename (un)pack_ptr_and_len and move them into util module

* Remove wasmtime errors in sc-executor-common
This commit is contained in:
Sergei Pepyakin
2019-12-24 13:17:41 +01:00
committed by GitHub
parent b214b3f3e9
commit 1782fbbbba
25 changed files with 326 additions and 161 deletions
+53 -5
View File
@@ -5275,11 +5275,6 @@ name = "sc-executor"
version = "2.0.0"
dependencies = [
"assert_matches 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-frontend 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-native 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
"hex-literal 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -5288,6 +5283,9 @@ dependencies = [
"parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"parity-wasm 0.41.0 (registry+https://github.com/rust-lang/crates.io-index)",
"parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
"sc-executor-common 2.0.0",
"sc-executor-wasmi 2.0.0",
"sc-executor-wasmtime 2.0.0",
"sc-runtime-test 2.0.0",
"sp-core 2.0.0",
"sp-externalities 2.0.0",
@@ -5303,6 +5301,56 @@ dependencies = [
"test-case 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"wabt 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
"wasmi 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "sc-executor-common"
version = "2.0.0"
dependencies = [
"derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"sp-core 2.0.0",
"sp-runtime-interface 2.0.0",
"sp-serializer 2.0.0",
"sp-wasm-interface 2.0.0",
"wasmi 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "sc-executor-wasmi"
version = "2.0.0"
dependencies = [
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"parity-wasm 0.41.0 (registry+https://github.com/rust-lang/crates.io-index)",
"sc-executor-common 2.0.0",
"sp-core 2.0.0",
"sp-externalities 2.0.0",
"sp-runtime-interface 2.0.0",
"sp-wasm-interface 2.0.0",
"wasmi 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "sc-executor-wasmtime"
version = "2.0.0"
dependencies = [
"assert_matches 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-frontend 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-native 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-wasm 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
"parity-scale-codec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"parity-wasm 0.41.0 (registry+https://github.com/rust-lang/crates.io-index)",
"sc-executor-common 2.0.0",
"sp-core 2.0.0",
"sp-externalities 2.0.0",
"sp-runtime-interface 2.0.0",
"sp-wasm-interface 2.0.0",
"wasmi 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
"wasmtime-environ 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
"wasmtime-jit 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
"wasmtime-runtime 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",