Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use Cargo's "namespace features" feature (#4293)
Cargo recently added the ability to have an optional dependency without implicitly introducing a new named feature on a crate. This is triggered with some new directives in the `[features]` section, specifically: * The `dep:foo` syntax means that `foo` is activated but no implicit feature should be added named `foo`. * Additionally `foo?/bar` means that the `bar` feature of `foo` is only activated if `foo` is otherwise activated elsewhere, for example a conditional activation. These two features can help avoid extra feature names showing up that we don't want (e.g. currently the `wasmtime` crate has a `rayon` feature) and additionally can help avoid runtime dependencies in niche cases for us (e.g. activating `all-arch` but disabling `cranelift` would previously pull-in cranelift but no longer will).
- Loading branch information