الوصول إلى الإصدار الرئيسي 100 من متصفِّح Chrome وFirefox قريبًا

سيتم إجراء تغييرات على سلسلة وكيل المستخدم والاستراتيجيات التي يتّبعها Chrome وFirefox للحدّ من تأثيرها وكيفية تقديم المساعدة.

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

سلسلة وكيل المستخدم

وكيل المستخدم (UA) هو سلسلة ترسلها المتصفِّحات في عناوين HTTP، حتى تتمكّن الخوادم التعرف على المتصفح. ويمكن الوصول إلى السلسلة أيضًا من خلال JavaScript باستخدام navigator.userAgent يتم تنسيقها عادةً على النحو التالي:

<browser_name>/<major_version>.<minor_version>

على سبيل المثال، أحدث إصدارات المتصفحات في وقت النشر هذه المشاركة هي:

  • متصفِّح Chrome: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.54 Safari/537.36
  • Firefox: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:96.0) Gecko/20100101 Firefox/96.0
  • سفاري: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Safari/605.1.15

الإصدار الرئيسي 100: رقم إصدار مكوّن من ثلاثة أرقام

يُعد الإصدار 100 الرئيسي إنجازًا كبيرًا لكل من Chrome وFirefox. تحتوي أيضًا على إمكانية التسبب في تعطُّل المواقع الإلكترونية عند انتقالنا من نظامٍ رقمي إلى رقم الإصدار المكوّن من ثلاثة أرقام. يستخدم مطورو الويب جميع أنواع التقنيات تحليل هذه السلاسل، من الرمز المخصص إلى استخدام مكتبات تحليل وكيل المستخدم، والذي يمكن استخدامه بعد ذلك لتحديد منطق المعالجة المقابل. تشير رسالة الأشكال البيانية سيبلغ قريبًا وكيل المستخدم وأيّ آليات أخرى للإبلاغ عن إصدار رقم الإصدار المكون من ثلاثة أرقام.

المخططات الزمنية للإصدار 100

سيتم طرح الإصدار 100 من المتصفِّح في إصدارات تجريبية أولاً (متصفِّح Chrome إصدار Canary وFirefox Nightly ثم الإصدارات التجريبية ثم إلى الإصدارات الثابتة. .

المتصفح المخطط الزمني
Chrome (الإصدار الجدول الزمني) 29 آذار (مارس) 2022
Firefox (إصدار الجدول الزمني) 3 أيار (مايو) 2022

لماذا يمكن أن يكون رقم الإصدار المكوَّن من ثلاثة أرقام مشكلة؟

عندما وصلت المتصفحات إلى الإصدار 10 لأول مرة قبل أكثر بقليل من 12 عامًا، تمّ رصد عدّة مشاكل باستخدام مكتبات تحليل وكيل المستخدم، إذ إن رقم الإصدار الرئيسي رقم إلى اثنين.

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

ما الذي تفعله المتصفحات حيال ذلك؟

ويجري كل من Firefox وChrome تجاربا كانت فيها الإصدارات الحالية من وصول تقرير المتصفح إلى الإصدار 100 الرئيسي لاكتشاف تعطل موقع الويب. وقد أدّى ذلك إلى بعض المشاكل التي تم الإبلاغ عنها والتي سبق إصلاح بعضها. وسيستمر تنفيذ هذه التجارب إلى أن يتم طرح الإصدار 100.

هناك أيضًا استراتيجيات احتياطية للتخفيف، في حالة الإصدار 100 في القنوات الثابتة تسبب أضرارًا للمواقع الإلكترونية أكثر من المتوقع.

تخفيف أثر Chrome

في Chrome، الخطة الاحتياطية هي استخدام علامة لتجميد الإصدار الرئيسي عند 99 والإبلاغ عن رقم الإصدار الرئيسي الحقيقي في الجزء الثانوي من سلسلة وكيل المستخدم (لقد سبق أن تم تضمين الرمز هبطت).

يتّبع إصدار Chrome كما تم الإبلاغ عنه في سلسلة وكيل المستخدم النمط <major_version>.<minor_version>.<build_number>.<patch_number>

وإذا تم استخدام الخطة الاحتياطية، فستبدو سلسلة وكيل المستخدم كما يلي التالي:

99.101.4988.0

يُجري Chrome أيضًا تجارب للتأكّد من الإبلاغ عن قيمة مكوّنة من ثلاثة أرقام. في الجزء الثانوي من السلسلة، لأن تم الإبلاغ عن القيمة 0 في إصدار ثانوي في سلسلة وكيل المستخدم على Chrome لمدة طويلة جدًا الوقت. سيقرر فريق Chrome ما إذا كان سيلجأ إلى خيار الاحتفاظ بنسخة احتياطية بناءً على عدد وشدة المشكلات التي تم الإبلاغ عنها.

الحد من تأثير Firefox

في Firefox، ستعتمد الاستراتيجية على مدى أهمية الأعطال. متصفح Firefox يمتلك آلية تدخلات الموقع. يمكن لفريق Mozilla webcompat إصلاح المواقع الإلكترونية المعطلة سريعًا باستخدام هذا الآلية. إذا كتبت about:compat في شريط عناوين URL في Firefox، يمكنك معرفة ما يتم إصلاحها حاليًا. إذا تعطّل أحد المواقع وكان الإصدار الرئيسي 100 على فيمكن حل هذه المشكلة من خلال إرسال الإصدار 99 بدلاً من ذلك.

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

لكل استراتيجية تضيف مستوى تعقيدًا إلى سلسلة وكيل المستخدم علامة تأثير كبير على النظام البيئي. دعونا نعمل معًا لتجنب حدوث مخاطر أخرى السلوك.

كيف يمكنك المساعدة؟

في Chrome وFirefox Nightly، يمكنك ضبط المتصفح للإبلاغ عن الإصدار 100 الآن والإبلاغ عن أي مشكلات تواجهها.

ضبط متصفِّح Chrome للإبلاغ عن الإصدار الرئيسي باعتباره 100

  1. الانتقال إلى chrome://flags/#force-major-version-to-100
  2. اضبط الخيار على Enabled.

اضبط Firefox Nightly للإبلاغ عن الإصدار الرئيسي كـ 100.

  1. افتح قائمة "الإعدادات" في Firefox Nightly.
  2. البحث عن "Firefox 100" ثم راجع "وكيل مستخدم Firefox 100" سلسلة" الخيار.

تقارير الاختبار والملفات

  • إذا كنت مشرفًا على المواقع الإلكترونية، اختبِر موقعك الإلكتروني باستخدام Chrome. وFirefox 100. مراجعة رمز تحليل وكيل المستخدم والمكتبات للتأكد من قدرتهم على التعامل مع أرقام الإصدارات المكونة من ثلاثة أرقام. لدينا قمتَ بتجميع بعض الأنماط التي تتعطّل حاليًا.
  • في حال تطوير مكتبة تحليل وكيل المستخدم، أضِف الاختبارات للتحليل. النُسخ الأكبر من وتساوي 100. أظهرت الاختبارات الأولية التي أجريناها مؤخرًا يمكن لإصدارات المكتبات من التعامل معها بشكل صحيح. ومع ذلك، فإن الويب له إرث طويل لذا، إذا كانت لديك إصدارات قديمة من تحليل المكتبات، وقتًا كافيًا للتحقق من المشكلات والترقية في النهاية.
  • إذا كنت تتصفح الويب ولاحظت أي مشكلات في الصفحة الرئيسية الإصدار 100 تقديم بلاغ على webcompat.com.