Removed the "revised" method for calculating superseded updates, if security-only updates are selected
One of Microsoft's original goals for cumulative monthly update rollups was to include former updates:
Over time, Windows will also proactively add patches to the Monthly Rollup that have been released in the past. Our goal is eventually to include all of the patches we have shipped in the past since the last baseline, so that the Monthly Rollup becomes fully cumulative and you need only to install the latest single rollup to be up to date.
This refers to the cumulative monthly update rollups only, not to the incremental security-only updates. Therefore, sometimes updates will superseded by the monthly update rollups, but not by the security-only updates. These updates would be added to the file ExcludeList-superseded-exclude-seconly.txt. However, this is only done, if these updates are found to be missing during installation.
The revised method for calculating superseded updates tried to recognize this situation automatically:
- The file HideList-seconly.txt contains a list of all known update rollups. The kb numbers are traced back to the FileIds, and then to the parent bundle records.
- The RevisionIds of the parent bundle records are removed from the list of superseding updates: If update rollups are excluded from download, then they cannot possibly supersede other updates.
- The list of superseded updates is then calculated as before. The file ExcludeList-Linux-superseded-seconly-revised.txt will be similar to the file ExcludeList-Linux-superseded-seconly.txt, but with an additional correction for the update rollups from the file HideList-seconly.txt.
This method actually worked – in two cases it could predict missing updates, before they were reported as missing:
- Some update issues https://forums.wsusoffline.net/viewtopic.php?f=4&t=7085
Here, two updates were reported as missing. The update, which could be recovered by the revised method, was "windows6.1-kb2631813-x64".
windows6.1-kb2631813 is still listed in the file ExcludeList-superseded-exclude.txt of the ESR-version: https://gitlab.com/wsusoffline/wsusoffline/-/blob/esr-11.9/exclude/ExcludeList-superseded-exclude.txt
But, as soon as all missing updates are added to the files ExcludeList-superseded-exclude.txt or ExcludeList-superseded-exclude-seconly.txt, this method would not make any difference anymore.
The revised method was introduced in the Linux download scripts, version 1.11 (2019-04-04). It is removed now, because I don't know, how it fits into the new implementation of calculating superseded updates, or if it is still useful at all.