Moin!
Ich wollte mich zu dem Thema auch nochmal äußern:
rednaxela wrote:[...]Danach wird kb981350 für XP x86 SP3 wohl NICHT benötigt.[...]
Danke, ich hab' das jetzt in ExcludeList-wxp-x86.txt wieder drin, checke das aber nicht separat ein.
Denniss wrote:Bitte auch mal bei w2k3-x64 glb reinschauen, bei mir sind drei updates doppelt vorhanden, je einmal als enu und als jpn ?!?
Danke, dazu hab' ich ExtractDownloadLinks-w2k3-x64-glb.xsl angepasst, checke das aber auch nicht separat ein.
harry wrote:In der Datei package.xml haben alle Updates, die durch andere ersetzt wurden, das Attribut <SupersededBy>.
Leider steht das Attribut (für die in WOU gewünschte Information) im ersten Teil unter <update>.
Ich habe zu wenig Erfahrung mit XML-Dateien, um beurteilen zu können, ob man diese Information (relativ leicht) dem entsprechenden <FileLocations>-Eintrag zuordnen kann.
Naja, wenn's einfach wäre, könnt's ja jeder...
Es gibt dabei ein paar Tücken:
- Die Updates in der package.xml, denen (über FileIds) FileLocations zugeordnet sind, haben selbst meist keine SupersededBy-Information, sondern erstmal ein Element "BundledBy".
- In dem "BundledBy-Update", das mehrere Plattformen, Sprachen oder was auch immer gruppiert und das logisch etwa einem "security bulletin" entspricht, steht dann möglicherweise eine SupersededBy-Information, die aber nur dann gültig ist, wenn eines der dort angegebenen Attribute "RevisionId" überhaupt existiert - es gibt leider auch ungültige SupersededBy-Elemente!
- Man muss also erstmal alle BundledBy-Updates ermitteln, dann gültige SupersededBy-Updates, diese dann verwursteln und dann die FileIds der Ergebnisse durch URLs ersetzen - deswegen ist der Code so kompliziert (und läuft so lange).
Wie dem auch sei: Über die Entwicklung der dynamischen Ermittlung ersetzter Updates habe ich ein bisschen den Überblick verloren, welche Patches denn jetzt immer noch zuviel sind.
Ich habe nämlich den Verdacht, dass auch an dieser Stelle Fehler im Katalog sind - ungültige URLs hatten wir ja schon, ungültige RevisionIds habe ich nun auch kennengelernt - warum also sollten die BundledBy- und SupersededBy-Informationen also alle gültig und vor allem vollständig sein?
Ich gehe die Postings auch noch durch, aber vielleicht könnt Ihr das schneller zusammenfassen?
Danke & Gruß
Torsten