Skip to content

Commit

Permalink
deps: toolchain alignment Wasmtime 15 (#281)
Browse files Browse the repository at this point in the history
* various

* deps: toolchain alignment for wasmtime 15

* tweak intrinsics instantiation
  • Loading branch information
guybedford authored Dec 1, 2023
1 parent b425ae0 commit b84b71a
Show file tree
Hide file tree
Showing 17 changed files with 121 additions and 148 deletions.
183 changes: 101 additions & 82 deletions Cargo.lock

Large diffs are not rendered by default.

18 changes: 9 additions & 9 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,15 @@ indexmap = "2.0"
js-component-bindgen = { path = "./crates/js-component-bindgen" }
structopt = "0.3.26"
tempdir = "0.3.7"
wasm-encoder = "0.36.2"
wasm-metadata = "0.10.11"
wasmparser = "0.116.1"
wasmprinter = "0.2.72"
wasmtime-environ = { version = "14.0.4", features = ["component-model"] }
wat = "1.0.79"
wit-bindgen = { version = "0.14.0" }
wit-bindgen-core = { version = "0.14.0" }
wit-component = { version = "0.18.0", features = ["dummy-module"] }
wasm-encoder = "0.38.1"
wasm-metadata = "0.10.14"
wasmparser = "0.118.1"
wasmprinter = "0.2.75"
wasmtime-environ = { version = "15.0.0", features = ["component-model"] }
wat = "1.0.82"
wit-bindgen = "0.15.0"
wit-bindgen-core = "0.15.0"
wit-component = { version = "0.19.0", features = ["dummy-module"] }
wit-parser = "0.13.0"
xshell = "0.2.5"

Expand Down
5 changes: 2 additions & 3 deletions crates/js-component-bindgen/src/intrinsics.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
use crate::source::Source;
use crate::transpile_bindgen::InstantiationMode;
use crate::uwrite;
use std::collections::BTreeSet;
use std::fmt::Write;
Expand Down Expand Up @@ -57,7 +56,7 @@ pub enum Intrinsic {
pub fn render_intrinsics(
intrinsics: &mut BTreeSet<Intrinsic>,
no_nodejs_compat: bool,
instantiation: Option<InstantiationMode>,
instantiation: bool,
) -> Source {
let mut output = Source::default();

Expand Down Expand Up @@ -171,7 +170,7 @@ pub fn render_intrinsics(
const i64ToF64 = i => (i64ToF64I[0] = i, i64ToF64F[0]);
"),

Intrinsic::InstantiateCore => if instantiation.is_none() {
Intrinsic::InstantiateCore => if !instantiation {
output.push_str("
const instantiateCore = WebAssembly.instantiate;
")
Expand Down
2 changes: 1 addition & 1 deletion crates/js-component-bindgen/src/transpile_bindgen.rs
Original file line number Diff line number Diff line change
Expand Up @@ -223,7 +223,7 @@ impl<'a> JsBindgen<'a> {
let js_intrinsics = render_intrinsics(
&mut self.all_intrinsics,
self.opts.no_nodejs_compat,
self.opts.instantiation.clone(),
self.opts.instantiation.is_some(),
);

match self.opts.instantiation {
Expand Down
Binary file modified lib/wasi_snapshot_preview1.command.wasm
Binary file not shown.
Binary file modified lib/wasi_snapshot_preview1.reactor.wasm
Binary file not shown.
1 change: 0 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@
"homepage": "https://github.com/bytecodealliance/jco#readme",
"scripts": {
"build": "cargo xtask build workspace",
"build:typescript": "tsc -p tsconfig.json",
"build:types:preview2-shim": "cargo xtask generate wasi-types",
"lint": "eslint -c eslintrc.cjs lib/**/*.js packages/*/lib/**/*.js",
"test": "mocha -u tdd test/test.js --timeout 120000"
Expand Down
2 changes: 1 addition & 1 deletion submodules/wasm-tools
Submodule wasm-tools updated 50 files
+45 −45 Cargo.lock
+13 −13 Cargo.toml
+24 −24 crates/wasm-compose/CONFIG.md
+1 −1 crates/wasm-compose/Cargo.toml
+1 −1 crates/wasm-compose/example/server/config.yml
+1 −1 crates/wasm-compose/src/composer.rs
+2 −3 crates/wasm-compose/src/encoding.rs
+9 −5 crates/wasm-compose/src/graph.rs
+1 −1 crates/wasm-compose/tests/compositions/complex-import/composed.wat
+1 −1 crates/wasm-compose/tests/compositions/conflict-on-import/error.txt
+1 −1 crates/wasm-compose/tests/compositions/connect-resources/config.yml
+1 −1 crates/wasm-compose/tests/compositions/def-mismatch/error.txt
+1 −1 crates/wasm-compose/tests/compositions/export-on-import/config.yml
+1 −1 crates/wasm-compose/tests/compositions/incompatible-explicit-export/config.yml
+1 −1 crates/wasm-compose/tests/compositions/instantiation-cycle/config.yml
+1 −1 crates/wasm-compose/tests/compositions/invalid-instantiation-arg/config.yml
+5 −0 crates/wasm-compose/tests/compositions/locked-dep-invalid-semver/a.wat
+6 −0 crates/wasm-compose/tests/compositions/locked-dep-invalid-semver/config.yml
+5 −0 crates/wasm-compose/tests/compositions/locked-dep-invalid-semver/error.txt
+3 −0 crates/wasm-compose/tests/compositions/locked-dep-invalid-semver/root.wat
+5 −0 crates/wasm-compose/tests/compositions/locked-dep-simple/a.wat
+37 −0 crates/wasm-compose/tests/compositions/locked-dep-simple/composed.wat
+6 −0 crates/wasm-compose/tests/compositions/locked-dep-simple/config.yml
+3 −0 crates/wasm-compose/tests/compositions/locked-dep-simple/root.wat
+1 −1 crates/wasm-compose/tests/compositions/missing-explicit-export/config.yml
+5 −0 crates/wasm-compose/tests/compositions/unlocked-dep-invalid-semver/a.wat
+6 −0 crates/wasm-compose/tests/compositions/unlocked-dep-invalid-semver/config.yml
+5 −0 crates/wasm-compose/tests/compositions/unlocked-dep-invalid-semver/error.txt
+3 −0 crates/wasm-compose/tests/compositions/unlocked-dep-invalid-semver/root.wat
+5 −0 crates/wasm-compose/tests/compositions/unlocked-dep-simple/a.wat
+37 −0 crates/wasm-compose/tests/compositions/unlocked-dep-simple/composed.wat
+6 −0 crates/wasm-compose/tests/compositions/unlocked-dep-simple/config.yml
+3 −0 crates/wasm-compose/tests/compositions/unlocked-dep-simple/root.wat
+1 −1 crates/wasm-encoder/Cargo.toml
+1 −1 crates/wasm-metadata/Cargo.toml
+1 −1 crates/wasm-mutate/Cargo.toml
+1 −1 crates/wasm-shrink/Cargo.toml
+1 −1 crates/wasm-smith/Cargo.toml
+1 −1 crates/wasmparser/Cargo.toml
+1 −1 crates/wasmparser/src/binary_reader.rs
+5 −0 crates/wasmparser/src/validator/operators.rs
+1 −1 crates/wasmprinter/Cargo.toml
+1 −1 crates/wast/Cargo.toml
+1 −1 crates/wat/Cargo.toml
+1 −1 crates/wit-component/Cargo.toml
+2 −2 crates/wit-component/src/metadata.rs
+1 −1 crates/wit-smith/Cargo.toml
+58 −29 src/bin/wasm-tools/addr2line.rs
+2 −2 src/bin/wasm-tools/strip.rs
+3 −0 tests/local/missing-features/reference-types/gc.wast
2 changes: 1 addition & 1 deletion submodules/wasmtime
Submodule wasmtime updated 302 files
2 changes: 1 addition & 1 deletion submodules/wit-bindgen
Submodule wit-bindgen updated 53 files
+10 −10 Cargo.lock
+9 −9 Cargo.toml
+1 −1 crates/c/Cargo.toml
+1 −1 crates/c/src/component_type_object.rs
+87 −72 crates/c/src/lib.rs
+1 −1 crates/core/Cargo.toml
+2 −3 crates/core/src/abi.rs
+30 −196 crates/core/src/lib.rs
+1 −1 crates/core/src/ns.rs
+192 −0 crates/core/src/source.rs
+2 −2 crates/csharp/Cargo.toml
+159 −0 crates/csharp/src/csproj.rs
+2 −0 crates/csharp/src/lib.rs
+8 −105 crates/csharp/tests/codegen.rs
+1 −1 crates/go/Cargo.toml
+692 −0 crates/go/src/bindgen.rs
+172 −0 crates/go/src/imports.rs
+1,254 −0 crates/go/src/interface.rs
+163 −1,821 crates/go/src/lib.rs
+72 −0 crates/go/src/path.rs
+4 −18 crates/go/tests/codegen.rs
+2 −2 crates/guest-rust/Cargo.toml
+1 −1 crates/markdown/Cargo.toml
+1 −1 crates/rust-macro/Cargo.toml
+27 −10 crates/rust-macro/src/lib.rs
+1 −1 crates/rust/Cargo.toml
+2 −4 crates/rust/src/bindgen.rs
+2 −2 crates/rust/src/interface.rs
+3 −12 crates/rust/src/lib.rs
+1 −1 crates/teavm-java/Cargo.toml
+4 −0 crates/test-rust-wasm/Cargo.toml
+2 −1 crates/test-rust-wasm/artifacts/build.rs
+3 −0 crates/test-rust-wasm/src/bin/other-dependencies.rs
+3 −0 crates/test-rust-wasm/src/bin/resource_borrow_simple.rs
+11 −11 tests/runtime/flavorful/wasm.go
+11 −5 tests/runtime/lists.rs
+5 −5 tests/runtime/lists/wasm.rs
+199 −281 tests/runtime/main.rs
+3 −0 tests/runtime/other-dependencies/other/world.wit
+10 −0 tests/runtime/other-dependencies/wasm.rs
+21 −0 tests/runtime/other_dependencies.rs
+7 −7 tests/runtime/records/wasm.go
+25 −0 tests/runtime/resource_borrow_export/wasm.go
+19 −0 tests/runtime/resource_borrow_import/wasm.go
+1 −1 tests/runtime/resource_borrow_in_record/wasm.rs
+47 −0 tests/runtime/resource_borrow_simple.rs
+9 −0 tests/runtime/resource_borrow_simple/wasm.c
+19 −0 tests/runtime/resource_borrow_simple/wasm.go
+15 −0 tests/runtime/resource_borrow_simple/wasm.rs
+9 −0 tests/runtime/resource_borrow_simple/world.wit
+45 −0 tests/runtime/resource_import_and_export/wasm.go
+18 −4 tests/runtime/resources.rs
+75 −0 tests/runtime/resources/wasm.go
4 changes: 2 additions & 2 deletions test/api.js
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ export async function apiTest (fixtures) {
tag: 'component',
val: 4
});
deepStrictEqual(meta[1].producers, [['processed-by', [['wit-component', '0.18.0'], ['dummy-gen', 'test']]], ['language', [['javascript', '']]]]);
deepStrictEqual(meta[1].producers, [['processed-by', [['wit-component', '0.19.0'], ['dummy-gen', 'test']]], ['language', [['javascript', '']]]]);
});

test('Multi-file WIT', async () => {
Expand All @@ -125,7 +125,7 @@ export async function apiTest (fixtures) {
tag: 'component',
val: 1
});
deepStrictEqual(meta[1].producers, [['processed-by', [['wit-component', '0.18.0'], ['dummy-gen', 'test']]], ['language', [['javascript', '']]]]);
deepStrictEqual(meta[1].producers, [['processed-by', [['wit-component', '0.19.0'], ['dummy-gen', 'test']]], ['language', [['javascript', '']]]]);
});

test('Component new adapt', async () => {
Expand Down
2 changes: 1 addition & 1 deletion test/cli.js
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@ export async function cliTest (fixtures) {
const meta = JSON.parse(stdout);
deepStrictEqual(meta[0].metaType, { tag: 'component', val: 4 });
deepStrictEqual(meta[1].producers, [
['processed-by', [['wit-component', '0.18.0'], ['dummy-gen', 'test']]],
['processed-by', [['wit-component', '0.19.0'], ['dummy-gen', 'test']]],
['language', [['javascript', '']]],
]);
}
Expand Down
5 changes: 1 addition & 4 deletions update-wasi.sh
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
#!/bin/bash
set -ex

# update dependencies
git submodule update --init --recursive
git submodule foreach git pull origin main
cd submodules/wasmtime

# build the preview1 component adapter reactor
Expand Down Expand Up @@ -43,5 +40,5 @@ mv ../../test/fixtures/wit/flavorful ../../test/fixtures/wit/deps/

# note the WASI version for reference
cd ../..
cat .git/modules/wasmtime/refs/heads/main | head -c 16 > wasi-version
cat .git/modules/submodules/wasmtime/HEAD | head -c 16 > wasi-version
echo "WASI Updated to $(cat wasi-version)"
2 changes: 1 addition & 1 deletion wasi-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
e105aa385e8bb1b2
6f0da842311d6de7
10 changes: 0 additions & 10 deletions xtask/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,26 +3,17 @@ use structopt::StructOpt;
mod build;
mod generate;
mod test;
mod update;

#[derive(StructOpt)]
enum Opts {
/// Build the project
Build(Build),
/// Run cargo tests
Test,
/// Update the various dependencies in the project
Update(Update),
/// Generate code
Generate(Generate),
}

#[derive(StructOpt)]
enum Update {
/// Update preview 2
Preview2,
}

#[derive(StructOpt)]
enum Build {
/// Build and transpile the `jco` tools
Expand All @@ -48,7 +39,6 @@ fn main() -> anyhow::Result<()> {
Ok(())
}
Opts::Test => test::run(),
Opts::Update(Update::Preview2) => update::preview2::run(),
Opts::Generate(Generate::Tests) => generate::tests::run(),
Opts::Generate(Generate::WasiTypes) => generate::wasi_types::run(),
}
Expand Down
9 changes: 0 additions & 9 deletions xtask/src/update/mod.rs

This file was deleted.

22 changes: 0 additions & 22 deletions xtask/src/update/preview2.rs

This file was deleted.

0 comments on commit b84b71a

Please sign in to comment.