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

Joe Medley
Joe Medley

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

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

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

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

באג ב-Chromium

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

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

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

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

הסרת FileReaderSync מקובצי שירות (service workers)

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

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

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

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

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

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

הסרת הערך 'על פי דרישה' לשאילתות מדיה מסוג 'מעל לתמונה' או 'כל מעברו של העכבר מעל התמונה'

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

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

הסרה של MediaStreamTrack.remote

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

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

באג ב-Chromium

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

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

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

באג ב-Chromium

הסרת תכונות של SVGTests.required

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

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

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