Semver-Rechner

Parse, vergleiche, prüfe Ranges, erhöhe und korrigiere semantische Versionen in deinem Browser. Eingegebene Versionen bleiben auf deinem Gerät.

Eingegebene Versionen und Ranges werden lokal in deinem Browser ausgewertet und nie hochgeladen.

Brauchst du eine schnelle eindeutige ID? Probiere den UUID-Generator.

Über Semver-Rechner

Dieser Semver-Rechner ist ein Werkzeugkasten für Semantic Versioning für alles, was du mit Versionsnummern tust. Parse eine Version wie 1.2.3-beta.1+build.42 in ihre Major-, Minor-, Patch-, Prerelease- und Build-Metadaten; vergleiche zwei Versionen, um zu sehen, welche neuer ist und auf welcher Ebene sie sich unterscheiden; prüfe, ob eine Version einen npm-Range wie ^1.2.3, ~1.2, 1.x oder >=1.0.0 <2.0.0 erfüllt; erhöhe eine Version um Major, Minor, Patch oder einen beliebigen Prerelease-Schritt; und korrigiere einen losen String wie v1.2 zu einem sauberen semver. Er ist für Entwickler, Paketautoren und Release-Ingenieure gemacht, die täglich über Abhängigkeits-Ranges nachdenken. Angetrieben von derselben semver-Bibliothek, die npm verwendet, läuft jede Berechnung in deinem Browser, sodass die eingegebenen Versionen auf deinem Gerät bleiben.

Funktionen

So verwendest du Semver-Rechner

  1. Wähle einen Modus: Parse, Vergleichen, Range, Erhöhen oder Korrigieren.
  2. Tippe eine Version (und je nach Modus eine zweite Version oder einen Range).
  3. Lies die Live-Ergebnisse in den Info-Zeilen und Badges unter den Eingaben.
  4. Kopiere den Wert, den du brauchst, etwa die erhöhte Version oder die Diff-Ebene.

Beispiel

Eingabe

version: 1.5.0
range:   ^1.2.3

Ausgabe

1.5.0 satisfies ^1.2.3  ✓
1.6.0 → pass   2.0.0 → fail

Ein Caret-Range ^1.2.3 erlaubt alles bis zur, aber nicht einschließlich der nächsten Major-Version (2.0.0).

Häufige Fehler & Fehlerbehebung

Häufig gestellte Fragen

Was erlaubt der Range ^1.2.3?
Ein Caret-Range ^1.2.3 erlaubt jede Version, die die ganz linke Nicht-Null-Stelle nicht ändert, sodass er 1.2.3 bis ausschließlich 2.0.0 trifft. Für 0.x-Versionen verschärfen sich die Regeln: ^0.2.3 erlaubt 0.2.3 bis 0.3.0.
Wie wird eine Prerelease-Version mit einem stabilen Release verglichen?
Ein Prerelease hat eine niedrigere Präzedenz als sein zugehöriges Release, sodass 1.0.0-rc.1 kleiner als 1.0.0 ist. Prereleases werden Feld für Feld verglichen: Bezeichner werden sortiert, und numerische Bezeichner rangieren unter längeren oder alphanumerischen.
Was ist der Unterschied zwischen ~1.2 und ^1.2?
Tilde ~1.2 erlaubt Änderungen auf Patch-Ebene innerhalb von 1.2 (>=1.2.0 <1.3.0), während Caret ^1.2 Minor- und Patch-Änderungen bis zur nächsten Major-Version erlaubt (>=1.2.0 <2.0.0). Verwende den Range-Modus, um Beispielversionen bestehen oder durchfallen zu sehen.
Wie behandelt dieser Semver-Rechner Build-Metadaten?
Build-Metadaten nach einem Pluszeichen (zum Beispiel +build.42) werden geparst und angezeigt, aber beim Vergleich der Präzedenz ignoriert, sodass 1.0.0+a und 1.0.0+b als gleiche Versionen gelten.
Was macht das Korrigieren einer Version?
Die Korrektur verwandelt einen losen String in ein gültiges semver, indem sie die erste major.minor.patch-Sequenz findet, die sie kann. So wird v1.2 zu 1.2.0, 1.2.3.4 zu 1.2.3 und release-3.1 zu 3.1.0; fehlende Teile werden auf null gesetzt.
Um welche Release-Typen kann ich erhöhen?
Du kannst um major, minor, patch, premajor, preminor, prepatch oder prerelease erhöhen. Die pre-Varianten starten eine Prerelease-Linie auf dem gewählten Teil, zum Beispiel ergibt ein premajor auf 1.2.3 die 2.0.0-0.

Verwandte Tools

Alle ArrayKit-Tools