أنا الآن على أحدث مستوى من الالتزام (105634435f). أقوم بترقية Discourse تقريبًا كل أسبوع. عادةً لا توجد مشاكل على الإطلاق. لكن الآن فشلت عدة مكونات للمظهر في التحميل. وبعبارة “فشل التحميل” أعني أن المكونات لم تعد تظهر. لا يُظهر سجل الميزات في لوحة الإدارة أي شيء غريب يمكنني ربطه بهذه المشكلة. تبدو العديد من هذه الأخطاء عرضية، وقد ظهرت بالفعل على مدى فترة زمنية أطول. مثل أخطاء MimeType النادرة ووقت انتظار DNS لـ Google، مرة أخرى، تحدث نادرًا.
هذه الإضافات فشلت في التحميل بعد الترقية:
DiscoTOC
discourse gifs
Discourse Jitsi
Hamburger Theme Selector
Nav Links Component
Tag Icons
الوحيدة التي تعمل هي:
Discourse Kanban
Easy Footer
إذا كانت هناك حاجة لمزيد من المعلومات (وأعتقد أن هناك حاجة)، فسأكون سعيدًا بتزويدها لكم، يرجى التوجيه. هذه المشاركة هي أكثر من مجرد إشارة إلى أن هناك خطأ ما، ومن المرجح أنه تغيير حديث. آسف على قلة المعلومات…
لإضافة ما قاله فالكو، سيتم إعادة إضافة التغيير خلال الأيام القليلة القادمة، ولكن قبل إعادة إضافته، سأتحقق من أن جميع قوالبنا الرسمية ومكوناتنا متوافقة مع هذا التغيير. لذا، إذا بدأت في ملاحظة المشكلة مرة أخرى مع القوالب أو المكونات الرسمية، فإن تحديثها سيحل المشكلة.
سأقوم أيضًا بنشر منشور يشرح كيفية جعل القوالب والمكونات متوافقة للأشخاص الذين لديهم مكونات مخصصة أو خاصة على مواقعهم.
أحد سماتنا (سمة بانر) تم استبدالها بالكامل بصيغتها الأولية، وقد ضاع كل التغييرات التي قمنا بها. لم يكن هناك تحديث للسمة منذ عام 2018. هل سنتمكن من استعادة التغييرات؟
لا أعتقد أن هذه المشكلة تتعلق بهذه الميزة التي تم التراجع عنها، فقد واجهت نفس الحالة مع مكون قبل بضعة أسابيع، ربما في وقت ميزة مؤشر التفرع (والتي تتعلق بالإضافات لذا ربما غير ذات صلة أيضًا، لكنني اضطرت فقط لتفرع المكون لتعديل الأمور).
نعم، هذا التغيير هو سبب المشكلة التي واجهتها في نسختك. أحتاج إلى الدخول في بعض تفاصيل نظام النسخ لشرح ما حدث. هناك طريقتان لإضافة JavaScript إلى نسخة/مكون في Discourse: الأولى تستخدم وسوم <script type="text/discourse-plugin"> داخل ملفات head_tag.html، والأخرى تستخدم ملفات JavaScript مستقلة توجد داخل مجلد يسمى javascripts في نسختك/مكونك.
قبل تغيير اليوم، كان يتم معالجة JavaScript داخل وسوم السكربت الخاصة تلك بطريقة تعتمد على المتغير العام Discourse، وهو غير متاح عند التطوير على Discourse باستخدام Ember CLI. في التغيير الذي دفعته اليوم، جعلت Discourse تعامل JavaScript داخل هذه الوسوم كما لو كانت قادمة من ملفات مستقلة، مما سمح لنا بتجنب استخدام المتغير العام Discourse.
الآن، أحد “الآثار الجانبية” لمعاملة وسوم JavaScript كملفات هو أن JavaScript داخل هذه الوسوم سيكون له توجيه "use strict"، وهو ما لم يكن موجودًا من قبل، وهذا التوجيه يسبب الأخطاء التي رأيتها:
أنصحك بالاحتفاظ بجميع التغييرات التي أجريتها اليوم في نسختك، لأن وسوم JavaScript ستُعامل مرة أخرى كملفات مستقلة عندما أضيف تغييراتي مرة أخرى.
نعم، لقد اختفت جميع التغييرات، بدءًا من تعديلات CSS و JS وحتى تغييرات النص ؛ أي أن مظهري عاد إلى تنسيقه الأولي مع نصوص مثل “Lorem ipsum dolor sit amet …”. على أي حال، سأستخدم النسخة الاحتياطية، لكن كان الأمر غريبًا أن يحدث هذا بعد الترقية.