Open Bug 1576081 Opened 5 years ago Updated 2 years ago

Detect when the workspace-hack crate needs updates

Categories

(Firefox Build System :: General, task)

task

Tracking

(Not tracked)

People

(Reporter: glandium, Unassigned)

References

Details

Bug 1576003 is a recent example.

Unfortunately, detecting when that happens is not trivial:

  • there is a cargo metadata command that outputs metadata in a stable format, but it's only an aggregate of all the Cargo.tomls concerned. So one has to figure out on their own what set of crates enable what features in what other crates.... in the same manner cargo would.
  • there are features information in json files in the objdir, inside .fingerprint directories, but that's internal details of cargo, which may change at any time. For instance, this is how versions appear in these files: "local":[{"Precalculated":"0.2.5"}], which doesn't sound very future-proof.
  • When enough time passes, the .fingerprint directories contain much more than the crates that are actually built, still containing older builds, polluting any detection. There doesn't seem to be an easy and reliable way to find the ones that were used in a given build. Even if there was, that would still be relying on unstable cargo internals.
  • features can vary by platform, by build configuration, etc.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.