في كل إصدار من Chrome تقريبًا، نلاحظ عددًا كبيرًا من التحديثات والتحسينات على المنتج وأدائه وإمكانات Web Platform. توضِّح هذه المقالة الميزات التي سيتم إيقافها نهائيًا وإزالتها في الإصدار 57 من Chrome، الذي أصبح متاحًا في إصدار تجريبي اعتبارًا من أوائل شباط (فبراير). تخضع هذه القائمة للتغيير في أي وقت.
إزالة سمة BluetoothDevice.uuids
تتم إزالة سمة BluetoothDevice.uuids
لتتوافق Web Bluetooth API مع المواصفات الحالية. يمكنك استرداد جميع خدمات GATT المسموح بها من خلال استدعاء
device.getPrimaryServices().
إزالة عنصر إنشاء المفاتيح
منذ الإصدار 49 من Chrome، كان السلوك التلقائي لـ <keygen>
هو عرض السلسلة الفارغة
، ما لم يتم منح إذن لهذه الصفحة. لا يتيح كلّ من IE/Edge استخدام
<keygen>
ولم يُشيرا إلى إشارات عامة تتيح استخدام <keygen>
.
يفرض Firefox حاليًا <keygen>
على المستخدمين استخدام إيماءة معيّنة، ولكنه يعلن علنيًا عن
تأييده لإزالتها. يُرسِل Safari الإصدار <keygen>
ولم يُعلِن عن
آراء الجمهور بشأن مواصلة دعمه. في الإصدار 57 من Chrome، تمت إزالة هذا العنصر.
Intent to Remove | Chromestatus Tracker | Chromium Bug
إزالة واجهة برمجة التطبيقات لإدارة ذاكرة التخزين المؤقت لتوقيت الموارد التي تتضمّن بادئة
إنّ الطريقتَين ومعالج الحدث webkitClearResourceTimings()
webkitSetResourceTimingBufferSize()
وonwebkitresourcetimingbufferfull
قديمان ومخصّصان للمورّدين. أصبح بإمكانك استخدام
الإصدارات العادية من واجهات برمجة التطبيقات هذه
بدءًا من الإصدار 46 من Chrome، وتم أيضًا التوقّف عن استخدام الدوالّ التي تحتوي على بادئة في هذا الإصدار. تم تنفيذ هذه الميزات في الأصل
في WebKit، ولكن لم يفعّلها Safari. لا يتوفّر في Firefox وInternet Explorer 10 والإصدارات الأحدث و
Edge سوى إصدار واجهة برمجة التطبيقات غير المزوّد ببادئة. لذلك، تتم إزالة إصدارات webkit.
Intent to Remove | Chromestatus Tracker | Chromium Bug
إزالة ServiceWorkerMessageEvent لصالح استخدام MessageEvent
وسعت مواصفات HTML نطاق MessageEvent
للسماح باستخدام ServiceWorker
كنوع لسمة
source
. تم تغيير client.postMessage()
وأحداث إنشاء الرسائل المخصّصة
لاستخدام MessageEvent
بدلاً من ServiceWorkerMessageEvent
.
تمت إزالة ServiceWorkerMessageEvent
.
Intent to Remove | Chromestatus Tracker | Chromium Bug
إزالة الأسماء البديلة الشاملة لـ IndexedDB التي تبدأ بالبادئة webkit
تم عرض نقطة دخول IndexedDB
والمنشئين العامين باستخدام بادئات webkit
في Chrome 11 تقريبًا. تمت إضافة الإصدارات غير المزوّدة ببادئة في Chrome 24، وتم إيقاف الإصدارات المزوّدة ببادئة نهائيًا في Chrome 38. تتأثر
الواجهات التالية:
webkitIndexedDB
(نقطة الدخول الرئيسية)webkitIDBKeyRange
(طريقة وضع تصميم عالمية غير قابلة للدعوة، ولكنّها تتضمّن طرقًا ثابتة مفيدة)webkitIDBCursor
webkitIDBDatabase
webkitIDBFactory
webkitIDBIndex
webkitIDBObjectStore
webkitIDBRequest
webkitIDBTransaction
(العناصر المنشئة الشاملة غير القابلة للاتّصال)
Intent to Remove | Chromestatus Tracker | Chromium Bug
WebAudio: إزالة AudioContext وOfflineAudioContext اللذَين يتضمّنان بادئة
يتيح Chrome استخدام WebAudio
منذ منتصف عام 2011، بما في ذلك AudioContext
.
تمت إضافة OfflineAudioContext
في العام التالي. نظرًا إلى الفترة الطويلة التي تم فيها استخدام
الواجهات العادية وهدف Google على المدى الطويل المتمثل في إزالة
الميزات التي تحتوي على بادئة، تم إيقاف الإصدارات التي تحتوي على بادئة من هذه الواجهات نهائيًا منذ
أواخر عام 2014، ونحن بصدد إزالتها الآن.
Intent to Remove | Chromestatus Tracker | Chromium Bug
إيقاف webkitCancelRequestAnimationFrame نهائيًا وإزالتها
طريقة webkitCancelRequestAnimationFrame()
هي واجهة برمجة تطبيقات قديمة متعلقة بالمورّد، وقد كان cancelAnimationFrame()
العادي متوفّرًا منذ فترة طويلة في Chromium. لذلك، تتم إزالة إصدار webkit.
Intent to Remove | Chromestatus Tracker | Chromium Bug
إيقاف المطابقة غير الحسّاسة لحالة الأحرف لسمة usemap
كانت سمة usemap
محدّدة سابقًا على أنّها غير حسّاسة لحالة الأحرف. لسوء الحظ، كان تنفيذ ذلك معقدًا بما يكفي لدرجة أنّه لم يتم تنفيذه بشكلٍ صحيح في أيّ من المتصفّحات. أشارت الأبحاث إلى أنّ هذه الخوارزمية المعقّدة غير ضرورية،
وحتى المطابقة غير الحسّاسة لحالة الأحرف في ASCII غير ضرورية.
نتيجةً لذلك، تم تعديل المواصفة لتتم أولاً المطابقة الحساسة لحالة الأحرف. تم إيقاف السلوك القديم نهائيًا في الإصدار 57 من Chrome، ومن المتوقّع أن تتم إزالته في الإصدار 58 من Chrome.
Intent to Remove | Chromestatus Tracker | Chromium Bug
إيقاف FileReaderSync نهائيًا في ملفات تشغيل الخدمات
كانت مواصفات مشغّل الخدمات
تتضمن دائمًا ملاحظة (غير قياسية) مفادها أنّه "يجب عدم بدء أي نوع من الطلبات المتزامنة داخل مشغّل الخدمات"، لتجنُّب حظر مشغّل الخدمات. سيؤدي حظر مشغّل الخدمة
إلى حظر جميع طلبات الشبكة من الصفحات الخاضعة للرقابة. عذرًا، كانت واجهة برمجة التطبيقات
FileReaderSync
متاحة منذ فترة طويلة في مهام الخدمة.
لا يعرض حاليًا سوى Firefox وChrome FileReaderSync
في مهام الخدمة.
هناك موافقة من Firefox في مناقشة المواصفات
على أن يتم إصلاح هذه المشكلة. من المتوقّع أن تتم إزالة هذه الميزة في الإصدار 59 من Chrome.
Intent to Remove | Chromestatus Tracker | Chromium Bug
إيقاف العنصر القديم الذي يُطلِق HTMLEmbedElement وHTMLObjectElement
إذا كانت الواجهة تحتوي على مُرسِل طلب قديم، يعني ذلك أنّه يمكن استدعاء مثيل كأحد
الدوالّ. تتوفّر هذه الميزة في الوقت الحالي على HTMLEmbedElement
وHTMLObjectElement
. في الإصدار 57 من Chrome، تم إيقاف هذه الميزة نهائيًا. بعد الإزالة، والتي من المفترض أن تتم في الإصدار 58 من Chrome، سيؤدي الاتصال إلى طرح استثناء.
يتوافق هذا التغيير مع التغييرات الأخيرة في المواصفات. لا يتوفّر السلوك القديم في Edge أو Safari، ويتم إزالته من Firefox.
Intent to Remove | Chromestatus Tracker | Chromium Bug
إيقاف ميزة RTCRtcpMuxPolicy من "negotiate" نهائيًا
يستخدم Chrome العنصر rtcpMuxPolicy
لتحديد سياسته المفضّلة بشأن
استخدام ميزة "البث المتعدّد عبر بروتوكول RTP/RTCP". في الإصدار 57 من Chrome، غيّرنا الإعداد التلقائي
rtcpMuxPolicy
إلى "طلب" وأوقفنا نهائيًا الإعداد "تفاوض" للأسباب التالية:
- يستخدم بروتوكول RTCP غير المجمّع موارد إضافية للشبكة.
- ستؤدي إزالة "negotiate" إلى تبسيط واجهة برمجة التطبيقات، لأنّه لن يكون لدى "RtpSender"/"RtpReceiver" سوى وسيلة نقل واحدة.
في الإصدار 57 من Chrome، تم إيقاف الإجراء "negotiate" نهائيًا. نعتقد أنّ هذا التغيير لن يؤثر في تجربة المستخدمين،
لأنّه سيتلقّى رسالة تشير إلى إيقاف الميزة نهائيًا وسيظل بإمكانه
إنشاء RTCPeerConnection
. ستتم إزالة هذه الميزة في الإصدار 63 من Chrome.
النية لإيقاف الميزة نهائيًا | خطأ في Chromium
إيقاف بيانات الاعتماد المضمّنة في طلبات الموارد الفرعية نهائيًا
إنّ الترميز الثابت لبيانات الاعتماد في طلبات الموارد الفرعية يشكّل مشكلة من ناحية الأمان، لأنّه سمح للمخترقين في السابق باستخدام هجمات القوة الغاشمة لمحاولة الوصول إلى بيانات الاعتماد. تزداد هذه المخاطر في ما يتعلّق بطلبات الموارد الفرعية التي تتضمّن بيانات اعتماد وتصل إلى نطاقات عناوين IP الداخلية (أجهزة التوجيه وما إلى ذلك). نظرًا لانخفاض معدّل الاستخدام، يبدو أنّ إغلاق ثغرة الأمان هذه (الصغيرة) أمر معقول تمامًا.
يمكن للمطوّرين تضمين موارد لا تتطلّب مصادقة أساسية/مجزأة، مع الاعتماد بدلاً من ذلك على ملفات تعريف الارتباط وآليات إدارة الجلسات الأخرى.