cargo update on dependencies (#868)
Looks like we're able to actually drop a good number of various deps,
especially some large-ish ones like syn 0.14!
Adding proc-macro2 v1.0.8
Adding syn v1.0.14
Removing base64 v0.10.1
Removing cloudabi v0.0.3
Removing crossbeam-utils v0.6.6
Removing failure v0.1.6
Removing failure_derive v0.1.6
Removing fuchsia-cprng v0.1.1
Removing proc-macro2 v0.4.30
Removing proc-macro2 v1.0.7
Removing quote v0.6.13
Removing rand_core v0.3.1
Removing rand_core v0.4.2
Removing rand_os v0.1.3
Removing rdrand v0.4.0
Removing syn v0.14.9
Removing syn v1.0.13
Removing synstructure v0.9.0
Removing unicode-xid v0.1.0
Removing wincolor v1.0.2
Updating arbitrary v0.3.2 -> v0.3.3
Updating arrayref v0.3.5 -> v0.3.6
Updating constant_time_eq v0.1.4 -> v0.1.5
Updating crates.io index
Updating derive_arbitrary v0.3.1 -> v0.3.3
Updating indexmap v1.3.0 -> v1.3.1
Updating itoa v0.4.4 -> v0.4.5
Updating jobserver v0.1.18 -> v0.1.19
Updating memchr v2.2.1 -> v2.3.0
Updating num_cpus v1.11.1 -> v1.12.0
Updating proc-macro-error v0.4.4 -> v0.4.5
Updating proc-macro-error-attr v0.4.3 -> v0.4.5
Updating quickcheck v0.9.0 -> v0.9.2
Updating rand v0.7.2 -> v0.7.3
Updating redox_users v0.3.1 -> v0.3.4
Updating rust-argon2 v0.5.1 -> v0.7.0
Updating rustversion v1.0.1 -> v1.0.2
Updating serde_json v1.0.44 -> v1.0.45
Updating structopt v0.3.7 -> v0.3.8
Updating structopt-derive v0.4.0 -> v0.4.1
Updating termcolor v1.0.5 -> v1.1.0
Updating thread_local v1.0.0 -> v1.0.1
Updating toml v0.5.5 -> v0.5.6
Updating winapi-util v0.1.2 -> v0.1.3
Wasmtime: a WebAssembly Runtime
A Bytecode Alliance project
Wasmtime is a standalone wasm-only optimizing runtime for WebAssembly and WASI. It runs WebAssembly code outside of the Web, and can be used both as a command-line utility or as a library embedded in a larger application.
To get started, visit wasmtime.dev.
There are Rust, C, and C++ toolchains that can compile programs with WASI. See the WASI intro for more information, and the WASI tutorial for a tutorial on compiling and running programs using WASI and wasmtime, as well as an overview of the filesystem sandboxing system.
Wasmtime passes the WebAssembly spec testsuite. To run it, update the
tests/spec_testsuite submodule with git submodule update --remote, and it
will be run as part of cargo test.
Wasmtime does not yet implement Spectre mitigations, however this is a subject of ongoing research.
Additional goals for Wasmtime include:
- Support a variety of host APIs (not just WASI), with fast calling sequences, and develop proposals for additional API modules to be part of WASI.
- Facilitate development and testing around the Cranelift and Lightbeam JITs, and other WebAssembly execution strategies.
- Develop a native ABI used for compiling WebAssembly suitable for use in both JIT and AOT to native object files.
Including Wasmtime in your project
Wasmtime exposes an API for embedding as a library through the wasmtime subcrate,
which contains both a high-level and safe Rust API, as well as a C-compatible API
compatible with the proposed WebAssembly C API.
For more information, see the Rust API embedding chapter of the Wasmtime documentation.
It's Wasmtime.