Heim > Web-Frontend > js-Tutorial > Beginnend mit `.0`

Beginnend mit `.0`

Susan Sarandon
Freigeben: 2025-01-06 08:18:40
Original
908 Leute haben es durchsucht

Starting with semver `.0`

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:

  • SemVer 0.x-Versionen sind unterschiedlich
  • Seien Sie zuversichtlich und nehmen Sie es ernst
  • Projektstärke

Mir scheinen die verschiedenen Gründe für v0 auf Folgendes zurückzuführen zu sein:

  • Unsicherheit
  • Faulheit
  • Unverständnis/Mangel an Fähigkeiten

...

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:

  • regelmäßige Softwarefehler oder
  • Breaking Changes, die in einer Neben- oder Patchversion veröffentlicht wurden.

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!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage