Leverage Cargo's workspace inheritance feature (#4905)
* Leverage Cargo's workspace inheritance feature This commit is an attempt to reduce the complexity of the Cargo manifests in this repository with Cargo's workspace-inheritance feature becoming stable in Rust 1.64.0. This feature allows specifying fields in the root workspace `Cargo.toml` which are then reused throughout the workspace. For example this PR shares definitions such as: * All of the Wasmtime-family of crates now use `version.workspace = true` to have a single location which defines the version number. * All crates use `edition.workspace = true` to have one default edition for the entire workspace. * Common dependencies are listed in `[workspace.dependencies]` to avoid typing the same version number in a lot of different places (e.g. the `wasmparser = "0.89.0"` is now in just one spot. Currently the workspace-inheritance feature doesn't allow having two different versions to inherit, so all of the Cranelift-family of crates still manually specify their version. The inter-crate dependencies, however, are shared amongst the root workspace. This feature can be seen as a method of "preprocessing" of sorts for Cargo manifests. This will help us develop Wasmtime but shouldn't have any actual impact on the published artifacts -- everything's dependency lists are still the same. * Fix wasi-crypto tests
This commit is contained in:
15
.github/workflows/main.yml
vendored
15
.github/workflows/main.yml
vendored
@@ -77,7 +77,7 @@ jobs:
|
||||
submodules: true
|
||||
- uses: ./.github/actions/install-rust
|
||||
with:
|
||||
toolchain: nightly-2022-04-27
|
||||
toolchain: nightly-2022-09-07
|
||||
|
||||
# Build C API documentation
|
||||
- run: sudo apt-get update -y && sudo apt-get install -y libclang1-9 libclang-cpp9
|
||||
@@ -194,7 +194,7 @@ jobs:
|
||||
# flags to rustc.
|
||||
- uses: ./.github/actions/install-rust
|
||||
with:
|
||||
toolchain: nightly-2022-04-27
|
||||
toolchain: nightly-2022-09-07
|
||||
- run: cargo install cargo-fuzz --vers "^0.11"
|
||||
# Install the OCaml packages necessary for fuzz targets that use the
|
||||
# `wasm-spec-interpreter`.
|
||||
@@ -345,9 +345,8 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
- run: rustup update stable && rustup default stable
|
||||
- run: rustup target add wasm32-wasi
|
||||
- name: Install Rust
|
||||
run: rustup update stable && rustup default stable
|
||||
- run: ./ci/run-wasi-crypto-example.sh
|
||||
env:
|
||||
RUST_BACKTRACE: 1
|
||||
@@ -359,9 +358,8 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
- uses: ./.github/actions/install-rust
|
||||
- run: rustup target add wasm32-wasi
|
||||
- name: Install Rust
|
||||
run: rustup update stable && rustup default stable
|
||||
- run: cargo test --benches --release
|
||||
|
||||
# Verify that cranelift's code generation is deterministic
|
||||
@@ -372,8 +370,7 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
- name: Install Rust
|
||||
run: rustup update stable && rustup default stable
|
||||
- uses: ./.github/actions/install-rust
|
||||
- run: cd cranelift/codegen && cargo build --features all-arch
|
||||
- run: ci/ensure_deterministic_build.sh
|
||||
|
||||
@@ -408,11 +405,11 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
- uses: ./.github/actions/install-rust
|
||||
# On one builder produce the source tarball since there's no need to produce
|
||||
# it everywhere
|
||||
- run: ./ci/build-src-tarball.sh
|
||||
if: matrix.build == 'x86_64-linux'
|
||||
- uses: ./.github/actions/install-rust
|
||||
- uses: ./.github/actions/binary-compatible-builds
|
||||
with:
|
||||
name: ${{ matrix.build }}
|
||||
|
||||
Reference in New Issue
Block a user