Huldigt npm neuere Vorabversionen in sherver?

8

In meiner App können Benutzer Abhängigkeiten installieren, indem sie das Standardverhalten von npm install - bog ausführen.

Allerdings habe ich ein Paket, das sich häufig ändert, und in dem Bemühen, nicht mit einer lächerlich großen Versionsnummer wie 0.1.12324 zu enden, stolperte ich über das Konzept der Vorabversionen.

Wie behandelt npm Vorabnummern beim Ausführen von npm install ?

Angenommen, mein Paket packageA hat eine Versionsnummer von 0.1.1-r1234 und meine Benutzer haben einen Abhängigkeitshemver von ~0.1.1 :

Ich weiß, dass ein neuer Benutzer ohne packageA automatisch diese Version ( 0.1.1-r1234 ) installiert hat.

Was passiert, wenn jemand packageA bereits installiert hat, von der Version 0.1.1-r1233 ? Kann npm install die neuere Vorabversion installieren?

    
Julian H. Lam 28.11.2013, 23:14
quelle

1 Antwort

5

Ich schien meine eigene Frage beantwortet zu haben. Von der Hauptseite von semver.org :

  

Die Priorität für zwei Vorabversionen mit der gleichen Dur-, Minor- und Patch-Version MUSS bestimmt werden, indem jeder Punkt-getrennte Identifizierer von links nach rechts verglichen wird, bis eine Differenz wie folgt gefunden wird: Identifikatoren, die nur aus Ziffern bestehen, werden numerisch verglichen Bezeichner mit Buchstaben oder Bindestrichen werden in der ASCII-Sortierreihenfolge lexikalisch verglichen. Numerische Bezeichner haben immer einen niedrigeren Vorrang als nicht-numerische Bezeichner. Ein größerer Satz von Vorab-Freigabe-Feldern hat eine höhere Priorität als eine kleinere Menge, wenn alle vorhergehenden Kennungen gleich sind. Beispiel: 1.0.0-alpha & lt; 1.0.0-alpha.1 & lt; 1.0.0-alpha.β & lt; 1.0.0-Beta & lt; 1.0.0-beta.2 & lt; 1.0.0-beta.11 & lt; 1.0.0-rc.1 & lt; 1.0.0.

    
Julian H. Lam 29.11.2013, 02:42
quelle