גרסת בטא של Chrome 112

קינון CSS, קומפוזיציה של אנימציה ופרמטר של שולח עבור הבנאי של FormData.

אם לא צוין אחרת, השינויים שמתוארים בהמשך חלים על הגרסה החדשה ביותר של ערוץ בטא ב-Chrome ל-Android, ל-ChromeOS, ל-Linux, ל-macOS ול-Windows. אפשר לקבל מידע נוסף על התכונות שמפורטות כאן בקישורים המצורפים או מהרשימה ב-ChromeStatus.com. גרסת הבטא של Chrome 112 זמינה ב-9 במרץ 2023. אפשר להוריד את העדכונים האחרונים בכתובת Google.com למחשב או מחנות Google Play ב-Android.

CSS

קינון CSS

היכולת לקנן כללי סגנון CSS בתוך כללי סגנון אחרים, על ידי שילוב בוררים מבחוץ עם כלל פנימי להגברת המודולריות ולתחזוקה של גיליונות סגנונות. מידע נוסף זמין במאמר הזה בנושא Nesting ל-CSS.

נכס CSS animation-composition

המאפיין animation-composition מאפשר שימוש במפרט של הפעולה המורכבת כאשר מספר אנימציות משפיעות על אותו נכס בו-זמנית. להצגת דוגמה בהדגמה.

ממשקי API לאינטרנט

סרגל המידע 'טען מחדש את הדף הזה' לא מוצג יותר אם המסגרת ברמה העליונה רושמת שינויים בהרשאות

מסתיר את סרגל המידע 'טען מחדש את הדף הזה' אם המסגרת שברמה העליונה רשומה לאירוע onchange של PermissionStatus, מה שנחשב כאינדיקציה לכך שהאפליקציה רוצה להגיב באופן דינמי לשינויים בהרשאות המצלמה או המיקרופון שהופעלו דרך תיבת הדו-שיח של פרטי הדף. ללא קשר לנוכחות של event listener, ההתנהגות הקיימת נשארת ללא שינוי שסטרימינג של מדיה מופסק מיד לאחר ביטול ההרשאה.

הוספת פרמטר אופציונלי של שולח ל-constructor של FormData

מאפשר להעביר לחצן שליחה ל-constructor של FormData. אם ללחצן יש שם או שהוא לחצן של תמונה, הוא יתרום לקבוצת נתוני הטופס. כך אפשר ליצור אובייקט FormData עם קבוצת נתונים שזהה לזה של שליחת טופס וניל שמופעלת על ידי הלחצן.

דגל RegExp v עם סימון קבוצות ומאפיינים של מחרוזות

הוספה של פעולות קבוצה, ליטרל מחרוזת, מחלקות מקוננות ומאפייני Unicode של מחרוזות למחלקות תווים של ביטויים רגולריים. הגדרה של פעולות ומאפייני Unicode של מחרוזות מאפשרת למפתחים ליצור בקלות ביטויים רגולריים שתואמים לתווי Unicode מסוימים.

לדוגמה:/[\p{Script_Extensions=Greek}&&\p{Letter}]/v התאמה לכל האותיות היווניות.

האלגוריתם למיקוד הראשוני של <dialog> עודכן

בוצעו מספר שינויים ברכיב שנבחר כדי לקבל מיקוד כאשר רכיב <dialog> נפתח:

  • גרום לשלבי ההתמקדות בתיבת הדו-שיח להתמקד ברכיבים הניתנים למיקוד במקלדת ולא בכל רכיב שניתן להתמקד בו.
  • מוודאים שרכיב תיבת הדו-שיח עצמו יתמקד אם מגדירים בו את המאפיין 'מיקוד אוטומטי'.
  • גרום לרכיב תיבת הדו-שיח עצמו לקבל מיקוד בתור חלופה, במקום שהמיקוד יהיה "איפוס" לרכיב הגוף.

קריאה לזנב של WebAssembly

להוסיף קריאה מפורשת לזנב וקודי opcodes של קריאת זנב עקיפים ל-WebAssembly.

WebGLContextEvent ב-Web Workers

הסוג WebGLContextEvent מוגדר במפרט WebGL של Khronos במשך מספר שנים, אבל עד לאחרונה לא הבחנתי בכך שב-Blink הסוג הזה לא חשוף לעובדי אינטרנט.

רוב האפליקציות פשוט מוסיפות event listener לסוג, ולא מחפשות את אב הטיפוס שלו בהיקף הגלובלי. זהו תיקון פשוט ל-Web IDL של Blink עבור WebGLContextEvent, אבל מדובר בשינוי שנחשף באינטרנט.

דילוג על handler של אחזור קובץ השירות (no-op) של קובץ השירות (service worker)

התכונה מדלגת במהירות על הניווט בדפים ללא קובצי handler של Service Worker ללא תפעול.

באתרים מסוימים יש תוכנת אחזור מסוג no-op (ללא פעולה) (לדוגמה, onfetch = () => {}). מאחר שהרכיב listener לאחזור היה אחת מהדרישות להיות אפליקציית אינטרנט מתקדמת (PWA), הנחנו שהם עשו זאת כדי שהאתר שלהם יכיר כ-PWA. עם זאת, התקורה משמשת רק לצורך הפעלת Service Worker והפעלה של תוכנת האזנה ללא פעולות (no-op), בלי לספק יתרונות של תכונות כמו שמירה במטמון או יכולות אופליין, כי הקוד לא עושה דבר.

כדי שהניווט לדפים כאלה יהיה מהיר יותר, החל מגרסה 112 של Chrome נשמיט את ההפעלה של ה-Service Worker ואת שליחת ה-listener מנתיב הניווט הקריטי אם סוכן משתמש מזהה שכל המאזינים לאחזור של ה-Service Worker אינם תקינות.

כחלק מהשינוי הזה, Chromium יציג אזהרות בקונסולה אם כל פונקציות ההאזנה לאחזור של קובץ השירות (service worker) לא מבוצעות שום פעולה, ויעודד מפתחים להסיר את הפונקציות המתאימות לאחזור הנתונים. בתקווה, אתרים יפסיקו להשתמש בפונקציות אחזור חסרות תועלת ונוכל להוציא את התכונה משימוש בעתיד.

קידוד קבלה: br (Brotli) בחיבור HTTPS ב-WebView

Brotli (סוג קידוד התוכן: br) הוא אלגוריתם דחיסת נתונים ללא אובדן מטרה כללית, שמציע דחיסה צפופה יותר עם יחס דחיסה ומהירות בהשוואה לשיטות הדחיסה הטובות ביותר הזמינות כיום לשימוש כללי (לפרטים נוספים, ראו google/brotli ו-RFC 7932).

סוג קידוד התוכן HTTP עבור Brotli (Accept-Encoding: br) נתמך על ידי Chrome מגרסה 50, אבל הוא לא הופעל עבור WebView עד עכשיו. התכונה תושק בהדרגה כדי להבטיח יציבות, ותהיה זמינה ל-50% מהאוכלוסייה ב-WebView בטא.

גרסאות מקור לניסיון מתבצעות

בגרסה 112 של Chrome, אפשר להביע הסכמה לגרסאות המקור לניסיון הבאות.

FedCM: API לאימות מחדש אוטומטי

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

נכון לעכשיו, אחרי שמשתמש יצר חשבון מאוחד ב-RP (צד מהימן) עם IdP (ספק זהויות) דרך FedCM, בפעם הבאה שהוא נכנס לאתר הוא צריך לבצע את אותם שלבים בממשק המשתמש. כלומר, המשתמשים יצטרכו לאשר ולאמת מחדש באופן מפורש כדי להמשיך בתהליך הכניסה. מכיוון שאחת המטרות העיקריות של FedCM היא למנוע מעקב סמוי, חוויית המשתמש (UX) הזו הגיונית לפני שהמשתמש יצר את החשבון המאוחד, אבל היא הופכת לבלתי נחוצה ומסורבלת לאחר שהמשתמש עבר פעם אחת. לכן יש ב-Chrome חוויית משתמש יעילה יותר, שהגורמים מוגבלים יכולים לבחור עבור המשתמשים החוזרים.

הרשמה לתקופת ניסיון עם נתוני מקור לאימות אוטומטי של FedCM

תקופת ניסיון להוצאה משימוש

השיטה getStats() של RTCPeerConnection לא תחזיר יותר אובייקטים של נתונים סטטיסטיים כאשר type == "track" או "stream". התכונה הזו הוסרה בגרסה 112 של Chrome. כדאי להצטרף לתקופת הניסיון הזו כדי שיהיה לך יותר זמן לבצע את השינויים הנדרשים.

הרשמה לתקופת הניסיון הזו בתהליך הוצאה משימוש

X-Request-With להוצאה משימוש של WebView

גרסת המקור לניסיון של ההוצאה משימוש תומכת בהפעלה מראש באתרים שונים בקריאות לשירותים שמסתמכים על הכותרת X-Requested-With. האפשרות הזו זמינה ב-WebView מ-Chrome 112. אפשר לעיין בהוראות ההגדרה של גרסת המקור לניסיון כדי להבין איך להשתמש בתכונה הזו.

נרשמים לתקופת הניסיון להוצאה משימוש של X-REQUEST עם WebView.

הוצאה משימוש והסרות

הגרסה הזו של Chrome מציגה את ההסרות וההוצאה משימוש המפורטות בהמשך. בכתובת ChromeStatus.com אפשר למצוא רשימות של הוצאה משימוש מתוכננות, יצאו משימוש כרגע והסרות קודמות.

בגרסה הזו של Chrome מוציאים משימוש תכונה אחת.

מוציאים משימוש את מגדיר document.domain

הרכיב המגדיר document.domain מאפשר למפתחים לשנות את מדיניות המקור הזהה, ובכך להפוך את גבולות האבטחה הבסיסיים שאנחנו שואפים לתחזק ולשים מכשולים בדרך לשינויים פוסט-ספקטרליים במודל העיבוד של Chromium. ההצטרפות עכשיו אפשרית דרך אשכולות סוכנים המשויכים למקור.

בגרסה הזו של Chrome הוסרה תכונה אחת.

צריך להסיר את האובייקטים של הנתונים הסטטיסטיים track ו-stream מהשיטה getStats() של RTCPeerConnection

השיטה getStats() של RTCPeerConnection לא תחזיר יותר אובייקטים של נתונים סטטיסטיים כאשר type == "track" או "stream". לא נשלח ב-Chrome 112, עם תקופת ניסיון להוצאה משימוש (מפורט למעלה) במטרה להרחיב את הזמינות של המדדים האלה לגרסה 115 של Chrome.