Less.js: 3.11.0 لا يمكن العثور على الوحدة النمطية "tslib"

تم إنشاؤها على ١٠ فبراير ٢٠٢٠  ·  19تعليقات  ·  مصدر: less/less.js

لا يمكن العثور على الوحدة النمطية 'tslib' 3.11.0

high priority

التعليق الأكثر فائدة

كان 3.11.0 تحديثًا كبيرًا.
كان يجب أن يكون 4.0.0

ال 19 كومينتر

يمكنني الاعتراف بالمشكلة. جاء مع الإصدار الأحدث ، 3.10.3 يعمل بشكل جيد. ربما يمكن @ ماثيو دين التحقق من الدمج الأخير؟

خطوات إعادة الإنتاج باستخدام عامل الإرساء

  1. انشاء مجلد جديد
  2. ضع بعضًا test.less يحتوي على كود أقل صالحًا هناك
  3. أنشئ Dockerfile بالمحتوى التالي:
FROM buildpack-deps:buster

COPY test.less /

# install npm
ENV HOME /root
RUN curl -sL https://deb.nodesource.com/setup_10.x | bash -
RUN apt-get install -y nodejs

# install less and compile something
RUN npm install -g less
WORKDIR /
RUN lessc test.less test.css
  1. استدعاء docker build . في المجلد

سيؤدي هذا إلى الخطأ التالي:

Step 6/8 : RUN npm install -g less
 ---> Running in a76855c18efa
/usr/bin/lessc -> /usr/lib/node_modules/less/bin/lessc
+ [email protected]
added 60 packages from 123 contributors in 4.306s
Removing intermediate container a76855c18efa
 ---> b78508030649
Step 7/8 : WORKDIR /
 ---> Running in 6cca70d0d858
Removing intermediate container 6cca70d0d858
 ---> d812408c6ef8
Step 8/8 : RUN lessc test.less test.css
 ---> Running in 6c8ef5fc9408
internal/modules/cjs/loader.js:638
    throw err;
    ^

Error: Cannot find module 'tslib'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
    at Function.Module._load (internal/modules/cjs/loader.js:562:25)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/usr/lib/node_modules/less/bin/lessc:9:13)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
The command '/bin/sh -c lessc test.less test.css' returned a non-zero code: 1

يمكن أيضًا إعادة إنتاجه باستخدام grunt-Contrib-less ("grunt-Contrib-less": "2.0.0") الذي يستخدم "less": "^ 3.0.4".
تم الإبلاغ عن مشكلة بلع أيضا.

كان 3.11.0 تحديثًا كبيرًا.
كان يجب أن يكون 4.0.0

تسببت أيضًا في حدوث أخطاء في مجموعة اختبارات Yarn E2E (نستخدم ذلك لمراقبة المشاريع المختلفة):
https://github.com/yarnpkg/berry/runs/436357016

أظن أن المشروع يحتاج فقط إلى إضافة تبعية إلى tslib - يميل الناس إلى نسيان إدراجها بشكل صريح لأن ملفات المصدر لا تشير إليه ، فقط عناصر البناء تفعل ذلك.

حسنا تبادل لاطلاق النار ، آسف للجميع. كان البناء يجتاز اختبارات الوحدة ، لذلك أعتقد أنه كان هناك اختبار مفقود هنا.

تضمين التغريدة

كان 3.11.0 تحديثًا كبيرًا. كان يجب أن يكون 4.0.0

ليس حقا ، من حيث semver. يجب ألا تكون هناك تغييرات غير متوافقة مع الإصدارات السابقة ، فقط تغييرات على بعض إعدادات البناء. سوف أتحقق من ذلك قريبا.

تضمين التغريدة

أظن أن المشروع يحتاج فقط إلى إضافة تبعية إلى tslib - يميل الناس إلى نسيان إدراجه صراحةً لأن ملفات المصدر لا تشير إليه ، فقط عناصر البناء تفعل ذلك.

ربما يكون سبب حدوث ذلك هو أن tslib قد يكون تبعية ضمنية (تبعية تبعية) في devDependencies. لذلك ستجتاز الاختبارات ولكن لن يقوم بتثبيتها npm install عادي.

+1 ، رؤية هذا أيضًا باستخدام الفاصلة العليا. يبدو أنه سيتم إصلاح هذا بسرعة ، شكرًا لك.

جانبا ، إذا كان أي شخص يعرف طريقة موثوقة لمحاكاة / اختبار تثبيت مكتبة باعتباره تبعية وتشغيل الاختبارات دون الحاجة إلى مسح / إعادة تثبيت وحدات العقدة ، فأنا أحب سماع ذلك.

@ Matthew-dean Fwiw هذا النوع من المشكلات هو أحد أسباب تقديمنا Plug'n'Play في الغزل. إنه يلقي استثناءات عندما تقوم الحزم بوصول غير آمن (مثل tslib هنا) بدلاً من السماح لهم بالنجاح عن طريق الخطأ. بالطبع يتطلب استخدام الغزل نظرًا لأن npm لا يدعمه ، لذلك قد لا يكون ما تبحث عنه

لإعطائك مثالاً ، هذا ما أبلغ عنه الاختبار الذي ربطته:

image

هل يمكن لأي شخص التحقق من أن هذا الإصدار يعمل على إصلاح الأشياء؟ https://github.com/less/less.js/tree/release-3.11.1

يمكن أن يكون لديك مجلدات node_modules متداخلة في أي مكان. لذلك يمكنك وضع واحد في
اختبارك / مجلدك الذي يستخدم فقط لهذا الغرض ويكون أكثر ملاءمة
لتفجير. نفعل هذا مع الفاصلة العليا.

يوم الاثنين 10 فبراير 2020 الساعة 4:37 مساءً Matthew Dean [email protected]
كتب:

هل يمكن لأي شخص التحقق من أن هذا الإصدار يعمل على إصلاح الأشياء؟
https://github.com/less/less.js/tree/release-3.11.1

-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/less/less.js/issues/3469؟email_source=notifications&email_token=AAAH27IM5UVBLOEMPE5BJR3RCHCJBA5CNFSM4KSHHJ62YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LN84
أو إلغاء الاشتراك
https://github.com/notifications/unsubscribe-auth/AAAH27OZWO622K5JYHEYNCLRCHCJBANCNFSM4KSHHJ6Q
.

-

توماس بوتل | الرئيس التنفيذي للتكنولوجيا
مفاصل القلب | apostrophecms.com | هو / هو / له

داخل ذلك يمكنك الحصول على رابط رمزي للعثور على المجلد الرئيسي للوحدة النمطية
الاسم الصحيح.

يوم الإثنين 10 فبراير 2020 الساعة 5:02 مساءً كتب Tom Boutell [email protected] :

يمكن أن يكون لديك مجلدات node_modules متداخلة في أي مكان. لذلك يمكنك وضع واحد في
اختبارك / مجلدك الذي يستخدم فقط لهذا الغرض ويكون أكثر ملاءمة
لتفجير. نفعل هذا مع الفاصلة العليا.

يوم الاثنين 10 فبراير 2020 الساعة 4:37 مساءً Matthew Dean [email protected]
كتب:

هل يمكن لأي شخص التحقق من أن هذا الإصدار يعمل على إصلاح الأشياء؟
https://github.com/less/less.js/tree/release-3.11.1

-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/less/less.js/issues/3469؟email_source=notifications&email_token=AAAH27IM5UVBLOEMPE5BJR3RCHCJBA5CNFSM4KSHHJ62YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LN84
أو إلغاء الاشتراك
https://github.com/notifications/unsubscribe-auth/AAAH27OZWO622K5JYHEYNCLRCHCJBANCNFSM4KSHHJ6Q
.

-

توماس بوتل | الرئيس التنفيذي للتكنولوجيا
مفاصل القلب | apostrophecms.com | هو / هو / له

-

توماس بوتل | الرئيس التنفيذي للتكنولوجيا
مفاصل القلب | apostrophecms.com | هو / هو / له

@ ماثيو دين ... كيف يمكنني تغيير ملف package.json الخاص بي لتجربة إصدارك الجديد؟ ما زلت قادرًا على سحب 3.11.0 لأسفل فقط إذا لم أحدد إصدارًا.

@ بوتيل ليس هذا هو الوصف الأكثر وضوحًا. هل تقصد إعداد نوع من الحزمة الفرعية في الريبو؟ أتساءل كيف تفعل ذلك بطريقة لن تواجه خوارزمية دقة Node الأصلية node_modules .

تضمين التغريدة

https://docs.npmjs.com/files/package.json#git -urls-as-Depencies

همم. لا ، أنت على حق ، هذا لا يناسب وضعك تمامًا. الوحيد
الشيء المؤكد الذي يمكنني التفكير فيه هو إعداد وكيل محلي npm فيه
هذه الوحدة المعينة راضية عن موقعك ، واختبار npm
تثبيت ضد ذلك. ليس من الصعب في الواقع القيام بوكلاء npm محليين مثل هذا
يأتي من قبل ولكن نوع من الكثير.

يوم الإثنين 10 فبراير 2020 الساعة 5:10 مساءً Matthew Dean [email protected]
كتب:

boutell https://github.com/boutell ليس هذا هو الأكثر وضوحًا
وصف. هل تقصد إعداد نوع من الحزمة الفرعية في الريبو؟
أتساءل كيف تفعل هذا بطريقة لن تصادف والد Node
خوارزمية دقة node_modules.

jmwolfe https://github.com/jmwolfe

https://docs.npmjs.com/files/package.json#git -urls-as-Depencies

-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/less/less.js/issues/3469؟email_source=notifications&email_token=AAAH27O3T4O2Z7VPTBA6HYLRCHGEPA5CNFSM4KSHHJ62YY3PNVWWK3TUL52HS4DFVREXG43VMVBw63
أو إلغاء الاشتراك
https://github.com/notifications/unsubscribe-auth/AAAH27JP6LEUZIENWBEWERLRCHGEPANCNFSM4KSHHJ6Q
.

-

توماس بوتل | الرئيس التنفيذي للتكنولوجيا
مفاصل القلب | apostrophecms.com | هو / هو / له

@ Matthew-dean - استخدام هذا في الحزمة الخاصة بي. json يعمل على إصلاح gulp-less الذي يعتمد على أقل:

"dependencies": {
    "less": "git://github.com/less/less.js.git#afc9b86"
}

# npm list less
[email protected] C:\SVN\CMGR\branches\cmgr_pmm2\ContentManager\ContentManager            
+-- [email protected]                                                                           
| `-- [email protected]  deduped (git://github.com/less/less.js.git#afc9b8606272a01bf4392f71e4d9db59d06fddb9)                                                                                     
`-- [email protected]  (git://github.com/less/less.js.git#afc9b8606272a01bf4392f71e4d9db59d06fddb9)

يتم تحميل ملف gulpfile.js الناتج بشكل مثالي.

ملاحظة. gulp-less وبعض الحزم الأخرى موجودة في devDependencies.

رائع شكرا لك! هل هذا منشور إلى npm؟

يوم الثلاثاء 11 فبراير 2020 الساعة 12:53 صباحًا Matthew Dean [email protected]
كتب:

مغلق # 3469 https://github.com/less/less.js/issues/3469 عبر 842386b
https://github.com/less/less.js/commit/842386b8db5cb5afa4edf5a4c81d40bcbf47a6a2
.

-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/less/less.js/issues/3469؟email_source=notifications&email_token=AAAH27NPPJXO4IOUM2I2J3LRCI4NLA5CNFSM4KSHHJ62YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOWRJHA5I#event-3025301621 ،
أو إلغاء الاشتراك
https://github.com/notifications/unsubscribe-auth/AAAH27I5LOTWY22VMC57QFLRCI4NLANCNFSM4KSHHJ6Q
.

-

توماس بوتل | الرئيس التنفيذي للتكنولوجيا
مفاصل القلب | apostrophecms.com | هو / هو / له

@ بوتيل نعم هو كذلك. لقد تحققت للتو.

👍 شكرا على كل ما تفعله!

يوم الثلاثاء 11 فبراير 2020 الساعة 12:18 مساءً Jesse Wolfe [email protected]
كتب:

boutell https://github.com/boutell نعم هو كذلك. لقد تحققت للتو.

-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/less/less.js/issues/3469؟email_source=notifications&email_token=AAAH27P3RR4ZWL6PXZHC7N3RCLMXRA5CNFSM4KSHHJ62YY3PNVWWK3TUL52HS4DFVREXG43VMVBW47
أو إلغاء الاشتراك
https://github.com/notifications/unsubscribe-auth/AAAH27MKPLJTLBZ5NLHZWALRCLMXRANCNFSM4KSHHJ6Q
.

-

توماس بوتل | الرئيس التنفيذي للتكنولوجيا
مفاصل القلب | apostrophecms.com | هو / هو / له

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات