For example, serde (or clap?) has optional dependency on clippy, but that doesn't exist in non-stable... Since we don't have rich deps and proper packaging, we just include all optional dependencies (yes, weak deps will not help since they are ignored by builders).
We may have to blacklist known crates like clippy.
AGREED: we will package even winapi stuff (since it would probably make sense for cross-compilation and will not give any problems) (ignatenkobrain, 22:15:13)
#58 adds the initial support for rust2rpm to enable/disable optionals features. But it gives us nothing until cargo allows some deps to be missing.
Upstream issues: https://github.com/rust-lang/cargo/issues/4544 — Cargo fails to run when an optional dependency is missing https://github.com/rust-lang/cargo/issues/5896 — Don't require existence of dependencies not needed for the current --target https://github.com/rust-lang/cargo/issues/5133 — Stabilize -Z avoid-dev-deps as --minimal-cargo-lock
-Z avoid-dev-deps
--minimal-cargo-lock
I've opened https://pagure.io/fedora-rust/rust2rpm/pull-request/68 which somewhat improves current situation.
But it still pulls target-specific dependencies (the ones which rustcfg is supposed to filter out) even with -Z avoid-dev-deps.
rustcfg
Metadata Update from @ignatenkobrain: - Issue set to the milestone: 7
Let's track target-specific dependencies in #2.
I've just merged #68 so this ticket is basically done.
Metadata Update from @ignatenkobrain: - Issue close_status updated to: Fixed - Issue status updated to: Closed (was: Open)
Log in to comment on this ticket.