You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
by default, ^ is implied when defining version of dependencies (e.g.: serde = "0.7.0" is equivalent to serde = "^0.7.0" and not serde = "= 0.7.0")
components are not run in the same workspace than foxbox. In other words, we create another Cargo.lock. That's why foxbox is able to compile globally, but not one of its component.
Long term solutions?
Pin every single version of libraries (aka, "put an = for every dependency in Cargo.toml"). I tried it locally, and I still didn't manage to compile taxonomy.
Store Cargo.lock for every component in git. This will be an issue when taxonomy is out on crates.io. People might face the same type of compiling error, without us knowing. They'll also have to freeze their Cargo.lock to comply with the one we have.
Same problem than serde: it breaks every then and now when it is updated for a newer rust but our rust is not (for example).
I know the issue that comes from "=" but I don't have better options right now. If we keep it for the 1 or 2 problematic dependencies this is likely manageable. We can also use ">= XXX < YYY" and update YYY when we try it and see it still builds. But this is a lot of work I'm not sure we want to tackle.
Spotted in this job and that one. That's also reproducible locally.
STR
cd components/taxonomy
cargo test
Results
aster 0.16.0
can't compile because it's meant to be built against a rustc more recent thannightly-2016-04-10.
Short term solution
#465 will rust up, so the problem will go away, until next time.
Root causes
This problem is due to the accumulation of these causes:
cargo test
doesn't the tests of components (like described in Components tests are not run withcargo test
at the root of foxbox #449).^
is implied when defining version of dependencies (e.g.:serde = "0.7.0"
is equivalent toserde = "^0.7.0"
and notserde = "= 0.7.0"
)Long term solutions?
=
for every dependency in Cargo.toml"). I tried it locally, and I still didn't manage to compile taxonomy.taxonomy
is out on crates.io. People might face the same type of compiling error, without us knowing. They'll also have to freeze their Cargo.lock to comply with the one we have.None of them seems actionable in a short term perspective. @fabricedesre @julienw do you see something else that we could do?
The text was updated successfully, but these errors were encountered: