Madame Semver erwartet Sie jetzt
(nesbitt.io)- Die Wahrsagerin Madame Semver hält Open-Source-Maintainern, die über die Archivierung eines Repositorys nachdenken, die Karte
^1.0.0hin und zeigt ihnen die Zukunft, die sie erwartet, wenn sie es nicht archivieren - Von fehlerhaften PRs mit bestandenen Tests über Issues, die die Library missverstehen, und Pakete mit ähnlichen Namen bis hin zu einem Security-Scan-Bericht, in dem sich genau eine echte Schwachstelle versteckt, raubt eines nach dem anderen dem Maintainer die Zeit
- Als ein Contributor, der über Jahre hinweg kleine Probleme beharrlich behebt und wiederkehrende Fragen beantwortet hat, im dritten Jahr nach Repository-Rechten fragt, dreht Madame Semver nur diese eine Karte verdeckt um
- Irgendetwas, das ein veraltetes README gelernt hat, empfiehlt zwei Jahre lang entfernte Funktionen, und eine GROSSGESCHRIEBENE Richtliniendatei sowie Automatisierungs-Bots verändern Dokumentation und Repository-Betrieb in unerwartete Richtungen
- Später gewinnt ein Fork, der jede Änderung innerhalb einer Stunde merged, einige Nutzer für sich, doch da auch er das Original-Repository mit einem Caret-Bereich referenziert, ist unklar, wen die nächste Major-Version treffen wird
Die nahe Zukunft eines nicht archivierten Repositorys
- Das Caret der ersten Karte
^1.0.0erlaubt alles, was danach kommt, und Menschen vergessen leicht, dass sie diesen Bereich selbst festgelegt haben - Madame Semver weiß bereits, dass der Maintainer das Repository nicht archivieren wird, und breitet die Ereignisse aus, die auf diese Entscheidung folgen
- Im Juni trifft ein höflicher PR ein, der sogar Tests mitbringt
- Die Tests bestehen, aber der Code ist falsch und frisst den Großteil des Samstags des Maintainers auf
- Unter der Beschreibung steht ein Co-Autor, zu dem sich kein Foto finden lässt, und bis der Maintainer sich an die Überprüfung gewöhnt, merged er noch zwei weitere PRs von ihm
- Im August eröffnet jemand voller Überzeugung ein Issue, obwohl er die Funktion der Library missverstanden hat, und zitiert dabei Quellen, die schwer zu widerlegen sind
- In der folgenden Woche veröffentlicht jemand anderes das von ihm beschriebene Paket unter einem Namen, der sich nur um einen Buchstaben vom bestehenden unterscheidet
- Im September zieht das neue Paket die Downloads auf sich
- Auf der Tower-Karte erscheinen ein hohes Bauwerk auf kleinem Fundament und
Nebraska, 2003- Der Maintainer kennt das Motiv bereits gut genug von Tassen, daher braucht es keine weitere Erklärung
- Der Security-Scan im Oktober erzeugt einen langen, ausgefeilten Bericht mit ungefragt vergebenen Schweregraden und einer Management-Zusammenfassung
- 11 der 12 Funde formulieren dokumentiertes Verhalten lediglich so um, als wäre es ein Defekt
- Der verbleibende eine Punkt ist ein echtes Problem, daher muss der Maintainer auch die vorherigen 11 lesen und im November dasselbe noch einmal tun
- Ein mit Werkzeugen auftauchender Contributor behebt kleine Probleme, verlangt keine Gegenleistung und beantwortet sogar die wiederkehrenden Fragen, deren der Maintainer müde war
- Zunächst bewundert der Maintainer seine Geduld, doch mit der Zeit beginnt er, seine Identität nachzuschlagen
- Als er im dritten Jahr nach den Schlüsseln zum Repository fragt, dreht Madame Semver als Einzige genau diese Karte verdeckt um
Die fernere Zukunft und die nächste Major-Version
- Irgendetwas mit langem Gedächtnis liest ein altes README und empfiehlt mit großer Sicherheit etwa zwei Jahre lang eine im März entfernte Funktion
- Der Maintainer fügt die Funktion schließlich wieder hinzu und markiert sie als deprecated
- Nutzer melden die Deprecation-Warnung als Bug
- Im Root des Repositorys erscheint eine Datei in lauter Großbuchstaben mit Anweisungen an ein unbestimmtes Gegenüber
- Diese Datei wird aufmerksamer gelesen als jedes Dokument, das der Maintainer selbst geschrieben hat
- Mit der Zeit schreibt der Maintainer auch andere Dokumente in demselben Tonfall, kann sich aber nicht erinnern, wann er das beschlossen hat
- An einem Dienstagabend holt sich irgendetwas in Virginia den Tarball 11.000-mal
- Es ist kein Angriff; vielmehr lässt die Begeisterung von jemandem eine Schleife laufen, und der Paketname ist in deren Ergebnis gelandet
- Im selben Monat engagiert der Maintainer einen automatisierten Diener, der Türen für ihn schließen soll, die er selbst nicht mehr schließen kann
- Ein anderer Diener, den er nicht engagiert hat, hält diese Tür weiter offen
- Zwischen den beiden Automatisierungen wird dieselbe Tür ein Jahr lang immer wieder geöffnet und geschlossen
- In ferner Zukunft erscheint ein neuer Fork
- Der Fork-Maintainer ermüdet nicht, reagiert sofort und merged jede Änderung innerhalb einer Stunde
- Beim Anblick des Avatars erkennt man sofort, was für ein Wesen es ist, und mehrere Menschen bevorzugen diesen Fork gegenüber dem Original
- Doch auch der Fork pinnt das Original-Repository mit einem Caret fest und erlaubt damit alles, was danach kommt
- Die Tarife für die Wahrsagung bestehen aus
$1,$5und$25inklusive einer kleinen Emaille-Anstecknadel, doch der Maintainer zahlt nur den$1, den alle zahlen - Madame Semver sagt ihm, er solle wiederkommen, wenn die nächste Major-Version ansteht, verrät jedoch nicht, wessen Major-Version es sein wird
1 Kommentare
Lobste.rs-Kommentare
Moment, vielleicht macht Randall es ja sogar selbst