Ich musste die Version meiner npm-App von 0.1 auf 0.0.1 ändern, damit npm dies nicht tut.
$ npm install
npm ERR! install Couldn't read dependencies
npm ERR! Error: invalid version: 0.1
npm ERR! at validVersion (/usr/local/Cellar/node/0.10.5/lib/node_modules/npm/node_modul
es/read-package-json/read-json.js:571:40)
npm ERR! at final (/usr/local/Cellar/node/0.10.5/lib/node_modules/npm/node_modules/read
-package-json/read-json.js:323:23)
npm ERR! at /usr/local/Cellar/node/0.10.5/lib/node_modules/npm/node_modules/read-packag
e-json/read-json.js:139:33
npm ERR! at cb (/usr/local/Cellar/node/0.10.5/lib/node_modules/npm/node_modules/slide/l
ib/async-map.js:48:11)
npm ERR! at /usr/local/Cellar/node/0.10.5/lib/node_modules/npm/node_modules/read-packag
e-json/read-json.js:301:48
npm ERR! at fs.js:207:20
npm ERR! at Object.oncomplete (fs.js:107:15)
npm ERR! If you need help, you may report this log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR! System Darwin 12.3.0
npm ERR! command "/usr/local/Cellar/node/0.10.5/bin/node" "/usr/local/bin/npm" "install"
npm ERR! cwd /Users/lust/Documents/ply/dev-server
npm ERR! node -v v0.10.5
npm ERR! npm -v 1.2.18
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /Users/lust/Documents/ply/dev-server/npm-debug.log
npm ERR! not ok code 0
Der Vollständigkeit halber hier der Arbeits-Json
$ cat package.json
{
"name": "ply",
"description": "ply server for local dev testing deployments",
"version": "0.0.1",
"private": true,
"dependencies": {
"express": "3.x"
}
}
Die Version war "0.1", als der Fehler auftrat.
Ist dies eine Art API / ABI-Kompatibilitäts-Versionskonzept, das 3 Sätze von Versionsnummern erfordert? Warum ist die Fehlermeldung dafür nicht freundlicher?
npm version
Befehl an. Sie können die semantische Version basierend auf den Haupt-, Neben- oder Patch-Ebenen erhöhen. Beispiele:npm version major
,npm version minor
,npm version patch
Antworten:
Ja, dies ist für die semantische Versionierung erforderlich. Dies ist das Versionsschema , das npm-Pakete verwenden. Hier ist der Ausschnitt aus
npm help json
:quelle
Einfache Antwort - verwenden
0.1.0
0.1
wird nicht funktionierenViel Spaß beim Codieren!
quelle
Ja, die kurze Antwort lautet "Sie müssen die semantische Versionierung verwenden".
Der Grund dafür ist jedoch, allen Benutzern von npm eine vernünftige, einheitliche Paketversion zur Verfügung zu stellen. Wenn eine Versionsnummer eines Pakets bekommen, haben Sie eine gewisse Maß an Vertrauen , dass der Autor semver versteht und es ordnungsgemäß verwendet wird .
quelle