الإيقاف والإزالة في Chrome 59

جو ميدلي
جو ميدلي

في كل إصدار تقريبًا من Chrome، نشهد عددًا كبيرًا من التحديثات والتحسينات للمنتج وأدائه وإمكانات "منصة الويب" أيضًا. توضّح هذه المقالة عمليات الإيقاف النهائي وعمليات الإزالة في الإصدار 59 من Chrome، والذي سيكون في مرحلة تجريبية اعتبارًا من 27 نيسان (أبريل). تخضع هذه القائمة للتغيير في أي وقت.

إيقاف navigator.sendBeacon() مؤقتًا لبعض الكائنات الثنائية الكبيرة

كانت الدالة navigator.sendBeacon() متاحة منذ إصدار Chrome 39. كما تم تنفيذها في الأصل، قد تحتوي الوسيطة data للدالة على أي كائن ثنائي كبير عشوائي نوعه ليس مدرجًا ضمن القائمة الآمنة CORS. ونعتقد أن هذا تهديد أمني محتمل، على الرغم من أن أحد لم يحاول استغلاله حتى الآن. وبما أنّه لا يتوفّر لدينا إصلاح فوري معقول لهذه المشكلة، لم يعُد من الممكن استدعاء sendBeacon() في الكائنات الثنائية التي يكون نوعها غير مدرج في قائمة CORS الآمنة.

على الرغم من تنفيذ هذا التغيير على الإصدار 60 من Chrome، تم دمجه مرة أخرى مع الإصدار 59 من Chrome.

خطأ في Chromium

إزالة الميزات من WebVR التي ليست ضمن المواصفات المعدَّلة

اشتمل التطبيق الحالي لتقنية WebVR، الذي تم تنفيذه أصلاً في Chrome 52، على عدة طرق وخصائص لن تكون ضمن المواصفات النهائية. وتمت إضافة رسائل إيقاف هذه الميزات إلى التجربة التجريبية التي بدأت في Chrome 56. وتتمّ إزالة هاتين الميزتَين الآن. وتشمل:

  • VRDisplay.getPose()
  • VRDisplay.resetPose()
  • VRDisplay.isConnected
  • VRDisplayCapabilities.hasOrientation
  • VREyeParameters.fieldOfView

نية إجراء التجربة | أداة تتبُّع Chromestatus | خطأ Chromium | نتائج التجربة والتقييم حتى الآن

إزالة FileReaderSync من مشغّلي الخدمات

لطالما كانت لدى مواصفات عامل الخدمة ملاحظة (غير معيارية) تفيد بأنّ "أي نوع من الطلبات المتزامنة يجب ألا يبدأ داخل عامل خدمات"، وذلك لتجنب حظر مشغّل الخدمة (لأن حظر مشغّل الخدمات سيؤدي إلى حظر جميع طلبات الشبكة من الصفحات الخاضعة للرقابة). ومع ذلك، كانت واجهات برمجة التطبيقات المتزامنة مثل FileReaderSync لا تزال متاحة لدى مشغِّلي الخدمة. تم إيقاف FileReaderSync نهائيًا في Chrome 57. وتمت إزالتها في الإصدار 59 من Chrome.

هدف الإيقاف | Chromestatus Tracker | خطأ Chromium

إزالة وظائف إعداد أحداث DeviceOrientation غير العادية

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

ونظرًا لأن Chrome يفعّل هذه الإنشاءات تلقائيًا في Chrome 59، فإن دوال الإعداد القديمة تتم أيضًا إزالة initDeviceMotionEvent() وinitDeviceOrientationEvent(). أوقف Edge دوال التهيئة نهائيًا ولقد شحن فايرفوكس بالفعل المنشئات الإنشائية.

هناك نية للإزالة | خطأ Chromium

إزالة القيمة "عند الطلب" لطلبات البحث عن الوسائط من خلال التمرير أو التمرير

تمت إزالة القيمة "عند الطلب" لطلبات البحث عن الوسائط التمرير/أي تمرير سريع من المواصفات منذ عام تقريبًا. وبالتالي، تتم إزالة الاستعلامات عن الوسائط هذه في الإصدار 59 من Chrome.

هدف الإزالة | Chromestatus Tracker | خطأ Chromium

إزالة MediaStreamTrack.remote

في Chrome 48، تمت إضافة السمة MediaStreamTrack.remote للتوافق مع واجهة برمجة تطبيقات Media Capture وStreams API بهدف السماح لـ JavaScript بمعرفة ما إذا كان WebRTC MediaStreamTrack من مصدر بعيد أو من مصدر محلي.

ومنذ ذلك الحين، تمت إزالة هذه السمة من المواصفات، واعتبارًا من الإصدار 59 من Chrome، لن تعود متاحة.

خطأ في Chromium

إزالة إمكانية إنشاء ProgressEvent باستخدام document.createEvent()

تطلبت الإصدارات السابقة من مواصفات DOM تنفيذ document.createEvent("ProgressEvent"). على الرغم من ذلك، كان الاستخدام منخفضًا دائمًا وتمت إزالة الدعم من Gecko وWebkit. وقد تمت إزالة الفعالية نفسها من المواصفات في آذار (مارس) من هذا العام.

تمت إزالة ProgressEvent من Chrome الآن للتوافق مع النظام الأساسي وأحدث المواصفات.

خطأ في Chromium

إزالة ميزات SVGTests.مطلوبة

في الإصدار الأول من مواصفات SVG، قد يطلب تطبيق ما DOMImplementation.hasFeature للتحقّق من توافق واجهة SVG معيّنة. احتوى العديد من عناصر SVG على سمة requiredFeatures كانت تعرض المعلومات نفسها.

في SVG2، تعرض السمة DOMImplementation.hasFeature القيمة "صحيح" دائمًا. وبالتالي، لم يعُد requiredFeatures يقدّم أي فائدة. وبما أنّه تمت إزالته من المواصفات لأنه تم إيقافه نهائيًا في الإصدار 54 من Chrome وتمت إزالته في الوقت الحالي.

هدف الإزالة | Chromestatus Tracker | خطأ Chromium