כמעט בכל גרסה של Chrome אנחנו מוסיפים מספר רב של עדכונים ושיפורים למוצר, לביצועים שלו וליכולות של פלטפורמת האינטרנט. במאמר הזה מתוארים הפריטים שהוצאו משימוש והפריטים שיוסר ב-Chrome 57, שמשווק בגרסה בטא מתחילת פברואר. הרשימה הזו עשויה להשתנות בכל שלב.
הסרת המאפיין BluetoothDevice.uuids
המאפיין BluetoothDevice.uuids
הוסר כדי להתאים את Web Bluetooth API למפרט הנוכחי. אפשר לאחזר את כל שירותי ה-GATT המותרים באמצעות הקריאה device.getPrimaryServices().
הסרת רכיב ליצירת מפתחות
החל מגרסה 49 של Chrome, התנהגות ברירת המחדל של <keygen>
היא להחזיר את המחרוזת הריקה, אלא אם הוקצה הרשאה לדף הזה. דפדפני IE/Edge לא תומכים ב-<keygen>
ולא הוצגו בהם אותות ציבוריים לתמיכה ב-<keygen>
.
כבר עכשיו, <keygen>
מוגן ב-Firefox מאחורי תנועת משתמש, אבל החברה תומכת באופן ציבורי בהסרת התכונה. דפדפן Safari כולל את <keygen>
, ולא הוצגו בו דעות ציבוריות לגבי המשך התמיכה בו. החל מגרסה 57 של Chrome, הרכיב הזה הוסר.
כוונה להסרה | מעקב אחר סטטוס Chrome | באג ב-Chromium
הסרת ממשק API לניהול מאגרי זמן של משאבים עם קידומת
שתי שיטות וגורם מטפל באירועים, webkitClearResourceTimings()
, webkitSetResourceTimingBufferSize()
ו-onwebkitresourcetimingbufferfull
, הם לא בתוקף וספציפיים לספק. התמיכה בגרסאות הרגילות של ממשקי ה-API האלה החלה ב-Chrome 46, והפונקציות עם הקידומת הוצאו משימוש גם בגרסה הזו. התכונות האלה הופעלו במקור ב-WebKit, אבל הן לא הופעלו ב-Safari. ב-Firefox, ב-IE מגרסה 10 ואילך וב-Edge יש רק גרסה ללא קידומת של ה-API. לכן אנחנו מסירים את הגרסאות של webkit.
כוונה להסרה | מעקב אחר סטטוס Chrome | באג ב-Chromium
הסרת ServiceWorkerMessageEvent לטובת שימוש ב-MessageEvent
מפרט ה-HTML הרחיב את MessageEvent
כדי לאפשר את ServiceWorker
כסוג של המאפיין source
. client.postMessage()
ויצירת אירועי הודעות בהתאמה אישית משתנים כך שישתמשו ב-MessageEvent
במקום ב-ServiceWorkerMessageEvent
.
השדה ServiceWorkerMessageEvent
הוסר.
כוונה להסרה | מעקב אחר סטטוס Chrome | באג ב-Chromium
הסרת כינויים גלובליים של IndexedDB עם הקידומת webkit
נקודת הכניסה IndexedDB
והמגדירים הגלובליים נחשפו עם תחילית webkit
בסביבות Chrome 11. הגרסאות ללא הקידומת נוספו ב-Chrome 24, והגרסאות עם הקידומת הוצאו משימוש ב-Chrome 38. הממשקים הבאים מושפעים מהשינוי:
webkitIndexedDB
(נקודת הכניסה הראשית)webkitIDBKeyRange
(constructor גלובלי שלא ניתן לקרוא לו, אבל יש לו שיטות סטטיות שימושיות)webkitIDBCursor
webkitIDBDatabase
webkitIDBFactory
webkitIDBIndex
webkitIDBObjectStore
webkitIDBRequest
webkitIDBTransaction
(יוצרים גלובליים שלא ניתן לקרוא להם)
כוונה להסרה | מעקב אחר סטטוס Chrome | באג ב-Chromium
WebAudio: הסרת AudioContext ו-OfflineAudioContext עם קידומת
Chrome תומך ב-WebAudio
מאז אמצע 2011, כולל AudioContext
.
OfflineAudioContext
נוסף בשנה שלאחר מכן. בגלל משך הזמן הארוך שבו יש תמיכה בממשקים הרגילים, והמטרה לטווח הארוך של Google להסיר תכונות עם קידומת, הגרסאות עם הקידומת של הממשקים האלה הוצאו משימוש בסוף שנת 2014, והן יוסרו עכשיו.
כוונה להסרה | מעקב אחר סטטוס Chrome | באג ב-Chromium
הוצאה משימוש והסרה של webkitCancelRequestAnimationFrame
השיטה webkitCancelRequestAnimationFrame()
היא ממשק API מדור קודם שספציפי לספק, וה-cancelAnimationFrame()
הסטנדרטי נתמך ב-Chromium כבר זמן רב. לכן אנחנו מסירים את הגרסה ל-WebKit.
כוונה להסרה | מעקב אחר סטטוס Chrome | באג ב-Chromium
הוצאה משימוש של התאמה לא תלוית-רישיות למאפיין usemap
בעבר, המאפיין usemap
הוגדר ללא קשר לאותיות רישיות. לצערנו, ההטמעה הייתה מורכבת מספיק כך שאף דפדפן לא הטמיע אותה בצורה נכונה. מחקרים הראו שאין צורך באלגוריתמים מורכבים כאלה, ואפילו אין צורך בהתאמה של ASCII ללא קשר לאותיות רישיות.
כתוצאה מכך, המפרט עודכן כך שתתבצע התאמה תלוית אותיות רישיות. ההתנהגות הישנה הוצאה משימוש ב-Chrome 57, והיא תוסר ב-Chrome 58.
כוונה להסרה | מעקב אחר סטטוס Chrome | באג ב-Chromium
הוצאה משימוש של FileReaderSync בשירותי ה-worker
במפרט של Service Worker תמיד הייתה הערה (לא רגולטורית) שלפיה "אסור להתחיל בקשות סינכרוניות מסוג כלשהו בתוך service worker", כדי למנוע חסימה של ה-service worker. חסימה של קובץ השירות תמנע את כל בקשות הרשת מדפים שנשלטות. לצערנו, ממשק ה-API של FileReaderSync
זמין כבר זמן רב בשירותי עובדים.
בשלב הזה, רק דפדפני Firefox ו-Chrome חושפים את FileReaderSync
בשירותי העבודה.
בדיון בנושא המפרט, נציגי Firefox הסכימו שצריך לתקן את הבעיה הזו. ההסרה צפויה להתבצע ב-Chrome 59.
כוונה להסרה | מעקב אחר סטטוס Chrome | באג ב-Chromium
הוצאה משימוש של מבצע הקריאה הקודם ל-HTMLEmbedElement ול-HTMLObjectElement
אם לממשק יש מבצע קריאה מהדור הקודם, אפשר להפעיל את המופע כפונקציה. בשלב זה, רק HTMLEmbedElement
ו-HTMLObjectElement
תומכים בפונקציה הזו. ב-Chrome 57 היכולת הזו הוצאה משימוש. אחרי ההסרה, שצפויה להתרחש ב-Chrome 58, הקריאה תגרום להשלכת חריגה.
השינוי הזה מביא את Chrome לקו אחד עם השינויים האחרונים במפרט. ההתנהגות הקודמת לא נתמכת ב-Edge או ב-Safari, והיא תוסר מ-Firefox.
כוונה להסרה | מעקב אחר סטטוס Chrome | באג ב-Chromium
הוצאה משימוש של RTCRtcpMuxPolicy עם הערך 'negotiate'
Chrome משתמש ב-rtcpMuxPolicy
כדי לציין את המדיניות המועדפת שלו לגבי שימוש במולטיפלקס של RTP/RTCP. ב-Chrome 57 שינינו את ברירת המחדל של rtcpMuxPolicy
ל-'דרישה' והוצאנו משימוש את האפשרות 'משא ומתן' מהסיבות הבאות:
- שימוש ב-RTCP ללא מיקס משתמש במשאבי רשת נוספים.
- הסרת האפשרות 'negotiate' תפשט את ממשק ה-API, כי ל-'RtpSender'/'RtpReceiver' תהיה תמיד רק תשתית תחבורה אחת.
ב-Chrome 57, האפשרות 'negotiate' הוצאה משימוש. אנחנו מאמינים שזהו שינוי לא קריטי, כי המשתמש יקבל הודעה על הוצאה משימוש ועדיין אפשר ליצור את RTCPeerConnection
. ההסרה מתבצעת ב-Chrome 63.
כוונה להוצאה משימוש | באג ב-Chromium
הוצאה משימוש של התמיכה בפרטי כניסה מוטמעים בבקשות למשאבי משנה
קידוד קבוע של פרטי הכניסה בבקשות למשאבים משניים הוא בעייתי מבחינת אבטחה, כי בעבר הוא איפשר להאקרים לפרוץ בכוח לפרטים האלה. הסכנות האלה חמורות יותר בבקשות למשאבי משנה עם פרטי כניסה שמגיעות לטווחי IP פנימיים (נתבים וכו'). לאור השימוש הנמוך, נראה הגיוני לסגור את נקודת החולשה הזו (הקטנה) באבטחה.
מפתחים יכולים להטמיע משאבים שלא דורשים אימות בסיסי/digest, ולהסתמך במקום זאת על קובצי cookie ועל מנגנונים אחרים לניהול סשנים.