Sehen Sie, ich verstehe. Sie veröffentlichen ein neues Paket... steigen aus und sind sich nicht sicher, ob an der Bibliothek Änderungen erforderlich sind. Sie sagen also: „Vielleicht sollte ich v0 jetzt veröffentlichen und v1 später veröffentlichen, wenn es fertig genug ist.“ Dieser Artikel wird versuchen, Sie davon zu überzeugen, Version 1 von Anfang an zu veröffentlichen.
Es gibt einige Gründe, v1 zu veröffentlichen:
Mir scheinen die verschiedenen Gründe für v0 auf Folgendes zurückzuführen zu sein:
...
Aber nachdem ich diese interessante Ausgabe zum Semver-Repo gelesen habe: https://github.com/semver/semver/issues/221, ändert sich meine Meinung. Die Verwendung von Version 0.x deutet zwar auf Instabilität hin, aber die Realität ist, dass einige Bibliotheken instabil sind.
Was meine ich mit instabil? Es ist nicht so, dass die Bibliothek sich ändert (da diese Änderungen geplant und durch Hauptversionsnummern dargestellt werden können). Instabilität hängt mit der Verbreitung von Fehlern zusammen.
Fehler können sein:
Randbemerkung: Es gibt kaum einen Unterschied zwischen diesen beiden. Viele Fehler sind einfach Nichtübereinstimmungen oder Inkompatibilitäten zwischen APIs.
Also --- wie wahrscheinlich ist es, dass Ihre Bibliothek für Verbraucher kaputt geht? Nur Bibliotheksverwalter können diese Frage beantworten, und sie basiert oft auf Erfahrungen mit Problemen, die im Laufe der Zeit von Ihren Kunden angesprochen wurden.
Aber woher wissen Sie, wie instabil die Bibliothek sein wird, bevor Sie sie veröffentlichen? Vielleicht ist ein Zeitraum in 0.x eine gute Idee.
Aber wird die Bibliothek jemals aus 0.x herauskommen? Denn Trägheit ist eine echte Sache. Wirst du Zeit haben? Wird es den Ausschuss passieren? Das ist ein Risiko.
Andererseits besteht das Risiko bei der Veröffentlichung von 1.0.0 darin, dass Verbraucher bei häufigen Upgrades instabil werden. Es gibt jedoch Abhilfemaßnahmen. Erstens ist das Aktualisieren von Paketen bei Sperrdateien eine manuelle Aktion. Verbraucher sind von Problemen nicht betroffen, es sei denn, sie führen ein Upgrade durch. Und sie können einfach kein Upgrade durchführen oder das Upgrade auf einen späteren Zeitpunkt verschieben.
Neue Verbraucher landen möglicherweise auf einer fehlerhaften Version, das stimmt, aber das wäre auch im 0.x-System der Fall.
Bibliotheken wie Storybook sind (meiner Erfahrung nach) zwischen den Versionen nicht sehr stabil, verwenden jedoch immer noch nicht 0.x. Für das, was es wert ist.
Und dann gibt es noch den Bereich der transitiven Abhängigkeiten. Wenn Ihr Paket von einem anderen Paket abhängig ist, muss dieses andere Paket entscheiden, welcher Semver-Bereich verwendet werden soll. Ihre Stabilität wirkt sich auf die Stabilität dieses Pakets aus, daher steht mehr auf dem Spiel.
Entweder fixiert dieses Paket Ihre Bibliothek oder es verwendet einen breiteren Semver-Bereich. Im ersten Fall kommt es zu Duplikaten, die sich negativ auf die Leistung auswirken. Im zweiten Fall besteht die Gefahr der Instabilität. Ich würde wetten, dass die erste Option kein Erfolg ist und Instabilität immer ein Risiko darstellt.
Ich habe hier keine Antwort, aber der Hauptpunkt ist, dass, wenn Ihre Bibliothek von anderen Bibliotheken genutzt wird, die Risiken höher sind und Sie wahrscheinlich sicherstellen sollten, dass Ihre Bibliothek stabil ist.
Sie sollten also versuchen, eine stabile Bibliothek zu schreiben, aber wenn sie instabil ist, fahren Sie fort und verwenden Sie 0.x, bis sie stabil ist. Aber wenn Sie können, verwenden Sie 1.x.
Das obige ist der detaillierte Inhalt vonBeginnend mit `.0`. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!