alexcrichton opened PR #4905 from workspace-inheritance
to main
:
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 workspaceCargo.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.
bjorn3 submitted PR review.
bjorn3 created PR review comment:
This doesn't break using cranelift as path dependency from a different workspace, right?
bjorn3 created PR review comment:
Maybe use the
cranelift-codegen.workspace = true
shorthand?
bjorn3 submitted PR review.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton created PR review comment:
I don't believe so, no
alexcrichton submitted PR review.
alexcrichton submitted PR review.
alexcrichton created PR review comment:
Personally I prefer the current form as it's easier to edit in
optional = true
and such and looks more similar to other dependencies. I think this is a matter of taste ultimately though.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton has marked PR #4905 as ready for review.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton requested pchickey for a review on PR #4905.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
alexcrichton updated PR #4905 from workspace-inheritance
to main
.
pchickey submitted PR review.
alexcrichton merged PR #4905.
Last updated: Dec 23 2024 at 12:05 UTC