Login
Login-Name Passwort


 
Newsletter
Werbung

Mo, 13. Mai 2013, 10:12

Software::Distributionen::Debian

Vorschlag für ein neues Veröffentlichungsmodell bei Debian

Lars Wirzenius und Russ Allbery haben einen Vorschlag ausgearbeitet, wie Debians Veröffentlichungs-Prozess gestrafft werden kann.

Software in the Public Interest

Man kennt das bereits bei Debian: Kaum ist eine neue Version veröffentlicht, wird aus den eigenen Reihen Kritik am Modell Debian laut. Manche Vorschläge halten sich länger als andere, gemeinsam ist allen, dass bisher noch keiner umgesetzt wurde. Der bisher hartnäckigste Vorstoß, Debians Prozess des Veröffentlichens zu modernisieren, kommt von Joey Hess, nennt sich CUT und wird seit rund fünf Jahren immer wieder einmal diskutiert, während Hess ihn liebevoll weiter pflegt. Steht CUT für »Constantly Usable Testing«, so müsste eine Abkürzung für den jetzigen Vorschlag CRT für »Constantly Releasable Testing« lauten.

Die Veröffentlichung von Debian 7 »Wheezy«, die insgesamt 27 Monate dauerte, kulminierte in einem 10 Monate anhaltenden »Freeze«, der, wie gewohnt, den Entwicklungsprozess von Debian sukzessive fast gänzlich zum Erliegen brachte. Die Hauptlast der Arbeit liegt beim Release-Team, während die Entwickler-Gemeinschaft sich der RC-Fehler annimmt. Wirzenius moniert diesen Stillstand als unproduktiv und sehr stressig. Er wünscht sich einen Freeze, der zwei Wochen, maximal aber zwei Monate dauert.

Der Weg dorthin soll über einen ständig zur Veröffentlichung bereiten Testing-Zweig gehen. Dazu müsste ein Paradigmenwechsel stattfinden. Als Beispiel zieht er heute oft verwendete agile Entwicklungsmodelle heran, wo die Entwickler dafür Sorge tragen, dass der Master-Branch des verwendeten VCS ständig aktuell gehalten wird. Gelangt ein grober Fehler in den Master-Branch, so ist das nicht schlimm, er bekommt höchste Priorität und wird repariert.

Wirzenius glaubt, dass Debian nach diesem Modell ständig in einem Zustand des »fast fertig zur Veröffentlichung« verharren kann, wenn es einige Punkte beherzigt. Da wäre als erstes die Einsicht, dass Veröffentlichungen wichtig und somit Sache der gesamten Entwickler-Gemeinschaft von Debian sind. Als zweites soll der Testing-Zweig frei von RC-Bugs gehalten werden. Darüber hinaus muss laut Wirzenius viel mehr Fokus auf automatisiertes Testen gelegt werden, um Fehler frühzeitig zu entdecken. Als letztes sollte die Zahl der Pakete, die bei einem Release Beachtung finden, limitiert werden.

Neben der Erläuterung der Wichtigkeit von Veröffentlichungen für das Projekt und dessen Außenwirkung geht Wirzenius auf die Tatsache ein, dass schon kurz nach einer Veröffentlichung mit der Aufhebung des Freeze Massen an neuen Paketen aus den Zweigen Experimental und Unstable den Zähler für RC-Bugs in die Höhe schnellen lassen, ohne dass das besondere Beachtung findet, da die nächste Veröffentlichung rund zwei Jahre in der Zukunft liegt. Wenn man heute, zwei Wochen nach der Ankunft von »Wheezy«, auf den Zähler schaut, gibt es bereits wieder 62 Fehler, die Release-kritisch sind. Das Modell von Wirzenius geht mit solchen fehlerbehafteten Paketen radikal um, er will sie möglichst schnell und automatisiert inklusive reverser Abhängigkeiten aus dem Testing-Zweig entfernen. Sie steigen erst wieder auf, wenn der kritische Fehler behoben ist. Bei essenziellen Paketen wie gcc oder bash müsse ein kritischer Fehler von allen möglichst schnell behoben werden.

Ein weiterer Schwerpunkt des Vorschlags von Wirzenius und Allbery liegt auf automatisiertem Testen. Diese Technik müsse in Debian mehr eingesetzt werden, vor allem, da viele Werkzeuge wie lintian, piuparts, adequate, autopkgtest und weitere bereits vorhanden sind. Damit würden die Entwickler das Vertrauen erhalten, dass sie darüber informiert werden, wenn sie etwas kaputtmachen. Vorstellbar sei ein Mechanismus, der jedes Paket, das in den Unstable-Zweig einzieht, automatisch für alle benötigten Architekturen testet. Sind alle Tests bestanden, kann das Paket unverzüglich in den Testing-Zweig wechseln. Teilweise werden solche Tests bereits mit Jenkins durchgeführt. Geht es nach den beiden Protagonisten, so soll bereits die Veröffentlichung von Debian 8 »Jessie« von den Vorschlägen profitieren, wenn diese denn umgesetzt werden.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung