هذا ليس خطأ حقًا ، ولكن رفعه لمناقشة التأثير المحتمل للتغييرات على npx
في بيئات CI.
npx mocha
Need to install the following packages:
mocha
Ok to proceed? (y)
npx -y mocha
للحصول على سلوك التثبيت التلقائي ، ولكن هذا يتطلب من المستخدمين تحديث البرامج النصية CI الخاصة بهم.
أيضًا ، أخطاء npx -y mocha
في npm @ 6 مع:
npx -y mocha
ERROR: You must supply a command.
Execute binaries from npm packages.
npx [options] <command>[@version] [command-arg]...
أعتقد أن ذلك سيعقد المنطق المطلوب في البرامج النصية CI عند التشغيل عبر إصدارات Node.js / npm المتعددة.
_فقط باستخدام الموكا كمثال. في Node.js ، نستخدم npx في تكوين إجراءات GH الخاص بنا ، والذي أظن أنه سيتعطل عند تحديث إجراءات GH لاستخدام إصدار Node.js يحتوي على
npx <module>
في بيئة CI.MylesBorinsrichardlau / سي سي
ذكر ruyadorno في محادثة فهل يمكن لأي شخص ربط سياق هذا القرار؟
مرحبًا BethGriggs شكرًا لإخبارنا
من الجدير بالذكر أنه بالنسبة للمحطات الطرفية غير التفاعلية ، سنقوم بالتصحيح (المرجع # 1936) npx
إلى WARN فقط بدلاً من الرمي ، لذا فإن أي مجموعة من خطوط أنابيب Unix ستتجنب أيضًا المطالبة / التأكيد:
npx mocha < /dev/null
كما هو مذكور أيضًا في قناة Slack: npm_config_yes=true npx mocha
هو الإصدار المتوافق npm6-7 منه
نشرنا اليوم 7.0.0-rc.4 الذي يتخطى الموجه ، لكنه يطبع تحذيرًا ، عند تشغيله في بيئة غير تفاعلية. بهذه الطريقة لا تزال تنبهك إلى أنه يتم تثبيت شيء ما ولكننا لا نكسر بيئات CI.
بالنسبة للبيئات التفاعلية ، يجب أن يؤدي الحل البديل أعلاه المهمة.
هل يمكنك إخبارنا إذا أدى ذلك إلى حل مشكلتكBethGriggs؟
نشرنا اليوم 7.0.0-rc.4 الذي يتخطى الموجه ، لكنه يطبع تحذيرًا ، عند تشغيله في بيئة غير تفاعلية. بهذه الطريقة لا تزال تنبهك إلى أنه يتم تثبيت شيء ما ولكننا لا نكسر بيئات CI.
بالنسبة للبيئات التفاعلية ، يجب أن يؤدي الحل البديل أعلاه المهمة.
هل يمكنك إخبارنا إذا أدى ذلك إلى حل مشكلتكBethGriggs؟
root<strong i="9">@localhost</strong> ~# npm install -g [email protected]
npm ERR! code MODULE_NOT_FOUND
npm ERR! Cannot find module 'agentkeepalive'
npm ERR! Require stack:
npm ERR! - /usr/local/lib/node_modules/npm/node_modules/make-fetch-happen/agent.js
npm ERR! - /usr/local/lib/node_modules/npm/node_modules/make-fetch-happen/index.js
npm ERR! - /usr/local/lib/node_modules/npm/node_modules/npm-registry-fetch/index.js
npm ERR! - /usr/local/lib/node_modules/npm/lib/utils/metrics.js
npm ERR! - /usr/local/lib/node_modules/npm/lib/npm.js
npm ERR! - /usr/local/lib/node_modules/npm/lib/cli.js
npm ERR! - /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2020-10-10T03_17_28_890Z-debug.log
هل يمكنك إخبارنا إذا أدى ذلك إلى حل مشكلتكBethGriggs؟
أعتقد أنه تمت معالجة هذا القلق لتقليل التأثير في بيئات CI ، شكرًا!
يتم الإغلاق منذ حل المشكلة الأصلية.
gengjiawen إذا كنت قادرًا على إعادة
FWIW ، لقد اصطدمت بهذا في TravisCI: https://travis-ci.com/github/kentcdodds/advanced-react-hooks/builds/191260988
أعتقد أن قلقBethGriggs الأصلي لا يزال يمثل مشكلة 😬
هممم 🤔 ربما يجب علينا أيضًا التحقق من البيئة باستخدام @npmcli/ci-detect
على التحقق من process.stdin.isTTY
nlf ؟
ضرب هذا أيضًا ، أدى إلى كسر جميع نصوص CI الخاصة بنا ... لماذا أدخلت تغيير كسر في إصدار ثانوي / تصحيح؟
بالنسبة لأي شخص لديه هذه المشكلة على Circle CI ، يمكنك تعيين متغير بيئة عالمي لتعيين متغير npm_config_yes
إلى true
لجميع وظائفك
FezVrasta جاء التغيير في 7.0.0 Semver-Major. اعتقدنا أننا أصلحنا مشكلة CI عن طريق التحقق من TTY ، ولكن يبدو أن هناك حالات حافة فقدناها. يبدو أن # 2047 مفتوح على أمل إصلاح هذا لمزيد من بيئات CI
نشرنا اليوم 7.0.6 والذي نأمل أن يحل هذا الأمر. نتخطى الآن المطالبة تمامًا إذا بدا أنك تعمل في بيئة CI.
أخبرنا إذا استمرت المشكلات!
يعمل لدينا الآن: https://github.com/testing-library/react-testing-library/pull/809/files
شكرا لك على الإصلاح السريع!
سؤال: عندما يطالب npx7 ثم يقوم المستخدم بتثبيت الحزمة المفقودة ،
التعليق الأكثر فائدة
نشرنا اليوم 7.0.6 والذي نأمل أن يحل هذا الأمر. نتخطى الآن المطالبة تمامًا إذا بدا أنك تعمل في بيئة CI.
أخبرنا إذا استمرت المشكلات!