الإصدار التجريبي من Chrome 131

تاريخ النشر: 16 تشرين الأول (أكتوبر) 2024

تنطبق التغييرات التالية على أحدث إصدار من الإصدار التمهيدي ل Chrome على نظام التشغيل Android وChromeOS وLinux وmacOS وWindows، ما لم يُذكر خلاف ذلك. يمكنك الاطّلاع على مزيد من المعلومات عن الميزات المدرَجة هنا من خلال الروابط المقدَّمة أو من القائمة على ChromeStatus.com. أصبح الإصدار 131 من Chrome إصدارًا تجريبيًا اعتبارًا من 16 تشرين الأول (أكتوبر) 2024. يمكنك تنزيل أحدث إصدار من الموقع الإلكتروني Google.com على أجهزة الكمبيوتر المكتبي أو من "متجر Google Play" على أجهزة Android.

CSS

يوفّر هذا الإصدار ثماني ميزات CSS جديدة.

موضع الرابط في CSS: نطاق الرابط

تسمح السمة anchor-scope بحصر إمكانية الوصول إلى أسماء العناصر النائبة في شجرة فرعية معيّنة.

خدمة مقارنة الأسعار font-variant-emoji

توفّر خاصية font-variant-emoji في CSS طريقة للتحكّم بين الأحرف الرسومية الملوّنة (بأسلوب الرموز التعبيرية) والأحرف الرسومية أحادية اللون (بأسلوب النص). ويمكن إجراء ذلك أيضًا من خلال إضافة "أداة اختيار أشكال الإيموجي"، لا سيما U+FE0E للنصوص وU+FE0F للرموز التعبيرية، بعد كل رمز للرموز التعبيرية.

اكتساب تمييز CSS

من خلال اكتساب الخصائص المكتسَبة من خلال تمييز صفحات الأنماط المتتالية (CSS)، تبرز خدمة CSS الفئات الزائفة، مثل ::selection و::highlight، وتكتسب خصائصها من خلال سلسلة التمييز الزائف، بدلاً من سلسلة العناصر. والنتيجة هي نموذج أكثر سهولة لتلقّي السمات في قسم "أهم التفاصيل".

لمزيد من المعلومات، يمكنك الاطّلاع على مشاركة المدونة تغييرات على الخصائص المشترَكة لتنسيق أدوات اختيار CSS التي كتبها "ستيفن تشيني" من Igalia.

تحسينات على بنية تنسيق عناصر <details> و<summary>

إتاحة المزيد من تنسيقات CSS لبنية عناصر <details> و<summary> للسماح باستخدام هذه العناصر في المزيد من الحالات التي يتم فيها إنشاء تطبيقات مصغّرة لبيان الإفصاح أو التطبيقات المصغّرة للقوائم المنسدلة على الويب وعلى وجه الخصوص، يزيل هذا التغيير القيود التي منعت إعداد خاصية العرض على هذه العناصر، ويضيف عنصرًا زائفًا من ::details-content لتصميم الجزء الذي يتم توسيعه وتصغيره.

@page مربّعات الهامش

إتاحة استخدام مربّعات هامش الصفحة عند طباعة مستند ويب أو تصديره بتنسيق PDF

تتيح لك مربّعات الهوامش @page تحديد المحتوى في منطقة الهامش في الصفحة، على سبيل المثال، لتوفير رؤوس وتذييلات مخصّصة بدلاً من استخدام الرؤوس والتذييلات المضمّنة التي ينشئها المتصفّح.

يتم تحديد مربّع الهامش باستخدام قاعدة في داخل قاعدة @page CSS. يتم تحديد مظهر مربّع الهامش ومحتوياته باستخدام سمات CSS داخل قاعدة at-rule، بما في ذلك السمة content. تتوفّر أيضًا ميزة العداد لإضافة أرقام الصفحات. تحدّد المواصفات اسمَي عدادين خاصَّين: page لرقم الصفحة الحالي وpages للعدد الإجمالي للصفحات.

استخدام بنية <string> في @property

إتاحة اسم مكوِّن بنية <string> للمواقع المخصَّصة المسجَّلة

إتاحة currentcolor في بنية اللون النسبية

اسمح بالألوان النسبية في CSS (باستخدام الكلمة الرئيسية from) لاستخدام currentcolor كقاعدة. يتيح لك ذلك ضبط ألوان تكميلية، استنادًا إلى لون نص العنصر، لحدود هذا العنصر أو ظلاله أو خلفياته.

تشمل هذه الميزة أيضًا حالات الاستخدام التي تكون فيها دوالّ الألوان مضمّنة مع اعتماد على currentcolor، على سبيل المثال color-mix(in srgb, rgb(from currentcolor r g b), white)) أو rgb(from rgb(from currentcolor 1 g b) b g r).

إتاحة استخدام موارد SVG الخارجية لخصائص clip-path وfill وstroke وmarker-*

توفّر هذه الميزة إمكانية استخدام مراجع خارجية لمسارات المقاطع والعلامات و خوادم الطلاء (لسمات "الملء" و"الخط"). مثلاً: clip-path: url("resources.svg#myPath")

واجهات برمجة تطبيقات الويب

Direct Sockets API

يسمح هذا الخيار لتطبيقات الويب المعزولة بإنشاء اتصالات مباشرة باستخدام بروتوكول التحكم في الإرسال (TCP) وبروتوكول مخطط بيانات المستخدم (UDP) مع أجهزة وأنظمة الشبكة، بالإضافة إلى الاستماع إلى الاتصالات الواردة وقبولها.

استثناء عنوان قواعد التوقُّع من قيود سياسة أمان المحتوى (CSP)

تعديل عملية الدمج بين قواعد التكهّن و"إطار عمل حماية البيانات" (CSP) لكي لا ينطبق "إطار عمل حماية البيانات" إلا على <script type=speculationrules>، وليس على عنوان Speculation-Rules تهدف سياسات النصوص البرمجية في إطار CSP إلى الحماية من عمليات إدراج النصوص البرمجية في HTML، ولا يرتبط نموذج التهديدات في CSP بعناوين HTTP. يتيح ذلك نشر قواعد التوقّع بسهولة أكبر من خدمات CDN والخوادم الطرفية الأخرى.

FedCM كإشارة ثقة لواجهة Storage Access API

إعادة المواءمة بين واجهات برمجة التطبيقات FedCM وStorage Access من خلال جعل FedCM السابقة تمنحك سببًا صالحًا للموافقة تلقائيًا على طلب الوصول إلى مساحة التخزين

عندما يمنح المستخدم الإذن لاستخدام هويته مع موفِّر هوية تابع لجهة خارجية (IdP) في جهة موثوق بها (RP)، تتطلّب العديد من موفِّري الهوية ملفّات تعريف الارتباط التابعة لجهات خارجية لكي تعمل بشكلٍ صحيح وآمن. يهدف هذا الاقتراح إلى تلبية هذا الشرط بطريقة خاصة وآمنة من خلال تعديل عمليات التحقّق من أذونات واجهة برمجة التطبيقات Storage Access API (SAA) لعدم قبول منح الإذن الذي يتم منحه من خلال طلبات الوصول إلى مساحة التخزين، ولكن أيضًا منح الإذن الذي يتم منحه من خلال طلبات FedCM.

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

قيمة COOP‏ noopener-allow-popups

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

وفي مثل هذه الحالات، قد يكون من المفيد للمستند التأكّد من أنّ أداة الفتح الخاصة به لا يمكنها كتابة نص برمجي له، حتى إذا كان مستند الفتح من المصدر نفسه. تسمح قيمة noopener-allow-popups Cross-Origin-Opener-Policy للمستندات بتحديد هذا السلوك.

Private Aggregation API: زيادة الحد الأقصى للمساهمات إلى 100 لمُتصلي Protected Audience

تعمل هذه السياسة على تفعيل عدّاءات النصوص البرمجية Protected Audience من إجراء ما يصل إلى 100 مساهمة لكل تقرير تجميع خاص، مقارنةً بالحدّ الأقصى الحالي وهو 20 مساهمة.

تحدّ ميزة "التجميع الخاص" من عدد مساهمات الرسم البياني الشريطي الذي يمكن تضمينه في تقرير واحد قابل للتجميع، مع حذف أي مساهمات إضافية. يمكن لمُرسِلي طلبات Shared Storage تجاوز الحدّ الأقصى من خلال استدعاء عملية Shared Storage أخرى. ويُرجى العِلم بأنّ المتصلين عبر Protected Audience API لا تتوفّر لهم مساحة تخزين دائمة، لذا سيفقدون مساهماتهم الزائدة في نهاية مزادهم. يُرجى العِلم أنّ هذا التغيير لا يؤثّر في الخصوصية لأنّ المساهمات التي توفّرها واجهة برمجة التطبيقات لا تزال محدودة بميزانية الخصوصية نفسها.

بسبب الحشو، سيحتوي كل تقرير عن شريحة جمهور محمية على حمولة أكبر، حتى إذا لم يكن بحاجة إلى الحد الأقصى الأكبر للمساهمة. نتوقّع أن تؤدي هذه التقارير الموسّعة إلى زيادة تكلفة تشغيل "خدمة التجميع".

اختيار إزالة القيود المفروضة على النحوّم

يؤدي هذا التغيير إلى السماح لمحلِّل HTML بعلامات إضافية في <select> بالإضافة إلى <option> و<optgroup> و<hr>.

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

WebGPU: قَطْع المسافات

تضيف ميزة وحدة معالجة الرسومات الاختيارية clip-distances التي تتيح ضبط مسافات القطع التي يحدّدها المستخدم في نواتج برنامج تظليل رؤوس المضلّعات. وتُعدّ هذه التقنية مفيدة بشكل خاص للتطبيقات التي تحتاج إلى اقتصاص جميع الرؤوس في مشهد تتجاوز مستوىً يحدّده المستخدم، مثل العديد من تطبيقات التصميم بمساعدة الكمبيوتر (CAD).

WebGPU: ‏ GPUCanvasContext getConfiguration()

بعد استدعاء GPUCanvasContext configure() باستخدام قاموس الإعدادات، يمكنك استخدام الطريقة GPUCanvasContext getConfiguration() لفحص إعدادات سياق اللوحة. ويشمل ذلك وحدات معالجة الرسومات device وformat وusage viewFormats وcolorSpace وtoneMapping وalphaMode. كما هو موضّح في المشكلة 4828، يمكن لتطبيقات الويب استخدامها لرصد ما إذا كانت لوحة HDR متوافقة مع WebGPU.

WebHID على عمال مخصّصين

تفعِّل هذه السياسة WebHID داخل سياقات مخصَّصة للعاملين. يتيح لك ذلك تنفيذ عمليات إدخال وإخراج كثيفة ومعالجة البيانات من جهاز HID في سلسلة مهام منفصلة، ما يساعد في تقليل تأثير الأداء على سلسلة المهام الرئيسية.

WebRTC RTCRtpEncodingParameters.scaleResolutionDownTo

واجهة برمجة تطبيقات لضبط برامج ترميز WebRTC لتوسيع إطارات الإدخال إذا كانت أكبر من maxWidth وmaxHeight المحدّدَين تتشابه واجهة برمجة التطبيقات هذه مع واجهة برمجة التطبيقات scaleResolutionDownBy، باستثناء أنّ قيود الدقة يتم التعبير عنها بمصطلحات مطلقة (مثل 640x360) بدلاً من مصطلحات نسبية (مثل التصغير بمقدار 2)، ما يتجنّب حالات السباق المرتبطة بتغيير حجم إطار الإدخال أثناء التشغيل.

تجارب مصادر جديدة

في الإصدار 131 من Chrome، يمكنك تفعيل فترات تجريبية جديدة التالية.

إحصاءات التشغيل لـ WebAudio

تسمح ميزة AudioContext.playoutStats للتطبيق بقياس جودة تشغيل الصوت ووقت الاستجابة باستخدام WebAudio.

Summarizer API

واجهة برمجة تطبيقات JavaScript لإنشاء ملخّصات من النص الذي يتم إدخاله، استنادًا إلى نموذج لغوي مستند إلى الذكاء الاصطناعي

عمليات الإيقاف وعمليات الإزالة

يُجري هذا الإصدار من Chrome عمليات الإيقاف النهائي والإزالة التالية. يمكنك زيارة ChromeStatus.com للحصول على قوائم بعمليات الإيقاف المخطط لها، وعمليات الإيقاف الحالية، وعمليات الإزالة السابقة.

يزيل هذا الإصدار من Chrome ثلاث ميزات.

إزالة خاصية تحديد موضع ارتساء CSS inset-area

بعد قرار مجموعة عمل CSS بإعادة تسمية الموقع inset-area إلى position-area، ستؤدي هذه الإزالة إلى تنظيف عملية التنفيذ في Chromium لتوفير ميزة متوافقة مع المعايير.

إزالة إمكانية إيقاف BeforeunloadEventCancelByPreventDefault

تم طرح الميزة BeforeunloadEventCancelByPreventDefault في الإصدار 117 من Chrome، ولكن هناك سياسة مؤسسة تسمح بإيقاف هذه العلامة بشكلٍ قسري. ستتم إزالة سياسة المؤسسات في الإصدار 131 من Chrome.

إزالة طريقة GPUAdapter requestAdapterInfo() غير العادية

قرّرت مجموعة عمل WebGPU أنّه من غير العملي أن تطلب requestAdapterInfo() إذنًا، لذا أزالت هذا الخيار واستبدلته بسمة GPUAdapter info حتى يتمكّن مطوّرو الويب من الحصول على قيمةGPUAdapterInfo نفسها بشكل متزامن.