এনপিএম: একটি সংস্করণ "0.1" কেন অবৈধ?


92

এনপিএম এটি না করার জন্য আমাকে আমার এনএমপি অ্যাপের সংস্করণটি ০.০ থেকে ০.০ এ পরিবর্তন করতে হয়েছিল।

$ 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

সম্পূর্ণতার জন্য এখানে ওয়ার্কিং জসন

$ cat package.json
{
    "name": "ply",
    "description": "ply server for local dev testing deployments",
    "version": "0.0.1",
    "private": true,
    "dependencies": {
        "express": "3.x"
    }
} 

সংস্করণটি "0.1" ব্যবহৃত হত যখন এটি ত্রুটি করে।

এটি কি কোনও ধরণের এপিআই / এবিআইয়ের সামঞ্জস্য সংস্করণ ধারণার জন্য 3 সেট সংস্করণ সংখ্যার প্রয়োজন? ত্রুটি বার্তাটি কেন এটি আরও বন্ধুত্বপূর্ণ নয়?


4
npm versionকমান্ডটি একবার দেখুন । এটি আপনাকে প্রধান, গৌণ বা প্যাচ স্তরের উপর ভিত্তি করে শব্দার্থক সংস্করণ বৃদ্ধি করতে দেয়। উদাহরণ: npm version major, npm version minor,npm version patch
নূহ

উত্তর:


110

হ্যাঁ, অর্থপূর্ণ সংস্করণের জন্য এটি প্রয়োজনীয় , এটি এনপিএম প্যাকেজগুলির সংস্করণ স্কিম। এখানে থেকে স্নিপেটnpm help json এখানে :

নোড- সেমিভার দ্বারা সংস্করণটি পার্সেবল হতে হবে , যা নির্ভরতা হিসাবে এনপিএম সহ বান্ডিল। ( npm install semverনিজে এটি ব্যবহার করতে।)

এখানে এনএমপি-র সেমভার বাস্তবায়ন semver.org এর থেকে কীভাবে বিচ্যুত হয়:

  • সংস্করণগুলি "ভি" দিয়ে শুরু করতে পারে
  • হাইফেন দ্বারা মূল তিন-সংখ্যা সংস্করণ থেকে পৃথক করা একটি সংখ্যাসূচক আইটেমটিকে "বিল্ড" সংখ্যা হিসাবে ব্যাখ্যা করা হবে এবং সংস্করণটি বাড়িয়ে তুলবে। তবে, যদি ট্যাগটি হাইফেন দ্বারা পৃথক করা সংখ্যা না হয়, তবে এটি প্রাক-প্রকাশের ট্যাগ হিসাবে বিবেচিত হবে এবং ট্যাগ ছাড়াই সংস্করণের চেয়ে কম is সুতরাং,0.1.2-7 > 0.1.2-7-beta > 0.1.2-6 > 0.1.2 > 0.1.2beta

37
শীতল "এনপিএম এর শব্দার্থক সংস্করণ প্রয়োজন" এর প্রসঙ্গে ত্রুটিটির কিছু বলা উচিত।
স্টিভেন লু

++ ট্যাগ-রিলিজগুলির পছন্দের হ্যান্ডলিং লক্ষ করার জন্য
বেনকসামিন

@ স্টিভেনলু আমি মনে করি এটির সেমভার সংস্করণটিও উল্লেখ করা উচিত যা বর্তমানে 2.0.0 রয়েছে।
ডিউক্সিশিয়া


4

হ্যাঁ, সংক্ষিপ্ত উত্তরটি "আপনার অর্থার্থক সংস্করণ ব্যবহার করা দরকার"

তবে এর পিছনে যুক্তি হ'ল এনপিএম-এর সমস্ত ব্যবহারকারীদের জন্য একটি বুদ্ধিমান, অভিন্ন ইউনিফর্ম প্যাকেজ সংস্করণ সরবরাহ করা। কোনও প্যাকেজের সংস্করণ নম্বর পাওয়ার সময়, আপনার আত্মবিশ্বাসের কিছু স্তর রয়েছে যা লেখক সেমভারটি বুঝতে পারে এবং এটি সঠিকভাবে নিযুক্ত করছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.