מה קורה בתוספים ל-Chrome?

ביולי השקנו סדרת בלוגים חדשה כדי לעדכן אתכם בנוגע לפיתוחים של תוספים. הודות למשוב החשוב ולשיתוף הפעולה המתמשך שלנו עם ספקי דפדפנים אחרים בקבוצה הקהילה של Webextensions, אנחנו ממשיכים לשפר את ממשקי ה-API של התוספים ופועלים לעקביות יותר בין דפדפנים.

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

תכונות וממשקי API חדשים לתוספים

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

תוצאות נבחרות

בעיות ידועות נפתרו

צוות התוסף פועל באופן פעיל כדי לפתור בעיות יציבות של מניפסט מגרסה V3. ב-Chrome 116 הושקו שיפורים רבים שעזרו לנו להתקדם באופן משמעותי בצמצום הפער בתכונות בין מניפסט מגרסה V2 לגרסה V3. בגרסה 120 של Chrome, סיימנו לטפל בכל הפערים בפלטפורמות בעדיפות גבוהה, וסגרנו את כל הבאגים הקריטיים המתועדים בדף הבעיות המוכרות. כל התכונות זמינות כרגע ב-Chrome 120 Canary, מלבד תמיכה של fileHandler ב-ChromeOS Lacros ו-userScripts API שיישלח בהמשך החודש. פרטים נוספים זמינים בדף 'בעיות מוכרות' המעודכן.

יציבות משופרת של Service Worker

נפתרו בעיות יציבות שקשורות ל-Service Worker. בגרסה 116 של Chrome, הוספנו לממשקי API חזקים של תוספים שמציגים בקשה למשתמש ותמיכה משופרת ב-WebSockets (עיינו במדריך שימוש ב-WebSockets בתוספים). החל מגרסה 118 של Chrome, קובץ שירות (service worker) יישאר פעיל במהלך סשן פעיל של Debugger API.

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

אבטחה מוגברת

בעבר, ניווט אל מספר כתובות URL של chrome:// באמצעות tabs.update(), tabs.create ו-windows.create() יצר שגיאה או גרם לקריסת Chrome. בנוסף, tabs.update() לא הצליח לפתוח כתובת URL של JavaScript. בגרסה 117 של Chrome הרחבנו את מספר כתובות ה-URL הנתמכות ב-chrome://. חסימת כתובות URL ב-JavaScript חלה עכשיו גם על כל השיטות של ה-API של התוספים.

בגרסה 117 של Chrome, אם תוסף שהם התקינו לא זמין יותר בחנות האינטרנט של Chrome, המשתמשים יקבלו התראות יזומות בדף התוספים ל-Chrome. מצב כזה יכול לקרות אם המפתח מבטל את הפרסום של התוסף, אם הוא הוסר עקב הפרות מדיניות או אם הוא מזוהה כתוכנה זדונית. אפשר לקבל הסבר מעמיק בנושא העברת בדיקת האבטחה לדף chrome://extensions.

בגרסה 118 של Chrome, תוספים לא יורשו לנווט לכתובות URL של file:// באמצעות ממשקי ה-API chrome.tabs ו-chrome.windows, אלא אם האפשרות 'מתן גישה לכתובות URL של קבצים' מופעלת בדף הפרטים של התוסף. פרטים נוספים זמינים בדיון של WECG.

השקות נוספות של ממשקי API

  • Runtime API: החל מגרסה 116 של Chrome, אתם יכולים להשתמש ב-runtime.getContexts() כדי לאחזר מידע על ההקשרים הפעילים. לדוגמה, אתם יכולים לבדוק אם יש מסמך פעיל שלא נמצא במסך.
  • Side Panel API ב-Chrome 116 אפשר להשתמש ב-sidepanel.open() כדי לפתוח את החלונית הצדדית של התוספים באופן פרוגרמטי בתגובה לתנועת משתמש, כמו לחיצה על תפריט ההקשר.
  • ב-TabCapture API נוספה האפשרות להפעיל את getMediaStreamId() מה-service worker של התוסף ולקבל אובייקט MediaStream ממזהה של סטרימינג במסמך מחוץ למסך ב-Chrome 116. דוגמאות מופיעות במאמר הקלטת אודיו וצילום מסך.
  • DeclarativeNetRequest API: ערך ברירת המחדל של הנכס isUrlFilterCaseSensitive השתנה ל-false ב-Chrome 118.

בקרוב…

אנחנו מתכננים לטפל בכל הפריטים הנותרים בדף הבעיות המוכרות בגרסת Chrome 120. בנוסף, אנחנו מתכננים להוסיף את התכונות הבאות:

  • UserScripts API יאפשר למנהלי סקריפטים של משתמשים לתאם איך ומתי להחדיר אוסף של סקריפטים של משתמשים לדפי אינטרנט. לפרטים, אפשר לעיין בהצעה של WECG.
  • ReadingList API יאפשר למפתחים ליצור, לקרוא, לעדכן ולמחוק מטא-נתונים שנמצאים בחלונית 'רשימת הקריאה' בחלונית הצדדית. כדאי לצפות בסרטון מה חדש בתוספים ל-Chrome.
  • בעקבות משוב בקבוצת הקהילה של תוספי אתרים, אנחנו מגדילים משמעותית את המגבלה על מערכי כללים סטטיים שהופעלו מ-10 ל-50. בנוסף, אנחנו מגדילים את המספר הכולל של ערכות הכללים הסטטיות המותרות מ-50 ל-100. האפשרות הזו זמינה כרגע ב-Canary.
  • ה-API לטיפול בקבצים יהיה זמין לתוספים ל-ChromeOS החל מ-ChromeOS 120. התוסף מאפשר לתוספים לפתוח קבצים עם סוגי MIME וסיומות קבצים ספציפיים באופן דומה לטיפול בקבצים בפלטפורמת אינטרנט.
  • לתוספים תהיה אפשרות להשתמש ב-Push API באינטרנט דרך self.registration.pushManager.subscribe() בלי להציג התראה למשתמש. לשם כך, יש להגדיר את userVisibleOnly כ-false. כך, ההתראות יהיו חלופה חלקה יותר ל-WebSockets ב-Service Worker (MV3) לתקשורת אסינכרונית בין שרתים ללקוחות. לפרטים נוספים, אפשר לעיין במאמר באג ב-Chromium ובדיון על WECG.

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

שדרוגים של מסמכים

כמו כן, שיפרנו והוספנו למסמכי התיעוד שלנו. כדאי להמשיך לשאול שאלות לגבי chromium-group ובעיות במסמכי התיעוד.

תוצאות נבחרות

עדכונים נוספים

בקרוב…

  • מדריך וחומר עזר ל-User Scripts API.
  • דוגמאות ומדריך ל-Firebase.
  • הפניית ReadList API.

עיצוב מחדש של חנות האינטרנט של Chrome 🌈

צילום מסך של דף הבית בחנות האינטרנט של Chrome..
דף הבית החדש של חנות האינטרנט של Chrome

מוקדם יותר החודש הודענו על הצצה מוקדמת לחנות האינטרנט המשודרגת של Chrome, כפי שרמזנו על Google I/O. תוכלו להתנסות בו בעצמכם! https://chromewebstore.google.com/. הנה כמה שינויים שכדאי לשים לב אליהם:

  • רשימת הקטגוריות הוגדלה מרשימה של אחת-עשרה לרשימה חדשה של 11-שלוש קבוצות של קטגוריות.
  • השלמה אוטומטית משופרת בחיפוש.
  • צילומי המסך מוצגים עכשיו באיכות גבוהה יותר באופן משמעותי. אם עוד לא עשיתם זאת, תוכלו להעלות צילומי מסך בגודל 1280x800.
  • מעכשיו, התשובות לשאלות בכרטיסייה 'תמיכה' יכללו שורות חדשות.
  • מעכשיו, כשמשיבים לביקורות של משתמשים ועונים לשאלות תמיכה, התשובה שלך תכלול את התג 'מפתח' לצד השם שלך.
  • כדי לספק למשתמשים קישור ישיר לדף הביקורות, מוסיפים את הטקסט '/reviews' בסוף כתובת ה-URL של הפריט בחנות. לדוגמה: https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews.

תודה על המשוב שכולם סיפקו עד עכשיו לקבוצת Chromium-google. אתם יכולים להצטרף לדיון או לשלוח משוב ישירות לצוות של חנות האינטרנט של Chrome באמצעות האפשרות שליחת משוב בתפריט:

שליחת משוב בדף של חנות האינטרנט של Chrome
שליחת משוב בדף חנות האינטרנט של Chrome

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

✨ הידעת?

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

אנחנו יוצרים איתך קשר 🙌

המשכנו לפנות לקהילת מפתחי התוספים באופן אישי, משיקים תוכניות חדשות ומשתתפים בכנסים. הנה כמה מהשינויים הבולטים:

  • תוכנית המומחים של Google למפתחים הושקה באוגוסט. יש לנו יותר מ-12 מעבדי GDE מכל העולם שמתמקדים בתוספים ל-Chrome שמספקים לנו משוב מצוין. זו תקופה מרגשת מאוד לתוכנית!
  • נשתתפנו ב-TPAC (הכנס השנתי של W3C) כחלק מקבוצת הקהילה של תוספי אינטרנט, ונפגשנו עם נציגים מ-Firefox ו-Safari יחד עם כמה חברים בקהילה. התקדמנו בצורה משמעותית בכמה נושאים, כולל מעבר לממשקי API עקביים יותר של תוספים, עבודה על מפרטים והתבססות על הבדיקות של פלטפורמת האינטרנט כדי ליצור חבילת בדיקות חדשה. קוראים את כל הדקות במאגר של WECG.
  • בשבוע שעבר, צוות התוסף השתתף בכנס למפתחים בנושא סינון מודעות באמסטרדם. הם נפגשו עם כמה מכם בבית קפה שהם ערכו לפני שבוע הפסגה ושעות העבודה הפתוחות ביום שישי.
    צוות התוספים בכנס למפתחים בנושא סינון מודעות
    צוות התוספים בכנס למפתחים בנושא סינון מודעות

גם אם לא הצלחתם להשתתף באף אחד מהאירועים האלה, תוכלו להמשיך לגלות מעורבות. לשם כך, תשאלו שאלות בקבוצת Google תוספים ל-Chromium, תעקבו אחרי דיונים של שותפי דפדפן בנושא WECG ותדווחו על בעיות כלשהן במסמכים.

שוב תודה שבחרת להיות חלק מקהילת מפתחי התוספים.