قم بتحديث جميع تبعيات Node إلى أحدث إصدار لها

كيف تقوم بتحديث كل تبعيات npm المخزنة في ملف package.json ، إلى أحدث إصدار متاح لها؟

عند تثبيت حزمة باستخدامnpm install <packagename>، يتم تنزيل أحدث إصدار متاح من الحزمة ووضعه في ملفnode_modulesالمجلد ، ويتم إضافة الإدخال المقابل إلىpackage.jsonوpackage-lock.jsonالملفات الموجودة في مجلدك الحالي.

npmبحساب التبعيات وتثبيت أحدث إصدار متاح منها أيضًا.

لنفترض أنك قمت بتثبيتcowsay، أداة سطر أوامر رائعة تتيح لك قول بقرةأشياء.

عندما انتnpm install cowsay، يضاف هذا الإدخال إلىpackage.jsonملف:

{
  "dependencies": {
    "cowsay": "^1.3.1"
  }
}

وهذا مقتطف منpackage-lock.json، حيث أزلت التبعيات المتداخلة من أجل الوضوح:

{
  "requires": true,
  "lockfileVersion": 1,
  "dependencies": {
    "cowsay": {
      "version": "1.3.1",
      "resolved": "https://registry.npmjs.org/cowsay/-/cowsay-1.3.1.tgz",
      "integrity": "sha512-3PVFe6FePVtPj1HTeLin9v8WyLl+VmM1l1H/5P+BTTDkMAjufp+0F9eLjzRnOHzVAYeIYFF5po5NjRrgefnRMQ==",
      "requires": {
        "get-stdin": "^5.0.1",
        "optimist": "~0.6.1",
        "string-width": "~2.1.1",
        "strip-eof": "^1.0.0"
      }
    }
  }
}

الآن يخبرنا هذان الملفان أننا قمنا بتثبيت الإصدار1.3.1من cowsay ، وحكمنا للتحديثات هو^1.3.1، والتي لقواعد إصدار npmيعني أن npm يمكنه التحديث إلى التصحيح والإصدارات الثانوية:1.3.2و1.4.0وهكذا.

ولكن ليس للإصدارات الرئيسية التي تكسر التوافق ، مما يعني ، في هذا المثال ،2.0وأعلى.

إذا كان هناك إصدار ثانوي جديد أو إصدار تصحيح وقمنا بكتابتهnpm update، يتم تحديث الإصدار المثبت ، وpackage-lock.jsonملف مليء بجد مع الإصدار الجديد.

package.jsonلا يزال دون تغيير.

لاكتشاف إصدارات جديدة من الحزم ، عليك تشغيلnpm outdated.

فيما يلي قائمة ببعض الحزم القديمة في مستودع واحد لم أقم بتحديثها لفترة طويلة:

بعض هذه التحديثات هي إصدارات رئيسية. ادارةnpm updateلن يتم تحديث إصدار هؤلاء. لا يتم تحديث الإصدارات الرئيسية بهذه الطريقة أبدًا لأنها (بحكم التعريف) تُدخل تغييرات متقطعة ، وnpmتريد أن توفر لك المتاعب.

لتحديث جميع الحزم إلى إصدار رئيسي جديد ، قم بتثبيتnpm-check-updatesالحزمة على مستوى العالم:

npm install -g npm-check-updates

ثم قم بتشغيله:

ncu -u

سيؤدي هذا إلى ترقية جميع تلميحات الإصدار فيpackage.jsonملف إلىdependenciesوdevDependencies، لذلك يمكن لـ npm تثبيت الإصدار الرئيسي الجديد.

أنت الآن جاهز لتشغيل التحديث:

npm update

إذا قمت للتو بتنزيل المشروع بدون ملفnode_modulesوتريد تثبيت الإصدارات الجديدة اللامعة أولاً ، فقط قم بتشغيلها

npm install

تحميل مجانيكتيب Node.js


المزيد من دروس العقدة: