إصدار الكروم 95

كشفت Google عن إصدار متصفح الويب Chrome 95. وفي الوقت نفسه، يتوفر إصدار مستقر لمشروع Chromium المجاني، والذي يعمل كأساس لمتصفح Chrome. يتميز متصفح Chrome باستخدام شعارات Google، ووجود نظام لإرسال الإشعارات في حالة حدوث عطل، ووحدات لتشغيل محتوى الفيديو المحمي (DRM)، ونظام تثبيت التحديثات تلقائيًا، ونقل معلمات RLZ عند البحث. ضمن دورة التطوير الجديدة التي مدتها 4 أسابيع، من المقرر إصدار الإصدار التالي من Chrome 96 في 16 نوفمبر. بالنسبة لأولئك الذين يحتاجون إلى مزيد من الوقت للتحديث، يوجد فرع ممتد ثابت منفصل، يتبعه 8 أسابيع، مما يؤدي إلى إنشاء تحديث للإصدار السابق من Chrome 94.

التغييرات الرئيسية في Chrome 95:

  • بالنسبة لمستخدمي Linux وWindows وmacOS وChromeOS، يتم تقديم شريط جانبي جديد، يظهر على يمين المحتوى ويتم تنشيطه من خلال النقر على أيقونة خاصة في لوحة شريط العناوين. تعرض اللوحة ملخصًا يتضمن إشارات مرجعية وقائمة قراءة. لم يتم تمكين التغيير لجميع المستخدمين؛ لتنشيطه، يمكنك استخدام الإعداد "chrome://flags/#side-panel".
    إصدار الكروم 95
  • تم تنفيذ نتيجة طلب صريح للحصول على أذونات لحفظ العناوين المدخلة في نماذج الويب لاستخدامها لاحقًا في نظام الملء التلقائي للنموذج. عند تحديد وجود عناوين في النماذج، يظهر الآن للمستخدم مربع حوار يسمح له بحفظ العنوان أو تعديله أو تحديث عنوان محفوظ مسبقًا أو رفض حفظه.
  • تمت إزالة الرمز لدعم بروتوكول FTP. في Chrome 88، تم تعطيل دعم FTP افتراضيًا، ولكن تم ترك علامة لإعادته.
  • لم نعد ندعم عناوين URL التي تحتوي على أسماء المضيفين التي تنتهي بأرقام ولكنها لا تتوافق مع عناوين IPv4. على سبيل المثال، سيتم الآن اعتبار عناوين URL "http://127.1/" و"http://foo.127.1/" و"http://127.0.0.0.1" غير صالحة.
  • يتمتع WebAssembly الآن بالقدرة على إنشاء معالجات استثناء يمكنها اعتراض التنفيذ في حالة حدوث استثناء عند تنفيذ تعليمات برمجية معينة. وهو يدعم كلاً من استثناءات الالتقاط المعروفة لوحدة WebAssembly والاستثناءات في عملية استدعاء الوظائف المستوردة. لالتقاط الاستثناءات، يجب تجميع وحدة WebAssembly باستخدام مترجم يتعرف على الاستثناءات مثل Emscripten.

    تجدر الإشارة إلى أن معالجة الاستثناءات على مستوى WebAssembly يمكن أن تقلل بشكل كبير من حجم التعليمات البرمجية التي تم إنشاؤها مقارنة بمعالجة الاستثناءات باستخدام JavaScript. على سبيل المثال، يؤدي إنشاء مُحسِّن Binaryen مع معالجة الاستثناءات باستخدام JavaScript إلى زيادة بنسبة 43% في التعليمات البرمجية، وزيادة بنسبة 9% في التعليمات البرمجية باستخدام WebAssembly. بالإضافة إلى ذلك، عند استخدام وضع التحسين "-O3"، فإن التعليمات البرمجية مع معالجة الاستثناءات باستخدام WebAssembly لا تختلف فعليًا عن التعليمات البرمجية دون معالجات الاستثناءات، بينما تؤدي معالجة الاستثناءات باستخدام JavaScript إلى تباطؤ التنفيذ بنسبة 30%.

  • يُحظر مشاركة وحدات WebAssembly بين نطاقات مختلفة (متعددة الأصل) عند معالجة موقع واحد.
  • تمت إضافة العديد من واجهات برمجة التطبيقات الجديدة إلى وضع Origin Trials (ميزات تجريبية تتطلب تنشيطًا منفصلاً). يتضمن Origin Trial القدرة على العمل مع واجهة برمجة التطبيقات المحددة من التطبيقات التي تم تنزيلها من المضيف المحلي أو 127.0.0.1 ، أو بعد التسجيل واستلام رمز خاص صالح لفترة محدودة لموقع معين.
    • تمكين اقتطاع المعلومات في رأس User-Agent HTTP ومعلمات JavaScript navigator.userAgent وnavigator.appVersion وnavigator.platform. يحتوي الرأس فقط على معلومات حول اسم المتصفح وإصدار المتصفح المهم والنظام الأساسي ونوع الجهاز (الهاتف المحمول، الكمبيوتر الشخصي، الجهاز اللوحي). للحصول على بيانات إضافية، مثل الإصدار الدقيق وبيانات النظام الأساسي الموسعة، يجب عليك استخدام واجهة برمجة تطبيقات User Agent Client Hints API. من المقرر بدء قطع وكيل المستخدم على أنظمة المستخدمين العاديين مع إصدار Chrome 102، والذي سيتم نشره خلال نصف عام.
    • من الممكن إنشاء مقابض الوصول لواجهة برمجة تطبيقات الوصول إلى نظام الملفات، والتي تسمح لتطبيقات الويب بقراءة البيانات وكتابتها مباشرة إلى الملفات والأدلة الموجودة على جهاز المستخدم. لتقليل طريقة وصول تطبيقات الويب إلى نظام الملفات، تخطط Google لدمج واجهات برمجة التطبيقات الخاصة بالوصول إلى نظام الملفات ومؤسسة التخزين. كمرحلة تحضيرية لمثل هذا التوحيد، يتم اقتراح دعم واصفات الوصول، استكمالًا لأساليب العمل المعتمدة على واصفات الملفات ذات الإمكانات المتقدمة، مثل إعداد قفل الكتابة للعمليات الأخرى وإنشاء خيوط منفصلة للكتابة والقراءة، بما في ذلك دعم القراءة والكتابة من العمال في الوضع المتزامن.
  • تم تثبيت واجهة برمجة التطبيقات لتأكيد الدفع الآمن وعرضها افتراضيًا مع تنفيذ ملحق "الدفع" الجديد، والذي يوفر تأكيدًا إضافيًا لمعاملة الدفع التي يتم تنفيذها. يتمتع الطرف المعتمد، مثل البنك، بالقدرة على إنشاء مفتاح عام PublicKeyCredential، والذي يمكن أن يطلبه التاجر للحصول على تأكيد إضافي للدفع الآمن عبر واجهة برمجة تطبيقات طلب الدفع باستخدام طريقة الدفع "تأكيد الدفع الآمن".
  • تقوم مكالمات رد الاتصال المثبتة من خلال مُنشئ PerformanceObserver بتنفيذ نقل خاصية dropEntriesCount، والتي تسمح لك بفهم عدد مقاييس أداء الموقع التي تم تجاهلها نظرًا لعدم ملاءمتها للمخزن المؤقت المقدم.
  • تمت إضافة EyeDropper API، والذي يسمح لك باستدعاء الواجهة التي يوفرها المتصفح لتحديد لون البكسلات العشوائية على الشاشة، والتي يمكن استخدامها، على سبيل المثال، في برامج تحرير الرسوم التي يتم تنفيذها كتطبيقات ويب. consteyeDropper = new EyeDropper(); نتيجة const = انتظار EyeDropper.open(); // النتيجة = {sRGBHex: '#160731'}
  • تمت إضافة وظيفة self.reportError()، والتي تسمح للبرامج النصية بطباعة الأخطاء إلى وحدة التحكم، ومحاكاة حدوث استثناء لم يتم اكتشافه.
  • تمت إضافة URLPattern API للتحقق مما إذا كان عنوان URL يطابق نمطًا معينًا، والذي، على سبيل المثال، يمكن استخدامه لتحليل الروابط وإعادة توجيه الطلبات إلى المعالجات في عامل الخدمة. const p = new URLPattern({ البروتوكول: 'https'، اسم المضيف: 'example.com'، اسم المسار: '/:folder/*/:fileName.jpg'، });
  • تم توسيع واجهة برمجة التطبيقات Intl.DisplayNames، والتي يمكنك من خلالها الحصول على أسماء محلية للغات والبلدان والعملات وعناصر التاريخ وما إلى ذلك. يضيف الإصدار الجديد أنواعًا جديدة من الأسماء "التقويم" و"dateTimeField"، والتي من خلالها يمكنك معرفة الأسماء المترجمة للتقويم وحقول التاريخ والوقت (على سبيل المثال، اسم الأشهر). بالنسبة لنوع "اللغة"، تمت إضافة دعم لاستخدام لهجات اللغة.
  • أضافت واجهة برمجة التطبيقات Intl.DateTimeFormat دعمًا للقيم الجديدة لمعلمة timeZoneName: "shortGeneric" لعرض معرف منطقة زمنية قصيرة (على سبيل المثال، "PT"، "ET")، و"longGeneric" لعرض منطقة زمنية طويلة المعرف ("توقيت المحيط الهادئ"، "توقيت الجبل")، "shortOffset" - مع إزاحة قصيرة بالنسبة إلى GMT ("GMT+5") و"longOffset" مع إزاحة طويلة بالنسبة إلى GMT ("GMT+0500").
  • تم إهمال واجهة برمجة تطبيقات U2F (Cryptotoken) ويجب استخدام واجهة برمجة تطبيقات مصادقة الويب بدلاً من ذلك. سيتم تعطيل U2F API افتراضيًا في Chrome 98 وإزالتها بالكامل في Chrome 104.
  • تم إجراء تحسينات على الأدوات لمطوري الويب. تسهل لوحة الأنماط ضبط خصائص CSS المتعلقة بالحجم (الارتفاع، والمساحة المتروكة، وما إلى ذلك). توفر علامة التبويب "المشاكل" إمكانية إخفاء المشكلات الفردية. في وحدة تحكم الويب ولوحات المصادر والخصائص، تم تحسين عرض الخصائص (يتم الآن تمييز الخصائص الخاصة بالخط العريض وتظهر في أعلى القائمة).
    إصدار الكروم 95

بالإضافة إلى الابتكارات وإصلاحات الأخطاء، يزيل الإصدار الجديد 19 نقطة ضعف. تم التعرف على العديد من نقاط الضعف نتيجة للاختبار الآلي باستخدام أدوات AddressSanitizer وMemorySanitizer وControl Flow Integrity وLibFuzzer وAFL. لم يتم تحديد أي مشكلات حرجة من شأنها أن تسمح بتجاوز جميع مستويات حماية المتصفح وتنفيذ التعليمات البرمجية على النظام خارج بيئة وضع الحماية. كجزء من برنامج المكافآت النقدية لاكتشاف الثغرات الأمنية للإصدار الحالي، دفعت جوجل 16 جائزة بقيمة 74 ألف دولار (جائزة واحدة بقيمة 20000 دولار، وجائزتين بقيمة 10000 دولار، وجائزة 7500 دولار، وجائزة 6000 دولار، وثلاث جوائز 5000 دولار، وجائزة 3000 دولار)، و2000 دولار. و 1000 دولار). لم يتم تحديد حجم المكافآت الخمس بعد.

المصدر: opennet.ru

إضافة تعليق