Packaging-Wissen

Supersedence und Versionierung

Wie eine neue Version die alte ersetzt, warum die Reihenfolge zählt und was passiert, wenn beides gleichzeitig zugewiesen ist.

Ersetzen statt überschreiben

Eine neue Version ist kein zusätzliches Paket, sondern eine Ablösung. Wenn beide Pakete gleichzeitig zugewiesen sind, entscheidet die Reihenfolge der Zuweisung, nicht die Versionsnummer. Das führt zu Geräten, auf denen beide Varianten liegen — oder zu keinem sichtbaren Unterschied, weil das alte Paket gewinnt.

Die Reihenfolge der Zuweisung

Supersedence wird als Beziehung zwischen zwei Paketen definiert: neu ersetzt alt. Wichtig ist, dass die neue Zuweisung tatsächlich greift. Wer die alte Zuweisung stehen lässt und die neue daneben legt, testet nicht die neue Version, sondern die Reihenfolge.

Abhängigkeiten

Eine Ablösung kann eine Abhängigkeit haben: Das neue Paket braucht eine Runtime, ein Zertifikat oder eine andere Software. Diese Abhängigkeit gehört ins Paket, nicht in eine zweite Zuweisung, die „irgendwann" kommt.

Rückfall auf die alte Version

Ein Rollback ist nur möglich, wenn die alte Version noch existiert und noch zugewiesen werden kann. Wer sie beim Update löscht, hat keinen Rückfallweg. Die alte Version bleibt verfügbar, bis die neue auf einer ausreichenden Zahl Geräte läuft.

Prüfpunkte

Vier Dinge prüfen: Erkennt die Detection die neue Version? Ist die alte Zuweisung entfernt oder ersetzt? Gibt es Geräte mit beiden Versionen? Und liefert die Deinstallation der alten Version noch ein sauberes Ergebnis?

Wer diese vier Fragen beantworten kann, hat ein Update — nicht nur ein neues Paket.

---