1 Punkte von GN⁺ 4 시간 전 | 1 Kommentare | Auf WhatsApp teilen
  • Die Wahrsagerin Madame Semver hält Open-Source-Maintainern, die über die Archivierung eines Repositorys nachdenken, die Karte ^1.0.0 hin 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.0 erlaubt 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, $5 und $25 inklusive 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

 
GN⁺ 4 시간 전
Lobste.rs-Kommentare
  • Etwas Hohes, das auf einer kleinen Basis steht – das ist ein Turm. Nebraska, 2003.“ Jetzt will ich ein Tarotdeck im XKCD-Stil
    • Gute Idee. Man könnte per Crowdfunding die Illustratorin oder den Illustrator bezahlen oder Arbeiten mehrerer Künstler sammeln. Oder, seufz, man könnte auch AI verwenden
      Moment, vielleicht macht Randall es ja sogar selbst
  • Einer der bestgeschriebenen Texte, die ich auf dieser Seite gesehen habe
  • Beim Lesen bekam ich eine Gänsehaut
  • Beim Lesen musste ich an den Vortrag Oral Tradition in Software Engineering von @bcantrill denken: https://www.youtube.com/watch?v=4PaWFYm0kEw
  • Es gibt kein Caret (^)