|
Revision tags: dev, v36.0.9, v44.0.1, v43.0.2, v36.0.8, v24.0.8, v44.0.0, v43.0.1, v42.0.2, v36.0.7, v24.0.7, v43.0.0, v42.0.1, v41.0.4, v42.0.0, v40.0.4, v36.0.6, v24.0.6, v41.0.3, v41.0.2, v41.0.1, v36.0.5, v40.0.3, v41.0.0, v36.0.4, v39.0.2, v40.0.2, v40.0.1, v40.0.0, v39.0.1, v39.0.0, v38.0.4, v37.0.3, v36.0.3, v24.0.5, v38.0.3, v38.0.2, v38.0.1, v37.0.2, v37.0.1, v37.0.0 |
|
| #
38b408c3 |
| 10-Sep-2025 |
Alex Crichton <[email protected]> |
Run `*.wast` tests from component-model repo (#11677)
* Run `*.wast` tests from component-model repo
This adds a new submodule like WebAssembly/testsuite for the component-model spec tests and runs
Run `*.wast` tests from component-model repo (#11677)
* Run `*.wast` tests from component-model repo
This adds a new submodule like WebAssembly/testsuite for the component-model spec tests and runs the `*.wast` tests on all changes. There are two currently failing tests which are relegated to #11675 and #11676 for now.
* Update submodule to a fixed test
* Remove now-duplicate tests
* Disable component-model-async with Winch
show more ...
|
|
Revision tags: v36.0.2, v36.0.1, v36.0.0, v35.0.0, v24.0.4, v33.0.2, v34.0.2, v34.0.1, v33.0.1, v24.0.3, v32.0.1, v34.0.0, v33.0.0, v32.0.0, v31.0.0, v30.0.2, v30.0.1, v30.0.0, v29.0.1, v29.0.0, v28.0.1, v28.0.0, v27.0.0, v26.0.1, v25.0.3, v24.0.2, v26.0.0, v21.0.2, v22.0.1, v23.0.3, v25.0.2, v24.0.1, v25.0.1, v25.0.0, v24.0.0, v23.0.2, v23.0.1, v23.0.0, v22.0.0, v21.0.1, v21.0.0, v20.0.2, v20.0.1 |
|
| #
71d576e3 |
| 02-May-2024 |
Andrew Brown <[email protected]> |
wasi-nn: remove Git submodule (#8519)
* wasi-nn: remove Git submodule
To more closely align with the conventions in the `wasmtime-wasi` and `wasmtime-wasi-http` crates, this change removes the Git
wasi-nn: remove Git submodule (#8519)
* wasi-nn: remove Git submodule
To more closely align with the conventions in the `wasmtime-wasi` and `wasmtime-wasi-http` crates, this change removes the Git submodule that previously provided the WIT and WITX files for `wasmtime-wasi-nn`. Like those other crates, the syncing of wasi-nn WIT and WITX files will happen manually for the time being. This is the first PR towards upgrading the wasi-nn implementation to match recent spec changes and better preview2-ABI compatibility.
prtest:full
* ci: auto-vendor the wasi-nn WIT files
show more ...
|
|
Revision tags: v20.0.0, v17.0.3, v19.0.2, v18.0.4, v19.0.1, v19.0.0 |
|
| #
8f03b22e |
| 18-Mar-2024 |
Alex Crichton <[email protected]> |
Remove wasm-c-api submodule (#8170)
* Remove wasm-c-api submodule
This submodule hasn't been updated in ~3 years at this point and we additionally don't need most of the submodule. Instead add a sc
Remove wasm-c-api submodule (#8170)
* Remove wasm-c-api submodule
This submodule hasn't been updated in ~3 years at this point and we additionally don't need most of the submodule. Instead add a script to copy the files we need and verify in CI that the files are up-to-date.
This also makes using the C API a bit nicer where you don't have to have two `include` directories with a Wasmtime source tree, just one suffices.
* Don't format wasm.h{,h} vendored files
show more ...
|
|
Revision tags: v18.0.3, v18.0.2, v17.0.2 |
|
| #
51ed1350 |
| 22-Feb-2024 |
Alex Crichton <[email protected]> |
Remove the `WASI` submodule (#7984)
* Remove the `WASI` submodule
Historically the `WASI` submodule in this repository was used to pull the sources of the `*.witx` files for preview1. This has neve
Remove the `WASI` submodule (#7984)
* Remove the `WASI` submodule
Historically the `WASI` submodule in this repository was used to pull the sources of the `*.witx` files for preview1. This has never been used by the `wasmtime-wasi` crate (which has its own copy in the `crates/wasi/witx` folder) and was only ever used by `wasi-common`. This submodule also served as a location for the `witx` crate itself.
Neither of these are really needed any more as the `*.witx` files are unlikely to ever really change again. This commit removes the submodule entirely, as well as the `path` dependency on `witx`, and copies the `*.witx` files in the same manner as the `wasmtime-wasi` crate.
* Updated vet entries for witx
* Remove witx special cases in publish script
* Change how the wasi-common package is built
show more ...
|
|
Revision tags: v18.0.1, v18.0.0, v17.0.1, v17.0.0, v16.0.0, v15.0.1, v15.0.0, v14.0.4, v14.0.3, v14.0.2, v13.0.1, v14.0.1, v14.0.0, minimum-viable-wasi-proxy-serve, v13.0.0, v12.0.2, v11.0.2, v10.0.2 |
|
| #
6875e268 |
| 12-Sep-2023 |
Alex Crichton <[email protected]> |
Remove submodule re-added by accident (#7008)
This was removed in #6195 but re-added in #6877, I believe by accident, so this re-deletes it. I've also edited `.gitmodules` a bit while I was here to
Remove submodule re-added by accident (#7008)
This was removed in #6195 but re-added in #6877, I believe by accident, so this re-deletes it. I've also edited `.gitmodules` a bit while I was here to remove it and additionally keep other entries up-to-date with matching paths.
show more ...
|
|
Revision tags: v12.0.1, v12.0.0 |
|
| #
2897e409 |
| 08-Aug-2023 |
Alex Crichton <[email protected]> |
Remove the implementation of wasi-crypto (#6816)
* Remove the implementation of wasi-crypto
This commit is a follow-up to the discussion on #6732. This removes Wasmtime's implementation of the wasi
Remove the implementation of wasi-crypto (#6816)
* Remove the implementation of wasi-crypto
This commit is a follow-up to the discussion on #6732. This removes Wasmtime's implementation of the wasi-crypto proposal from in-tree along with its various support in CI, configuration, etc. See the discussion on #6732 for the full information but at a high level the main reasons for removing the implementation at this time are:
* There is not currently an active maintainer of the Wasmtime integration here for wasi-crypto. * There are known issues with the code quality of the implementation such as transmutes of guest-owned memory to `&'static mut [u8]` and known unsafety in dependencies. * The size and breadth of the dependency tree brings maintenance burden and overhead to managing Wasmtime's dependency tree.
As mentioned on the issue this commit does not mean that Wasmtime doesn't want to implement the wasi-crypto proposal. Instead the "tier 3" status of wasi-crypto needs to be re-attained to be included back in-tree, which would mean resolving the above issues.
Note that this commit is intentionally just after the 13.0.0 branch point which means that this is slated for Wasmtime 14 to be released on September 20.
* Remove some cfgs
* Remove wasi-crypto CI
show more ...
|
|
Revision tags: v11.0.1, v11.0.0, v10.0.1, v10.0.0, v9.0.4, v9.0.3, v9.0.2, v9.0.1, v9.0.0 |
|
| #
1a6b3ec1 |
| 04-May-2023 |
Andrew Brown <[email protected]> |
test: add cases from `wasi-testsuite` (#6341)
* wasi: add the `wasi-testsuite` tests for wasi-common
As described [here], this uses the `prod/testsuite-base` branch in which the tests are built as
test: add cases from `wasi-testsuite` (#6341)
* wasi: add the `wasi-testsuite` tests for wasi-common
As described [here], this uses the `prod/testsuite-base` branch in which the tests are built as `.wasm` files.
[here]: https://github.com/WebAssembly/wasi-testsuite/#getting-started
* chore: update `walkdir` everywhere to its latest version
This is done in order to use it for `wasi_testsuite` testing.
* vet: extend `walkdir`'s exemption
* test: factor out `get_wasmtime_command`
This will be helpful for `wasi_testsuite` testing.
* test: use all `wasi-testsuite` test cases
This change alters the `wasi_testsuite` test to run all of the available test cases in [wasi-testsuite]. This involved making the test runner a bit more robust to the various shapes of JSON specifications in that project. Unfortunately, the `wasi_testsuite` test fails some of the cases, so I added a `WASI_COMMON_IGNORE_LIST` to avoid these temporarily. (This may remind some of the Wasm testsuite ignore lists in Cranelift; those relied on `build.rs` to create a `#[test]` for each test case, which I felt is not yet needed here).
It's unclear to me why the tests are failing. It could be because: - wasi-common has a bug - wasi-testsuite overspecifies (or incorrectly specifies) a test - the test runner incorrectly configures Wasmtime's CLI execution.
But this change makes it easier to resolve this. Remove the file from `WASI_COMMON_IGNORE_LIST` and run `cargo test wasi_testsuite -- --nocapture`. The printed output will show the expected result, the actual result, and a command to replicate the failure from the command line.
[wasi-testsuite]: https://github.com/WebAssembly/wasi-testsuite
* review: add "shrinking" comment
show more ...
|
|
Revision tags: v6.0.2, v7.0.1, v8.0.1, v8.0.0 |
|
| #
2d34dbef |
| 05-Apr-2023 |
Brendan Burns <[email protected]> |
Begin implementation of wasi-http (#5929)
* Integrate experimental HTTP into wasmtime.
* Reset Cargo.lock
* Switch to bail!, plumb options partially.
* Implement timeouts.
* Remove generated fil
Begin implementation of wasi-http (#5929)
* Integrate experimental HTTP into wasmtime.
* Reset Cargo.lock
* Switch to bail!, plumb options partially.
* Implement timeouts.
* Remove generated files & wasm, add Makefile
* Remove generated code textfile
* Update crates/wasi-http/Cargo.toml
Co-authored-by: Eduardo de Moura Rodrigues <[email protected]>
* Update crates/wasi-http/Cargo.toml
Co-authored-by: Eduardo de Moura Rodrigues <[email protected]>
* Extract streams from request/response.
* Fix read for len < buffer length.
* Formatting.
* types impl: swap todos for traps
* streams_impl: idioms, and swap todos for traps
* component impl: idioms, swap all unwraps for traps, swap all todos for traps
* http impl: idiom
* Remove an unnecessary mut.
* Remove an unsupported function.
* Switch to the tokio runtime for the HTTP request.
* Add a rust example.
* Update to latest wit definition
* Remove example code.
* wip: start writing a http test...
* finish writing the outbound request example
havent executed it yet
* better debug output
* wasi-http: some stubs required for rust rewrite of the example
* add wasi_http tests to test-programs
* CI: run the http tests
* Fix some warnings.
* bump new deps to latest releases (#3)
* Add tests for wasi-http to test-programs (#2)
* wip: start writing a http test...
* finish writing the outbound request example
havent executed it yet
* better debug output
* wasi-http: some stubs required for rust rewrite of the example
* add wasi_http tests to test-programs
* CI: run the http tests
* bump new deps to latest releases
h2 0.3.16
http 0.2.9
mio 0.8.6
openssl 0.10.48
openssl-sys 0.9.83
tokio 1.26.0
---------
Co-authored-by: Brendan Burns <[email protected]>
* Update crates/test-programs/tests/http_tests/runtime/wasi_http_tests.rs
* Update crates/test-programs/tests/http_tests/runtime/wasi_http_tests.rs
* Update crates/test-programs/tests/http_tests/runtime/wasi_http_tests.rs
* wasi-http: fix cargo.toml file and publish script to work together (#4)
unfortunately, the publish script doesn't use a proper toml parser (in
order to not have any dependencies), so the whitespace has to be the
trivial expected case.
then, add wasi-http to the list of crates to publish.
* Update crates/test-programs/build.rs
* Switch to rustls
* Cleanups.
* Merge switch to rustls.
* Formatting
* Remove libssl install
* Fix tests.
* Rename wasi-http -> wasmtime-wasi-http
* prtest:full
Conditionalize TLS on riscv64gc.
* prtest:full
Fix formatting, also disable tls on s390x
* prtest:full
Add a path parameter to wit-bindgen, remove symlink.
* prtest:full
Fix tests for places where SSL isn't supported.
* Update crates/wasi-http/Cargo.toml
---------
Co-authored-by: Eduardo de Moura Rodrigues <[email protected]> Co-authored-by: Pat Hickey <[email protected]> Co-authored-by: Pat Hickey <[email protected]>
show more ...
|
|
Revision tags: v7.0.0, v6.0.1, v5.0.1, v4.0.1 |
|
| #
ad584f42 |
| 04-Mar-2023 |
Andrew Brown <[email protected]> |
wasi-threads: run test suite (#5907)
* wasi-threads: run test suite
This change enables the running of the wasi-threads [test suite]. It relies on a Wasmtime CLI binary being available and runs all
wasi-threads: run test suite (#5907)
* wasi-threads: run test suite
This change enables the running of the wasi-threads [test suite]. It relies on a Wasmtime CLI binary being available and runs all `*.wasm` and `*.wat` files present in the test suite directory. The results of each execution are compared against a JSON spec file with the same base name as the WebAssembly module. The spec file defines the expected exit code, e.g.
This commit does not yet build any `*.c` or `*.s` files from the test suite. That could be done later, perhaps upstream; in the meantime, this work is still valuable as it lays the foundation for running other WASI tests from the in-progress [wasi-testsuite] which share the same JSON spec infrastructure.
[test suite]: https://github.com/WebAssembly/wasi-threads/tree/main/test/testsuite [wasi-testsuite]: https://github.com/WebAssembly/wasi-testsuite
* review: move testsuite to top-level tests
* fix: remove now-unnecessary wasi-threads test
* fix: update testsuite submodule name
* fix: ignore tests on Windows
prtest:full
* fix: `cfg_attr` syntax
prtest:full
show more ...
|
|
Revision tags: v6.0.0, v5.0.0, v4.0.0, v3.0.1, v3.0.0, v1.0.2, v2.0.2, v2.0.1, v2.0.0, v1.0.1, v1.0.0, v0.40.1, v0.40.0, v0.39.1, v0.38.3, v0.38.2, v0.39.0, v0.38.1, v0.38.0, v0.37.0, v0.36.0, v0.35.3, v0.34.2, v0.35.2, v0.35.1, v0.35.0, v0.33.1, v0.34.1, v0.34.0, v0.33.0, v0.32.1, v0.32.0, v0.31.0, v0.30.0 |
|
| #
42acb72c |
| 10-Aug-2021 |
Andrew Brown <[email protected]> |
fuzz: retrieve the WebAssembly spec repository in `build.rs`
To avoid the large download size of the spec repository mentioned [here](https://github.com/bytecodealliance/wasmtime/pull/3124#discussio
fuzz: retrieve the WebAssembly spec repository in `build.rs`
To avoid the large download size of the spec repository mentioned [here](https://github.com/bytecodealliance/wasmtime/pull/3124#discussion_r684605984), this change removes it as a submodule and instead clones it shallowly when the directory is empty (or not present) when `build.rs` is run.
show more ...
|
|
Revision tags: v0.29.0 |
|
| #
a7f592a0 |
| 28-Jul-2021 |
Andrew Brown <[email protected]> |
Add a crate to interface with the WebAssembly spec interpreter
The WebAssembly spec interpreter is written in OCaml and the new crate uses `ocaml-interop` along with a small OCaml wrapper to interpr
Add a crate to interface with the WebAssembly spec interpreter
The WebAssembly spec interpreter is written in OCaml and the new crate uses `ocaml-interop` along with a small OCaml wrapper to interpret Wasm modules in-process. The build process for this crate is currently Linux-specific: it requires several OCaml packages (e.g. `apt install -y ocaml-nox ocamlbuild`) as well as `make`, `cp`, and `ar`.
show more ...
|
|
Revision tags: v0.28.0, v0.26.1, v0.27.0, v0.26.0, v0.25.0, v0.24.0 |
|
| #
cc6bde52 |
| 18-Feb-2021 |
Alex Crichton <[email protected]> |
Update wasi-nn submodule
|
| #
d095f63c |
| 18-Feb-2021 |
Alex Crichton <[email protected]> |
Update submodules
|
|
Revision tags: v0.23.0 |
|
| #
9ab5fa26 |
| 17-Feb-2021 |
Alex Crichton <[email protected]> |
Update the wasi-crypto spec
|
| #
250f11c5 |
| 17-Feb-2021 |
Alex Crichton <[email protected]> |
Fix build of wasi-nn
|
| #
df9c725f |
| 11-Feb-2021 |
Alex Crichton <[email protected]> |
Update to the next version of the witx crate
This commit updates to the 0.9 version of the witx crate implemented in WebAssembly/wasi#395. This new version drastically changes code generation and ho
Update to the next version of the witx crate
This commit updates to the 0.9 version of the witx crate implemented in WebAssembly/wasi#395. This new version drastically changes code generation and how we interface with the crate. The intention is to abstract the code generation aspects and allow code generators to implement much more low-level instructions to enable more flexible APIs in the future. Additionally a bunch of `*.witx` files were updated in the WASI repository.
It's worth pointing out, however, that `wasi-common` does not change as a result of this change. The shape of the APIs that we need to implement are effectively the same and the only difference is that the shim functions generated by wiggle are a bit different.
show more ...
|
| #
a0fad606 |
| 25-Jan-2021 |
Frank Denis <[email protected]> |
Add support for the experimental wasi-crypto APIs (#2597)
* Add support for the experimental wasi-crypto APIs
The sole purpose of the implementation is to allow bindings and
application develope
Add support for the experimental wasi-crypto APIs (#2597)
* Add support for the experimental wasi-crypto APIs
The sole purpose of the implementation is to allow bindings and
application developers to test the proposed APIs.
Rust and AssemblyScript bindings are also available as examples.
Like `wasi-nn`, it is currently disabled by default, and requires
the `wasi-crypto` feature flag to be compiled in.
* Rename the wasi-crypto/spec submodule
* Add a path dependency into the submodule for wasi-crypto
* Tell the publish script to vendor wasi-crypto
show more ...
|
|
Revision tags: v0.22.1, cranelift-v0.69.0, v0.22.0 |
|
| #
a61f068c |
| 16-Nov-2020 |
Andrew Brown <[email protected]> |
Add an initial wasi-nn implementation for Wasmtime (#2208)
* Add an initial wasi-nn implementation for Wasmtime
This change adds a crate, `wasmtime-wasi-nn`, that uses `wiggle` to expose the curr
Add an initial wasi-nn implementation for Wasmtime (#2208)
* Add an initial wasi-nn implementation for Wasmtime
This change adds a crate, `wasmtime-wasi-nn`, that uses `wiggle` to expose the current state of the wasi-nn API and `openvino` to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
- `crates/wasi-nn/tests/classification-example` contains Rust code that is compiled to the `wasm32-wasi` target and run with a Wasmtime embedding that exposes the wasi-nn calls
- the example uses Rust bindings for wasi-nn contained in `crates/wasi-nn/tests/wasi-nn-rust-bindings`; this crate contains code generated by `witx-bindgen` and eventually should be its own standalone crate
* Test wasi-nn as a CI step
This change adds:
- a GitHub action for installing OpenVINO
- a script, `ci/run-wasi-nn-example.sh`, to run the classification example
show more ...
|
|
Revision tags: v0.21.0, v0.20.0, v0.19.0, v0.18.0, v0.17.0, v0.16.0, v0.15.0, cranelift-v0.62.0 |
|
| #
968cd761 |
| 30-Mar-2020 |
Alex Crichton <[email protected]> |
Move back to only one WASI submodule (#1434)
* Move back to only one WASI submodule
This commit fixes the issue where we have two WASI submodules for build
reasons in this repository. The fix wa
Move back to only one WASI submodule (#1434)
* Move back to only one WASI submodule
This commit fixes the issue where we have two WASI submodules for build
reasons in this repository. The fix was to place the submodule in the
`wasi-common` crate, and then anyone using the `wig` crate has to be
sure to define a `WASI_ROOT` env var in a build script to be able to
parse witx files.
With all that in place `wasi-common` becomes the source of truth for the
witx files we're parsing, and crates like `wasmtime-wasi` use
build-scripts shenanigans to read the same witx files. This should
hopefully get us so we're compatible with publishing and still only have
one submodule!
* rustfmt
show more ...
|
| #
6c0c9a46 |
| 27-Mar-2020 |
Dan Gohman <[email protected]> |
Fixes for cargo publish (#1416)
* Publishing fixes.
* Make WASI a symlink.
* More fixes.
* Cargo doesn't allow dev-dependencies to have optional features.
* Remove the symlink.
* Add
Fixes for cargo publish (#1416)
* Publishing fixes.
* Make WASI a symlink.
* More fixes.
* Cargo doesn't allow dev-dependencies to have optional features.
* Remove the symlink.
* Add WASI as another git submodule.
show more ...
|
|
Revision tags: cranelift-v0.61.0, cranelift-v0.60.0 |
|
| #
3c51d3ad |
| 11-Mar-2020 |
Alex Crichton <[email protected]> |
Move all examples to a top-level directory (#1286)
* Move all examples to a top-level directory
This commit moves all API examples (Rust and C) to a top-level
`examples` directory. This is inten
Move all examples to a top-level directory (#1286)
* Move all examples to a top-level directory
This commit moves all API examples (Rust and C) to a top-level
`examples` directory. This is intended to make it more discoverable and
conventional as to where examples are located. Additionally all examples
are now available in both Rust and C to see how to execute the example
in the language you're familiar with. The intention is that as more
languages are supported we'd add more languages as examples here too.
Each example is also accompanied by either a `*.wat` file which is
parsed as input, or a Rust project in a `wasm` folder which is compiled
as input.
A simple driver crate was also added to `crates/misc` which executes all
the examples on CI, ensuring the C and Rust examples all execute
successfully.
show more ...
|
| #
974f5617 |
| 28-Feb-2020 |
Pat Hickey <[email protected]> |
depend on witx 0.8.3, rather than a path dependency. (#27)
and delete the submodule that was providing the path dep
|
|
Revision tags: v0.12.0, v0.11.0, v0.10.0 |
|
| #
6f6c6499 |
| 17-Jan-2020 |
Jakub Konka <[email protected]> |
Set up machinery
|
| #
364fa994 |
| 14-Jan-2020 |
Alex Crichton <[email protected]> |
Move the C API to a separate crate (#818)
* Move the C API to a separate crate
This commit moves the C API from `crates/api/src/wasm.rs` to
`crates/capi/src/lib.rs` to be located in a separate c
Move the C API to a separate crate (#818)
* Move the C API to a separate crate
This commit moves the C API from `crates/api/src/wasm.rs` to
`crates/capi/src/lib.rs` to be located in a separate crate. There's a
number of reasons for this:
* When a Rust program depends on the `wasmtime` crate, there's no need
to compile in the C API.
* This should improve compile times of the `wasmtime` crate since it's
not producing artifacts which aren't always used.
* The development of the C API can be guaranteed to only use the public
API of the `wasmtime` crate itself.
Some CI pieces are tweaked and this overall shouldn't have much impact
on users, it's intended that it's a cleanup/speedup for developers!
* Disable rustdoc/tests for capi
* Review feedback
* Add back in accidentally deleted comment
* More renamings
* Try to fix dotnet build
show more ...
|
| #
336ee94c |
| 10-Jan-2020 |
Dan Gohman <[email protected]> |
Bump version to 0.9.0 (#790)
|