Build the QA tools against the deps they were published with - #283
Closed
pathscale wants to merge 1 commit into
Closed
Build the QA tools against the deps they were published with#283pathscale wants to merge 1 commit into
pathscale wants to merge 1 commit into
Conversation
Resolving these fresh picks the newest `ps-blitz-*` satisfying each requirement, and those crates are not compatible across minor versions. `qa-inspect-host` was being compiled against `ps-blitz-script` 0.4.1 while its `tauri-runtime-blitz` expected 0.3.x, so the same type existed twice and every call between them failed to typecheck. That alone would be ordinary breakage. What made it costly is that everything downstream *skips* rather than fails: Lint, Contract Check, Type Check, Build, the rendered-component outcomes, API Contract, Consumer Smoke and Package Check were all skipped, on master as well as on pull requests. The run reports one failed step and nothing else, so the suite had verified nothing at all for some time. `--locked` uses each crate's own published lockfile, the set its author tested. It costs nothing in currency: both tools still install at their newest version, 0.5.11 and 0.1.8. One command per tool is deliberate. `cargo install a b --locked` resolves the pair together and downgrades to satisfy both, landing on `qa-inspect-host` 0.1.4; installed separately each keeps its own resolution and stays current. Verified locally: both build clean and install at the newest published version.
Owner
Author
|
Landed on master as 300441e via rebase + fast-forward. The rebase rewrote the SHA, so GitHub could not detect it automatically — closing explicitly. CI on this branch went green end to end before merging: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The suite has not been running
Install native QA toolsfails, and every step after it is skipped, notfailed:
This is true on
master, not only on pull requests. A run shows one red stepand nothing else, so it reads like an infrastructure hiccup rather than what it
is: the library's entire verification has been inert.
Cause
cargo install ps-qa qa-inspect-hostresolves fresh every run, picking thenewest
ps-blitz-*that satisfies each requirement. Those crates are notcompatible across minor versions, so
qa-inspect-hostwas compiled againstps-blitz-script0.4.1 while itstauri-runtime-blitzexpected 0.3.x:Same type name, two crate versions, so every call between them fails to
typecheck. Nothing in this repository changed to cause it — the resolution
drifted underneath.
Fix
--locked, so each tool builds against its own published lockfile: the set itsauthor tested.
The previous comment said not to inherit a tool crate's lockfile, to keep the
harness current. That intent is preserved — both tools still install at their
newest published version,
ps-qa0.5.11 andqa-inspect-host0.1.8. Onlytheir transitive
ps-blitz-*pins change, to the ones that actually compile.One command per tool is deliberate:
cargo install a b --lockedresolves thepair together and downgrades to satisfy both, landing on
qa-inspect-host0.1.4. Installed separately, each keeps its own resolution and stays current.
Verified locally
Both forms were run into a scratch
--root, not against the checkout:cargo install ps-qa qa-inspect-host(current)cargo install ps-qa qa-inspect-host --lockedqa-inspect-host0.1.4cargo install ps-qa --lockedthencargo install qa-inspect-host --lockedThe last is what this PR ships. CI on this branch is the real check: the steps
below the install should run for the first time in a while, and may surface
findings that have been accumulating unseen.