@warp735 said in Warum kommen Updates tage/wochen/monatelang nicht in stable?:
Hab das Gefühl, es spielt sich alles nur im latest ab und um stable "kümmert sich kein Mensch"...
Warum ist das so, bzw wann wird von latest in stable gewechselt?
Hallo warp735,
Danke dass du nachfragst statt dich im stillen Kämmerlein zu ärgern.
Dein Gefühl, dass sich kein Mensch um stable kümmert ist definitiv falsch. Zumindest hatte sich bei meinem letzten Arztbesuch der Humanmediziner durchaus als für mich zuständig gefühlt 🙂
Im Ernst - ich erlaub mir hier die Abläufe ein wenig zu schildern:
Phase 1 - GITHUB
Wenn an einem Adapter etwas geändert wird, dann wird der jeweilige Entwickler dies zunächst auf seinem System testen. Diese Änderungen werden von ihm anschließend (bzw. während der Entwicklung) auf GitHub committed.
Diesen Softwarestand kann jedermann durch eine 'Installation von Github' auf sein System bringen. Ordnungshalber halte ich fest, dass dies nur auf Anraten und in Abstimmung mit dem jeweiligen Entwickler geschehen sollte. Der Github Stand kann jederzeit in sich inkonsistent und absolut fehlerhaft sein. Und er kann sich minütlich ändern. Versionsangaben auf Github sind i.A. Schall und Rauch da die Versionsnummer zumindest bei Verwendung der Standardscripts erst beim Erstellen einer Version (Release) geändert wird.
Phase 2 - LATEST
Sobald der Entwickler meint, dass die neue Release bereit für einen Test in größerem Umfang ist, wird er eine Release erstellen. Sobald eine neue Release auf NPM veröffentlicht wird, wird diese im latest Repository allgemein angeboten. Die erfolgt durch automatische Scripts 2x am Tag, ca 2:00 und 14:00. Da der Update der Repository Information auf den User Systemen in der Dafulteinstellung 1x am Tag erfolgt werden neue Releases im Allgemeinen binnen 24h am Usersystem angezeigt.
Normalerweise teilt der Entwickler das Vorhandensein neuer Release im Latest via Tester Topic im Forum mit. Hier wird Feedback gesammelt und beobachtet ob User mit der neuen Release Problem melden. Diese werden dann (hoffenbtlich) gefixed und ggF eine neue Release erstellt.
Phase 3 - STABLE
Erst wenn ein Entwickler der Ansicht ist, dass eine Version keine (ernsthaften) Mängel aufweist wird diese im Stable Repository veröffentlicht. Diese Veröffentlichung muss der Entwickler im Normalfall aktiv via PR "bestellen".
Generell muss (von Emergency Updates abgesehen) eine Release mindestens 7 Tage im latest Repository verfügbar sein und eine angemessene Anzahl von Installationen aufweisen bevor sie ins Stable kommen darf.
Damit nicht vergessen wird, Adapter ins STABLE zu bringen, erfolgt eine automatisierte Kontrolle. Dazu wird ein Issue im Adapterrepository erstellt, dass den jeweiligen Entwickler an den Upgrade erinnert. Dies erfolgt typisch 14 Tage nach der Veröffentlichung der Release - kann aber auch bis zu 30 Tage dauern wenn extrem wenige Installationen vorliegen oder der letzte Stable Update erst wenige Tage alt ist. Zusätzlich monitore ich die offenen Issues und erinnere ggF manuell nochmal dran. Da ein Update in Stable nie automatisiert erfolgen kann (eine automatische Prüfung ob im Forum bzw. in Adapter Issues schwere Probleme geloggt wurden ist nicht vernünftig machbar) kann es durchaus sein, dass mit allen Erinnerungen dies einige Zeit dauert.
Generell ist es unser Ziel alle Adapter die gewartet werden im Stable Repository aktuell anzubieten. Installationen von Latest sind immer mit Vorbehalt zu sehen da dies per Definition eine Testversion / Betaversion ist.
In seltenen Fällen kanns aber auch Gründe geben, warum ein Adapter nicht im Stable aktualisiert wird. Dies ist dann in jedem Fall ein Issue das von Entwickler nicht behoben wird - aus welchem Grund auch immer. Updates in Latest erfolgen automatisiert, bei Stable erfolgt ein ganz grober nochmaliger Check auf Einhaltung einheitlicher Standards; so müssen z.B. standardmäßige GitHub basierende Tests positiv durchlaufen werden, Releasenotes in Readme existieren und wichtige Abhängigkeiten passend in den Dateien eingetragen sein.
Sollte ein Adapter wirklich längere Zeit nicht in stable aktualisiert worden sein, so bitte ich darum den jeweiligen Dev zu kontaktieren und ggF ein Issur im Adapter Repo zu schreiben. Im Bedarfsfall kannst du aber auch mich explizit anpingen warum Adapter xyz nicht in Stable aktuell ist. Es kann immer mal was durchrutschen und in dem Fall sag ich dann schon mal Danke wenn du was bereinigen hilfst. In jedem Fall kann ich bei konkreten Fragen sagen warum ein Adapter in Stable veraltet scheint.
Ich hoffe ich konnte ein wenig die Abläufe erklären und deine Ansicht dass sich um stable niemand kümmert begründet korrigieren.
Bitte bei Fragen melden, wenn ich nict reagiere gerne mentionen, ich überseh durchaus mal posts ind er Menge der täglichen Posts.
mcm1957