-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Duplicated deps when multiple targets share dependencies #451
Comments
Is there any fix for this? |
dfreese
pushed a commit
that referenced
this issue
Jun 20, 2022
This patch should fix #451. The patch runs cargo-tree to determine which features are enabled on each platform, and then groups them by using vectors of platforms as map keys. It's a lot of code, and there are no tests yet. But I wanted to post this initial effort and get some feedback from the code owners. @illicitonion has already seen this code, but I believe it will be new to @dfreese and @PiotrSikora (who filed the linked issue). The new file is copyright AgileBits, as this was work for hire for them. They are fine with contributing, and my repo has been public for months.
Hmm, this shouldn't have been closed. I mistakenly mentioned it in #478. |
PiotrSikora
added a commit
to PiotrSikora/proxy-wasm-cpp-host
that referenced
this issue
Jul 31, 2022
While there, add a format check to verify presence of manual fixes to workaround google/cargo-raze#451. Signed-off-by: Piotr Sikora <piotrsikora@google.com>
PiotrSikora
added a commit
to proxy-wasm/proxy-wasm-cpp-host
that referenced
this issue
Aug 1, 2022
While there, add a format check to verify presence of manual fixes to workaround google/cargo-raze#451. Signed-off-by: Piotr Sikora <piotrsikora@google.com>
knm3000
pushed a commit
to knm3000/proxy-wasm-cpp-host
that referenced
this issue
Aug 17, 2022
While there, add a format check to verify presence of manual fixes to workaround google/cargo-raze#451. Signed-off-by: Piotr Sikora <piotrsikora@google.com>
dmitrii-ubskii
added a commit
to typedb/typedb-dependencies
that referenced
this issue
Nov 23, 2022
## What is the goal of this PR? We add the cucumber testing framework crate to our pinned rust dependencies. ## What are the changes implemented in this PR? While making this change, we encountered an issue in bazel (bazelbuild/bazel#13785) that made it throw an error because, in essence, libc was included in two out of three conditions, which was regarded as a dependency duplication. Cargo-raze is aware of this issue (google/cargo-raze#451) and has their own workaround in the works (google/cargo-raze#512) which is not being reviewed or merged due to reviewer bandwidth issues. As our own workaround, we separate the inclusion of libc into its own condition, overriding raze and pacifying bazel. This change is stored separately from the razed crates and reapplied when `library/crates/update.sh` is run.
It looks that |
jamesreprise
pushed a commit
to jamesreprise/vaticle-dependencies
that referenced
this issue
Dec 5, 2022
## What is the goal of this PR? We add the cucumber testing framework crate to our pinned rust dependencies. ## What are the changes implemented in this PR? While making this change, we encountered an issue in bazel (bazelbuild/bazel#13785) that made it throw an error because, in essence, libc was included in two out of three conditions, which was regarded as a dependency duplication. Cargo-raze is aware of this issue (google/cargo-raze#451) and has their own workaround in the works (google/cargo-raze#512) which is not being reviewed or merged due to reviewer bandwidth issues. As our own workaround, we separate the inclusion of libc into its own condition, overriding raze and pacifying bazel. This change is stored separately from the razed crates and reapplied when `library/crates/update.sh` is run.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
errno
crate lists multiple targets that depend onlibc
crate (Cargo.toml):which gets translated by
cargo raze
into this (BUILD.errno-0.2.8.bazel):However, such duplicates are disallowed in Bazel and
bazel query
treats it as an error (see: bazelbuild/bazel#13785):This could be solved by either generating a single
select
(as suggested here: #437 (comment)) or by combining allselect
conditions that evaluate into the same value into one (although, that would work only when dependencies are exactly the same and not simply overlapping). cc @illicitonionThe text was updated successfully, but these errors were encountered: