الجزء المهم من جملتي كان:
بمجرد التحديث، تتحول الإشعارات المهملة إلى أخطاء، كما قلت ![]()
نعم، يمكن الوصول إليها عبر الخصائص المحقونة للمكونات، أو عن طريق استيراد الوحدات Site و User من discourse/models/user و discourse/models/site
الجزء المهم من جملتي كان:
بمجرد التحديث، تتحول الإشعارات المهملة إلى أخطاء، كما قلت ![]()
نعم، يمكن الوصول إليها عبر الخصائص المحقونة للمكونات، أو عن طريق استيراد الوحدات Site و User من discourse/models/user و discourse/models/site
آه نعم، بديل مفيد لتمريرها عبر المساعدين كمعلمات.
بالنسبة للمكون الإضافي الذي أقوم بتطويره وتشغيله ./bin/ember-cli ليس لدي ما يدعو للقلق، حيث أنني أستخدم ember-cli.
لكن ما يقلقني هو عشرات أو مئات الأشخاص الذين لن يكتشفوا ذلك حتى فوات الأوان، شخص لا يعرف جافاسكريبت من CSS أو مكون إضافي من مكون سمة، لا يحتاجون إلى القلق إلا إذا كان لديهم جافاسكريبت في مكون سمة.
ما أود الحصول عليه هو اختبار بسيط حتى يعرفوا ما إذا كان لديهم أي شيء يدعو للقلق. بالنسبة لهؤلاء الأشخاص، سأوصي بأن يقوموا بتشغيل خادم جديد، واستعادة قاعدة بياناتهم ومعرفة ما إذا كان أي شيء سينفجر. صحيح؟
أم يجب عليهم فقط تشغيل EMBER_CLI_PROD_ASSETS: 1، وإجراء إعادة بناء، وإذا انفجر، إيقافه مرة أخرى، ثم تشغيل خادم جديد لإصلاحه.
أعتقد أنه يمكنك الاستعلام لمعرفة ما إذا كانت هناك أي theme_fields من النوع html أو js:
هذا سيعمل، لكن إعداد خادم جديد بالكامل يبدو وكأنه الكثير من الجهد. بدلاً من ذلك، أوصي بما يلي:
. . . إلا إذا كنت قد أمضيت العام الماضي في تطوير أداة لجعل “من السهل” إنشاء خوادم جديدة؟ ![]()
إذًا، ما سيحدث لمن لا يولون أي اهتمام لهذه الأمور هو أنها ستتعطل عندما تصل نافذة ember-by-default، وعندئذٍ يمكنهم إيقاف تشغيل متغير البيئة هذا لمدة شهر أو شهرين آخرين (ومن المفترض أن يصلحوه) قبل أن يتوقف ذلك عن العمل.
لقد قمت باستعادة نسخة احتياطية إلى موقع جديد تم تمكين سمة Kanban عليه وهو يعرض أخطاء (لقد أبلغت عنها في موضوع Kanban)، وحاولت تعيين
EMBER_CLI_PROD_ASSETS: 0
ولا تزال عمليات إعادة البناء تقول:
لماذا يجب عليك القيام بذلك بانتظام:
https://github.com/browserslist/browserslist#browsers-data-updating
والتي أعتقد أنني أتعرف عليها على أنها قادمة من ember-cli. هل هناك أي طريقة لتعطيلها في المواقع الجديدة؟
إذا قمت بإعادة بناء موقع قديم، فهل سيحصل على الصورة الأساسية الجديدة ولن يتمكن من تعطيل ember-cli؟
هل هذا خطأ إملائي في رسالتك هنا أم خطأ إملائي في ملف yml الخاص بك؟ يجب أن يقرأ EMBER_CLI_PROD_ASSETS: 0
شكرًا لك! نعم، هذا خطأ إملائي، لكنني قمت بتصحيحه في ملف yml. لقد قمت بنسخه ولصقه بشكل صحيح في OP.
يبدو أن التحقق في الكود لم يتغير ولكني لست على دراية كبيرة بلغة روبي. هل الشرط المنطقي مع ENV['EMBER_CLI_PROD_ASSETS'] سيستخدم قيمة هذا المفتاح أم سيكون صحيحًا إذا كان هذا المفتاح موجودًا؟
إذا كان الأمر كذلك، فقد يكون الحل هو إزالة EMBER_CLI_PROD_ASSETS من ملف yml بدلاً من تعيينه إلى 0.
هذا لن ينجح، تحتاج إلى إزالة السطر.
. . . انتظر . . .
لم تكن أي من مشاكلي تتعلق بـ ember-cli، بل بإعداداتي الخاطئة، نظرًا لأن هذا كان تثبيتًا يحتوي على حاويتين ولم يتم تحديث web_only.yml عندما تم تحديث standalone.yml. إليك طلب سحب:
أصبح Ember CLI الآن هو الافتراضي لجميع تثبيتات Discourse. عندما تقوم بالتحديث التالي (إما عبر واجهة المستخدم /admin/upgrade، أو عبر ./launcher rebuild app)، سيتم تحويلك تلقائيًا إلى Ember CLI.
نقوم الآن بتشغيل Ember CLI في غالبية استضافاتنا المُدارة، لذلك لا نتوقع أي مشاكل كبيرة. ولكن إذا لاحظت أي شيء، فيرجى إنشاء موضوع هنا على Meta وسنقوم بالتحقيق.
لقد أعدت بناء موقع أمس فشل بسبب ember CLI وقمت بإصلاحه عن طريق إزالة EMBER_CLI_PROD_ASSETS=1.
في مرحلة مبكرة، حاولت تعطيل ember cli عن طريق تعيين EMBER_CLI_PROD_ASSETS=0 وأنا متأكد من أنه لا يزال يتضمن ember_cli وقال لي أحدهم أنه لا يمكنك تعطيله عن طريق تعيينه إلى 0 (وهو ما لم يكن منطقيًا، ولكنه بدا صحيحًا).
هذا يمثل تحديًا للمستضيفين الذاتيين الذين لديهم سمات قديمة ولا ينظرون أبدًا إلى وحدة تحكم JavaScript.
كان هذا صحيحًا، لكنني أصلحت المنطق بهذا الالتزام الأخير بحيث يعمل =0 كما هو متوقع. ومع ذلك، فإننا ننوي إزالة البيئة “القديمة” تمامًا في غضون أسابيع قليلة، لذا يرجى عدم استخدام =0 إلا على أساس قصير جدًا.
لقد أضفنا توافقًا رجعيًا للأخطاء الأكثر شيوعًا التي رأيناها عبر الاستضافة لدينا. على سبيل المثال، أضاف هذا الالتزام قبل بضعة أسابيع توافقًا رجعيًا لـ Discourse.User و Discourse.SiteSettings. هذا الالتزام أصلح بعض المشكلات للسمات ذات عمليات التهيئة غير القياسية.
نريد أن نجعل هذا الطرح سلسًا قدر الإمكان، لذلك إذا واجهت أخطاء في الأسبوع الماضي أو نحو ذلك، فيرجى إخبارنا بالخطأ الدقيق، والرمز الذي تسبب فيه.
أوه. يا للروعة. هذا منطقي. (إنه يعمل كما كنت أعتقد أنه يجب أن يعمل طوال الوقت. ولست مجنونًا لتذكر أنني قيل لي إنه لا يعمل كما كنت أعتقد أنه يجب أن يعمل. هذه أشياء رائعة!).
أجد صعوبة بالغة في معرفة ذلك (من المحتمل بسبب الجهل). عندما أنقر على الشيء الذي أعتقد أنه يجب أن يوضح لي ما الذي يسبب الخطأ، فإن ما أحصل عليه هو الرمز الذي يبدو أنه الرمز الذي يختبر الانحلال، وليس الرمز الذي يظهره. سأبذل قصارى جهدي لإرسال بعض الأمثلة قريبًا.
إذا كنت بحاجة إلى مساعدة في معرفة ذلك، فإن موضوع Support مع لقطة شاشة للخطأ سيكون نقطة انطلاق جيدة - عندها يمكننا المساعدة في تصحيح الأخطاء من هناك. ومن المحتمل أن يكون شخص آخر قد رأى خطأً مشابهًا، وقد يتعرف على الأعراض. ![]()
والآن للمرحلة النهائية من هذه الملحمة: تم تعطيل نظام البناء القديم الآن. ستقوم جميع عمليات تثبيت Discourse بتجميع الأصول باستخدام Ember CLI.
Anyone still using `EMBER_CLI_PROD_ASSETS=0` in development or production will b…
سيؤثر هذا التغيير فقط على الأشخاص الذين قاموا بتعيين EMBER_CLI_PROD_ASSETS=0 عن قصد في تكوينهم. في هذه الحالة، سيتم طباعة تحذير أثناء البناء، وسيتم استخدام Ember CLI.