Documentation
¶
Overview ¶
Package servicing extracts supersedence from Microsoft's servicing articles.
The articles carry no supersedence of their own -- each states a title and its own address, nothing more. What they do carry is a series: every article of one lists all of them, expired members included, which is the whole reason this source exists. The order of that series is the supersedence, and reading it out is this package's job.
The order comes from two things, both in the title. Where Microsoft gives OS build numbers, revision order within one build and one release cadence is supersedence. Where it does not -- .NET Framework and the pre-Windows-10 rollups -- the release date decides it, within one series and one track.
Neither the directory an article sits in nor the series as a whole can be used for this:
- os/windows-11 holds six versions at once, 21H2 through 26H1. An update to 22621 has nothing to do with one to 26100, and only the build number says so.
- The directory is not the release date. It disagrees with the date in the title on 272 of the 2,535 articles filed under one -- and the shape is always .../2022/12/january-26-2023-..., the month the work was done against the month it shipped -- so it is the title that is read, never the path.
- A legacy series runs two tracks side by side, a Monthly Rollup and a Security-only update. They supersede along their own lines and are kept apart.
What the directory does say is which product line an article belongs to, and there it is better than the title. Microsoft renames products under a stable path -- "Microsoft server operating system version 21H2" became "Windows Server 2022" in the titles of dotnetframework/microsoft-server/2022 -- and widens and narrows the list of products a .NET article names while the line runs on. Reading the line out of the title instead loses those, so the path is what is read and the title is what is measured against.
Articles naming no KB are not updates and are skipped: the "Windows 10 update history" and "Windows 11, version NNHN update history" hub pages, "End of servicing statement" and the support-lifecycle notices, 30 in 2,580.
The rules are checked by taking the pairs each would produce and asking whether msuc, wsusscn2 or cvrf records supersedence between them, counting only the pairs whose two KBs both appear in that union -- roughly half of the .NET ones do not, and a pair with an unknown end can neither confirm nor deny. An edge is confirmed if the union records it or reaches it, since the union holds direct edges where a chain holds a transitive reduction. Over the whole 2,580-article tree that comes to 1,853 of 2,118.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.