הוצאה משימוש והסרות ב-Chrome 59

ג'ו מדלי
ג'ו מדלי

כמעט בכל גרסה של Chrome ניתן לראות מספר משמעותי של עדכונים ושיפורים למוצר, לביצועים שלו וליכולות של פלטפורמת האינטרנט. במאמר הזה נתאר את ההוצאה משימוש וההסרות בגרסה 59 של Chrome, שנמצאת בגרסת בטא נכון ל-27 באפריל. הרשימה הזו עשויה להשתנות בכל עת.

השבתה זמנית של navigator.sendBeacon() בחלק מה-blobs.

הפונקציה navigator.sendBeacon() זמינה החל מגרסה Chrome 39. כפי שנוצר במקור, הארגומנט data של הפונקציה יכול להכיל כל blob שרירותי שהסוג שלו לא נמצא ברשימת ההיתרים של CORS. אנחנו מאמינים שמדובר באיום אבטחה פוטנציאלי, למרות שאף אחד עדיין לא ניסה לנצל אותו. מאחר שאין לנו פתרון מיידי סביר לכך, באופן זמני, לא ניתן יותר להפעיל את sendBeacon() ב-blobs שהסוג שלהם לא בטוח ל-CORS.

על אף ששינוי זה יושם עבור Chrome 60, הוא עבר מיזוג בחזרה ל-Chrome 59.

באג ב-Chromium

הסרת תכונות מ-WebVR שלא כלולות במפרט המתוקן

ההטמעה הנוכחית של WebVR, שהוטמעה במקור ב-Chrome 52, הכילה מספר שיטות ומאפיינים שלא ייכללו במפרט הסופי. הודעות על הוצאה משימוש נוספו לתכונות האלה במהלך גרסת המקור לניסיון שהתחילה ב-Chrome 56. התכונות האלה מוסרות עכשיו. ביניהם:

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

כוונת ניסוי | מעקב אחר הסטטוס של Chrome | באג ב-Chromium | תוצאות גרסת הניסיון של המקור עד עכשיו

הסרת FileReaderSync מ-Service Workers

במפרט של Service Worker תמיד היה כתוב ש'אין להפעיל כל סוג של בקשות סינכרוניות בתוך Service Worker', כדי למנוע חסימה של ה-Service Worker (כי חסימה של ה-Service Worker תחסום את כל בקשות הרשת מדפים מבוקרים). עם זאת, ממשקי API סינכרוניים כמו FileReaderSync עדיין היו זמינים ב-Service Workers. FileReaderSync הוצא משימוש ב-Chrome 57. היא תוסר בגרסה 59 של Chrome.

כוונת הוצאה משימוש | מעקב אחר הסטטוס של Chrome | באג ב-Chromium

הסרת פונקציות לא סטנדרטיות של אתחול אירועים מסוג DeviceOrientation

כבר זמן מה שיש מגמה כללית בממשקי ה-API של הדפדפן, שלא מפונקציות אתחול ומבנאי אובייקטים. הגרסה העדכנית ביותר של מפרט האירועים של DeviceOrientation תואמת למגמה הזו, כי יש צורך בבנאים גם של DeviceOrientationEvent וגם של DeviceMotionEvent.

מכיוון ש-Chrome מפעיל את הבנאים האלה כברירת מחדל ב-Chrome 59, את פונקציות האתחול הקודמות, initDeviceMotionEvent() ו-initDeviceOrientationEvent() יוסרו. Edge הוציא משימוש את פונקציות האתחול, ו-Firefox כבר שלח את הבנאים.

כוונה להסיר | באג ב-Chromium

צריך להסיר את הערך 'לפי דרישה' לשאילתות מדיה עם העברת עכבר מעל שאילתות מדיה או כל חלון אחר שמעבירים מעליה את העכבר

הערך "on-demand" (לפי דרישה) של שאילתות מדיה בעת העברת העכבר או כל מעבר בריחוף הוסר מהמפרט לפני כשנה. בעקבות זאת, שאילתות המדיה האלה יוסרו ב-Chrome 59.

כוונה להסיר | מעקב אחר הסטטוס של Chrome | באג ב-Chromium

הסרה של MediaStreamTrack.remote

ב-Chrome 48, התווסף המאפיין MediaStreamTrack.remote לתמיכה ב-Media Capture and Streams API מתוך מטרה לאפשר ל-JavaScript לדעת אם WebRTC MediaStreamTrack מגיע ממקור מרוחק או ממקור מקומי.

מאז הנכס הזה הוסר מהמפרט. החל מגרסה 59 של Chrome הוא לא נתמך יותר.

באג ב-Chromium

הסרת התמיכה ביצירת ProgressEvent באמצעות document.createEvent()

בגרסאות קודמות של מפרט ה-DOM נדרשת הטמעה של document.createEvent("ProgressEvent"). עם זאת, השימוש תמיד היה נמוך, והתמיכה ב-Gecko וב-Webkit כבר הוסרה. האירוע עצמו הוסר מהמפרט במרץ השנה.

כדי לעמוד בדרישות של הפלטפורמה ובמפרט העדכני ביותר, ProgressEvent הוסר מ-Chrome.

באג ב-Chromium

הסרת תכונות נדרשות בדיקת SVG

בגרסה הראשונה של מפרט ה-SVG, אפליקציה יכולה להפעיל DOMImplementation.hasFeature כדי לאמת שממשק SVG מסוים נתמך. רכיבי SVG רבים הכילו מאפיין requiredFeatures שהחזיר את אותו המידע.

ב-SVG2 DOMImplementation.hasFeature המאפיין תמיד מחזיר TRUE. כתוצאה מכך, requiredFeatures כבר לא מועיל. מכיוון שהיא הוסרה מהמפרט, היא הוצאה משימוש ב-Chrome 54 ועכשיו היא הוסרה.

כוונה להסיר | מעקב אחר הסטטוס של Chrome | באג ב-Chromium