docs: the MSVC ecosystem round, and the tool that made it decidable - #445
Merged
Conversation
Keeps two things that are worth more than the diff they came from.
The report records eleven defect layers, each reachable only once the one
before it was fixed, and every one of them green in CI at the time. They
share a single shape -- an acceptance criterion weaker than "usable" -- and
the endpoint is the one criterion that could not be satisfied by adjusting a
test:
PASS: msvc@14.44.35207 installs, builds, stays distinct from
msvc@system, and removes
It also records what I got wrong: a premise about renaming directories that
CI disproved, a diagnostic that probed by deleting, an invented `gcc@system`
proposal that ran against the design it claimed to improve, and three
separate occasions where the honest conclusion was "this test cannot fail on
the platform that would run it, so do not write it".
`tools-msimap.py` resolves an MSI's File/Component/Directory tables to real
install paths, offline. It is here because it was the only thing that could
answer "what is actually inside this payload" -- the package names,
Microsoft's own docs, and my own comments in this repo were each wrong about
the Windows SDK, and only the tables were right. Anyone auditing a payload
set again will need it.
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.
Two things worth keeping after the work is merged.
The report
Eleven defect layers, each reachable only once the one before it was fixed, every one of them green in CI at the time:
One shape throughout: an acceptance criterion weaker than "usable". The endpoint is the one criterion that could not be met by adjusting a test — a real Windows runner completing the whole lifecycle, plus xrgui building 54/54 on the pinned Insider toolset with the vswhere workaround still deleted.
It also records what I got wrong, because those were the expensive parts:
gcc@systemproposal that ran against the design it claimed to improve (feat(toolchain):gcc@systemis rejected, and says what to do instead #441, closed)The tool
tools-msimap.pyresolves an MSI'sFile/Component/Directorytables to real install paths, offline (7z for the OLE streams,!_Columnsfor the schema — the SDK's MSIs do not share column widths, and a guessed width silently misaligns every column after it).It is here because it was the only thing that could answer "what is actually inside this payload". The package names, Microsoft's documentation, and my own comments in this repository were each wrong about the Windows SDK —
Windows SDK Desktop Headers x64ships four files, none of them a Win32 header — and only the tables were right.