كلمات رئيسية متعددة لخاصية العرض في CSS، وWGSLLanguageFeatures لـ WebGPU، ترقيات HTTPS، والمزيد.
ما لم يُذكر خلاف ذلك، تنطبق التغييرات على أحدث إصدار قناة تجريبية من Chrome لأنظمة التشغيل Android وChromeOS وLinux وmacOS وWindows. تعرّف على مزيد من المعلومات حول الميزات المذكورة هنا من خلال الروابط المتوفرة أو من القائمة على ChromeStatus.com. يتوفّر Chrome 115 كإصدار تجريبي اعتبارًا من 31 أيار (مايو) 2023. يمكنك تنزيل أحدث إصدار من Google.com لجهاز كمبيوتر سطح المكتب أو من "متجر Google Play" على أجهزة Android.
CSS
يوفّر هذا الإصدار ثلاث ميزات CSS جديدة.
قيم متعددة للسمة display
تقبل سمة CSS display
الآن كلمات رئيسية متعدّدة كقيمة، إلى جانب الكلمات الرئيسية القديمة المنشأة مسبقًا. تمثل أول كلمتين رئيسيتين القيمتين الخارجية والداخلية للشبكة الإعلانية، وهناك علامات اختيارية لـ list-item
، وقيم داخلية مثل table-cell
، وقيم المربع contents
وnone
.
باستخدام الكلمات الرئيسية الخارجية والداخلية، يمكنك تحديد سلوك المربّع الخارجي (حظر أو مضمّن) وسلوك العناصر الفرعية الداخلية، مثل flex
أو grid
أو flow
. ومن ثم يصبح display: flex
display: block flex
وdisplay: block
يصبح display: block flow
. راجع MDN للحصول على قائمة بالتعيينات الشائعة والمزيد من المعلومات.
طلبات بحث حاوية نمط السياق المنطقي
يتوافق الإصدار 115 من Chrome مع طلبات بحث الحاويات style()
بدون قيمة تعريف، واسم موقع فقط، كطريقة لمطابقة القيم غير الأولية. في السابق، كان عليك استخدام not style(--my-property: initial)
، والآن يمكنك استخدام style(--my-property)
لمطابقة أي قيمة غير أولية.
الصور المتحركة المستندة إلى التمرير
ScrollTimeline
وViewTimeline
هما امتدادان لمواصفات Web Animations يتيحان للمطوّرين استخدام موضع شريط التمرير أو موضع عنصر في شريط التمرير كإدخال "وقت" بدلاً من وقت الساعة الرتيب الافتراضي. يؤدي ذلك إلى تفعيل الرسوم المتحركة السريعة المستندة إلى التمرير، مثل شريط التنقل الذي يتم تصغيره، بدون الحاجة إلى تنفيذ النص البرمجي للمستخدم. ويمكن الإعلان عنها وإنشاء مثيل لها عبر CSS وJavaScript المستخدمَين في الصور المتحركة في CSS وWeb Animations.
للاطّلاع على مزيد من التفاصيل، يمكنك الاطّلاع على تحريك العناصر عند التمرير باستخدام الصور المتحركة المستندة إلى التمرير.
حلّ مشكلة التراجع عن ظهور العناصر التي تتضمّن display: contents
في شجرة تسهيل الاستخدام
ظهرت عملية انحدار تسبّبت في فقدان المعلومات الدلالية للعناصر التي تحتوي على display: contents
، وتعذّر تمثيلها بشكل صحيح في شجرة تسهيل الاستخدام. يتضمّن الإصدار 115 من Chrome إصلاحًا لهذه المشكلة.
واجهات برمجة تطبيقات الويب
زيادة الحد الأقصى لحجم WebAssembly.Module()
في سلسلة المحادثات الرئيسية إلى 8 ميغابايت
تجمع الدالة الإنشائية WebAssembly.Module() وحدة WebAssembly ثنائية بشكل متزامن، ما قد يؤدي إلى حظر سلسلة التعليمات الرئيسية. ولتجنب ذلك، يقتصر الحد الأقصى لحجم وحدة WebAssembly التي يمكن تجميعها باستخدام هذه الدالة الإنشائية على 8 ميغابايت. ويمكن تجميع الوحدات الأكبر حجمًا بشكل غير متزامن في سلسلة التعليمات الرئيسية باستخدام WebAssembly.compile()
، أو بشكل متزامن على سلسلة محادثات العامل. إنّ الحدّ الأقصى البالغ 8 ميغابايت هو امتداد للحد الأصلي الذي يبلغ 4 كيلوبايت. هذه الإضافة ممكنة بفضل التحسينات التي تم إجراؤها على الإصدار 8 من بيئة تشغيل WebAssembly. تم تحديد الحدّ الأقصى المسموح به البالغ 8 ميغابايت من خلال قياسات الأداء على هاتف Google Pixel 1 الذي يُعتبر حاليًا هاتفًا ذا مواصفات منخفضة الأداء. وقد تسمح التطويرات المستقبلية للإصدار V8 أو الأجهزة بتمديدات الحدّ الأقصى.
FedCM: إتاحة متطلبات توسّط إدارة بيانات الاعتماد الخاصة بإعادة المصادقة تلقائيًا
إتاحة متطلبات توسّط إدارة بيانات الاعتماد لتوفير تجربة مستخدم مبسّطة لإعادة المصادقة للمستخدمين الذين أنشأوا حسابات موحّدة على مواقع إلكترونية باستخدام واجهة برمجة التطبيقات FedCM API
ترقيات HTTPS
يمكنك ترقية جميع عمليات الانتقال في الإطار الرئيسي تلقائيًا وبتحسين إلى HTTPS، مع الرجوع السريع إلى HTTP.
تقسيم واجهات برمجة تطبيقات التخزين ومشغّل الخدمات والاتصالات
لمنع أنواع معيّنة من التتبُّع على المواقع الإلكترونية على مستوى القنوات الجانبية، يعمل Chrome على تقسيم واجهات برمجة التطبيقات لمساحة التخزين والاتصالات في سياقات تابعة لجهات خارجية. ويشمل ذلك مساحة التخزين المُدارة للحصة وعاملي الخدمات وواجهات برمجة التطبيقات للاتصال (مثل BroadcastChannel). لمزيد من التفاصيل، يمكنك الاطّلاع على مستندات تقسيم مساحة التخزين.
توقيت المورد: عرض أوقات الاستجابة المؤقتة
يمكنك عرض PerformanceResourceTiming.firstInterimResponseStart
في الحالات التي يقابل فيها التنقّل أو جلب المورد الفرعي استجابة 1xx مؤقتة. على سبيل المثال، باستخدام 100 تلميح أو 103 تلميح مبكّر، يتوافق firstInterimResponseStart
الآن مع وقت ذلك الاستجابة المؤقتة الأولى، بينما تتجاوب responseStart
مع الردّ النهائي، مثلاً مع الحالة 200.
تعديل ملف "xml" معالجة البادئة في lookupNamespaceURI()
وcreateNSResolver()
تتيح Node.lookupNamespaceURI()
استخدام ملف "xml". و"xmlns" والبادئات بشكل افتراضي. تعرض الدالة سلاسل مساحة اسم ثابتة لها. يتوقف Document.createNSResolver()
وXPathEvaluator.createNSResolver()
عن التفاف العقدة المحددة لإضافة "xml". التعامل مع البادئات. تعرض العقدة المحددة كما هي. يمكن لمطوّري البرامج على الويب الآن استخدام عنصر كعنصر XPathNSResolver
بدون التفافه مع createNSResolver()
.
VisibilityStateEntry
يعرض حالة مستوى الرؤية (مرئي أو مخفي) في المخطط الزمني للأداء. سيحتوي المخطط الزمني دائمًا على إدخال بقيمة startTime
من 0 وحالة مستوى الرؤية الأولية، بالإضافة إلى إدخالات مقابلة لأي تغيير في حالة مستوى الرؤية.
WGSLLanguageFeatures لـ WebGPU
تضيف دالة getg wgslLanguageFeatures
إلى عنصر وحدة معالجة الرسومات WebGPU، ونوع WGSLLanguageFeatures
المقابل لها.
أوامر WebDriver للتفاعل مع مربّعات حوار FedCM
ويؤدي ذلك إلى كشف العديد من أوامر WebDriver لتفعيل التشغيل الآلي للمتصفّح، مثل الاختبار المبرمَج، للتفاعل مع مربّعات حوار FedCM.
مراحل التجربة والتقييم قيد التقدم
في الإصدار 115 من Chrome، يمكنك تفعيل تجارب المصادر الجديدة التالية.
حوسبة الضغط
توفّر واجهة برمجة التطبيقات Compute Pressure معلومات عالية المستوى حول الحالة الراهنة لمعدات الجهاز للسماح للمواقع الإلكترونية بتحقيق التوازن المناسب للمستخدمين بين الاستفادة من إمكانات المعالجة المتاحة ووضع النظام في مواجهة إجهاد لا يمكن إدارته. "الضغط الحوسبة" هو مصطلح عام حسب التصميم. يتم احتسابه في الوقت الحالي استنادًا إلى حِمل وحدة المعالجة المركزية (CPU)، لكن الخطط المستقبلية تتضمّن استخدام إشارات من درجة الحرارة وحالة البطارية مثلاً. يمكنك الاطّلاع على مزيد من المعلومات في مقالة الإعلان عن مرحلة التجربة الثانية والأصل في Compute Press.
التسجيل في مرحلة التجربة والتقييم في Compute اضغط
تلميحات واضحة عند التجميع من خلال تعليقات رائعة
السماح بإرفاق معلومات عن الدوال التي يجب تحليلها وتجميعها بحرص في ملفات JavaScript سيتم تشفير المعلومات كتعليقات سحرية. سنجرّب تنسيقات مختلفة للتعليقات. على سبيل المثال، وضع علامة على جميع الدوال في ملف للتجميع السريع أو وضع علامة فقط على مجموعة فرعية من الدوال.
واجهة برمجة تطبيقات Long Animation Frames
وهذه الإضافة هي امتداد لواجهة Long Tasks API. وهي تقيس هذه المهمة مع التحديث اللاحق للعرض، مُضيفًا معلومات مثل النصوص البرمجية التي تستغرق وقتًا طويلاً، ووقت العرض، والوقت المستغرق في التصميم والنمط الإجباريين، والمعروفين باسم تغيير التنسيق. يمكن للمطوّرين استخدام هذا كتشخيص لـ "البطء"، وهو مقياس يتم قياسه من خلال مقياس مدى استجابة الصفحة لتفاعلات المستخدم (INP) من خلال معرفة أسباب ازدحام السلسلة الرئيسية التي غالبًا ما تؤدي إلى ضعف مقياس INP.
سجِّل في مرحلة التجربة والتقييم في Long Animations
واجهة برمجة تطبيقات حزم التخزين
تتيح "حِزم التخزين" للمواقع الإلكترونية إنشاء حِزم تخزين متعددة لتنظيم بياناتها، ما يسمح لوكلاء المستخدمين بحذف كل حزمة بشكل مستقل عن الحِزم الأخرى. يمكن لكل حزمة تخزين تخزين البيانات المرتبطة بواجهات برمجة التطبيقات للتخزين الراسخة، مثل IndexedDB وCacheStorage. سجِّل في مرحلة التجربة والتقييم في Storage Buckets API.
عمليات الإيقاف وعمليات الإزالة
يوضِّح هذا الإصدار من متصفّح Chrome عمليات الإيقاف وعمليات الإزالة المُدرجة أدناه. يمكنك زيارة ChromeStatus.com للاطّلاع على قوائم بعمليات الإيقاف المخططة وعمليات الإيقاف الحالية وعمليات الإزالة السابقة.
توقِف هذا الإصدار من Chrome ميزتين نهائيًا.
إيقاف أداة ضبط "document.domain
" نهائيًا
يتم إيقاف أداة ضبط document.domain
نهائيًا لأنّها تسمح للمطوّرين بتخفيف قيود سياسة المصدر نفسه، ما يؤدي إلى تعقيد الحدود الأمنية الأساسية التي نهدف إلى الحفاظ عليها، ووضع عوائق في طريق إجراء تغييرات ما بعد Spectre في نموذج العمليات في Chromium.
انتقِل إلى إيقاف Chrome لتعديل نطاق document.domain للحصول على بدائل لاستخدام Document.domain. في معظم حالات الاستخدام، يمكن أن يحل postMessage()
من مصادر متعددة أو واجهة Channel Messaging API محلّ document.domain. كحلّ أخير، يمكنك تفعيل نطاق المستند من خلال مجموعات الوكلاء المستنِدة إلى المصدر. ستبقى أداة الضبط، ولكن يظل المصدر بدون تغيير.
إيقاف أحداث التغيُّر نهائيًا
تم إيقاف أحداث التغيُّر، بما في ذلك DOMSubtreeModified
وDOMNodeInserted
وDOMNodeRemoved
وDOMNodeRemovedFromDocument
وDOMNodeInsertedIntoDocument
من واجهة برمجة التطبيقات في المواصفات في 20. عند استخدام أحداث التغيير القديمة، يجب نقل البيانات إلى Mutation Observer قبل إزالتها في Chrome 127 (في 20 يوليو 2024).
اطّلِع على مزيد من المعلومات عن الإيقاف النهائي لأحداث التغيير.