کروم 129

تاریخ انتشار پایدار: 17 سپتامبر 2024

مگر اینکه خلاف آن ذکر شده باشد، تغییرات زیر برای انتشار کانال پایدار Chrome 129 برای Android، ChromeOS، Linux، macOS و Windows اعمال می‌شود.

تغییرات مرورگر و ابزارهای توسعه

محاسبه فشار دستورات افزونه WebDriver

دستورات WebDriver را برای ایجاد، حذف و به‌روزرسانی نمونه‌های منبع فشار برای منابع فشار مجازی نشان می‌دهد. چنین منابع فشاری به پشتیبانی سخت افزاری یا سیستم عامل اصلی وابسته نیستند و می توانند برای آزمایش استفاده شوند.

باگ ردیابی #347031400 | ورودی ChromeStatus.com | مشخصات

CSS

ویژگی interpolate-size CSS و تابع ()calc-size

ویژگی CSS interpolate-size به صفحه اجازه می‌دهد انیمیشن‌ها و انتقال کلمات کلیدی اندازه ذاتی CSS مانند auto ، min-content و fit-content را انتخاب کند، در مواردی که آن کلمات کلیدی را می‌توان متحرک کرد.

تابع calc-size() CSS یک تابع CSS شبیه به calc() است، با این حال از عملیات دقیقاً روی یک کلمه کلیدی سایز پشتیبانی شده نیز پشتیبانی می کند. کلیدواژه‌های اندازه‌گیری پشتیبانی شده auto ، min-content ، max-content ، و fit-content هستند. سایر کلمات کلیدی اندازه‌گیری که ممکن است در آینده پشتیبانی شوند عبارتند از stretch (در حال حاضر به صورت پیشوند -webkit-fill-available پشتیبانی می‌شود) و contain . این تابع برای نمایش مقادیر در وسط انیمیشن های مجاز توسط ویژگی interpolate-size استفاده می شود.

باگ ردیابی #40339056 | ورودی ChromeStatus.com | مشخصات

تغییر نام CSS anchor positioning inset-area به position-area

CSSWG تصمیم گرفت نام این ویژگی را از inset-area به position-area تغییر دهد. Chrome 129 position-area ارسال می شود، نام inset-area در نسخه بعدی حذف خواهد شد.

پست وبلاگ | ورودی ChromeStatus.com | مشخصات

برای استفاده از Mirror edgeMode، فیلتر پس زمینه CSS را به روز کنید

ویژگی backdrop-filter CSS یک یا چند فیلتر را در پس زمینه یک عنصر اعمال می کند. پس زمینه محتوای نقاشی شده ای است که در پشت عنصر قرار دارد. یک فیلتر متداول یک تاری است که به طراحان اجازه می‌دهد کادرهای محاوره‌ای «شیشه مات»، پوشش‌های ویدیویی، هدرهای ناوبری شفاف و موارد دیگر را بسازند.

این در ابتدا به همان روش تاری معمولی اجرا می‌شد، اما نمونه‌برداری فراتر از لبه‌های عنصر به رنگ‌ها از لبه‌ها اجازه می‌داد تا وارد شوند. مشخصات به پیکسل‌های نمونه خارج از لبه‌های پس‌زمینه با کپی کردن پیکسل‌ها در لبه تغییر یافت. با این حال، این منجر به سوسو زدن شدید محتوا هنگام ورود به لبه پس زمینه می شود. آخرین تغییر مشخصات، پس‌زمینه را هنگام نمونه‌برداری فراتر از لبه منعکس می‌کند که اجازه می‌دهد به تدریج رنگ‌های جدید را در لبه‌ها بدون اضافه وزن روی خطوط تک رنگ وارد کنید.

نسخه ی نمایشی | باگ ردیابی #40040614 | ورودی ChromeStatus.com | مشخصات

رسانه ها

پشتیبانی Blob در کانال های داده WebRTC

RTCDataChannel.send(Blob) را پیاده‌سازی می‌کند و رویداد onMessage اکنون می‌تواند به صورت اختیاری داده‌هایی از نوع Blob را با استفاده از ویژگی binaryType دریافت کند.

علاوه بر پشتیبانی از ارسال رشته ها و ArrayBuffers، اکنون می توانید انتخاب کنید که Blob به جای آن ارسال شود تا زمانی که اندازه آن کمتر از maxMessageSize انتقال SCTP است که در مشخصات WebRTC نشان داده شده است.

با استفاده از ویژگی binaryType که روی blob تنظیم شده است، ویژگی داده رویداد onMessage به جای ArrayBuffer از نوع Blob خواهد بود.

باگ ردیابی #41370769 | ورودی ChromeStatus.com | مشخصات

API های وب

فرمت بین المللی

روشی برای قالب‌بندی مدت‌زمان ارائه می‌دهد، برای مثال «1 ساعت و 40 دقیقه و 30 ثانیه» که از چندین منطقه پشتیبانی می‌کند.

اسناد MDN | باگ ردیابی #42201655 | ورودی ChromeStatus.com | مشخصات

رویدادهای فوری

رویدادهای اسنپ به توسعه دهندگان این امکان را می دهد که به طور قابل اعتماد به زمانی که "هدف ضربه محکم و ناگهانی" یک اسکرول تغییر می کند گوش دهند و تنظیمات سبک را مطابق انتخاب انجام دهند.

اسکرول رویدادهای فوری | باگ ردیابی #40273052 | ورودی ChromeStatus.com | مشخصات

Private Aggregation API: ادغام مشارکت در سمت مشتری

API جمع‌آوری خصوصی را تغییر می‌دهد تا مشارکت‌های هیستوگرام را با همان سطل و شناسه فیلتر قبل از جاسازی در محموله رمزگذاری‌شده گزارش انباشته ادغام کند.

تجمیع خصوصی محدودیتی را بر تعداد مشارکت‌هایی که می‌توان در یک گزارش جمع‌آوری‌شده جاسازی کرد، با حذف هرگونه مشارکت اضافی اعمال می‌کند. با ادغام مشارکت‌ها در صورت امکان، می‌توانیم ابزار اضافی را از حد مجاز خارج کنیم. توجه داشته باشید که نادیده گرفتن کاهش مشارکت‌های اضافی، ادغام این نوع مشارکت‌ها نباید تأثیری بر خروجی‌های نهایی، برای مثال گزارش‌های خلاصه داشته باشد.

باگ ردیابی #349980058 | ورودی ChromeStatus.com | مشخصات

scheduler.yield()

روشی را برای تسلیم کنترل به مرورگر ارائه می دهد که می تواند برای شکستن کارهای طولانی استفاده شود. انتظار وعده ای که توسط scheduler.yield() برگردانده می شود، باعث می شود که وظیفه فعلی تسلیم شود و در یک کار مرورگر جدید ادامه یابد. این می تواند برای بهبود مشکلات پاسخگویی ناشی از کارهای طولانی استفاده شود. ادامه برای کاهش مشکلات عملکرد جایگزین های موجود اولویت بندی شده است.

اسناد | باگ ردیابی #40633887 | ورودی ChromeStatus.com | مشخصات

Web Authentication API: روش های سریال سازی JSON

متدهای WebAuthn PublicKeyCredential.toJSON() ، parseCreationOptionsFromJSON() ، و parseRequestOptionsFromJSON() به توسعه دهندگان این امکان را می دهند که یک پاسخ WebAuthn را در یک شی JSON سریالی کنند یا یک شی درخواست WebAuthn را از نمایش JSON آن غیر سریالی کنند.

باگ ردیابی #40250593 | ورودی ChromeStatus.com | مشخصات

رندر و گرافیک

پشتیبانی از محدوده گسترده (HDR) WebGPU

پارامترهای نگاشت تن را به پیکربندی بوم WebGPU اضافه می‌کند، و گزینه‌های standard (رفتار فعلی محدود کردن محتوا به محدوده SDR نمایشگر) را به عنوان پیش‌فرض، و extended (عدم اعمال این محدودیت) را به عنوان یک رفتار جدید اضافه می‌کند. این به محتوای WebGPU اجازه می دهد تا از طیف وسیعی از نمایشگر استفاده کند.

نسخه ی نمایشی | باگ ردیابی #333967627 | ورودی ChromeStatus.com | مشخصات

آزمایش های مبدا

رابط FileSystemObserver

رابط FileSystemObserver وب سایت ها را از تغییرات سیستم فایل مطلع می کند. سایت‌ها تغییرات فایل‌ها و دایرکتوری‌ها را در دستگاه محلی کاربر (همانطور که در WICG/file-system-access مشخص شده است) یا در سیستم فایل Bucket (همانطور که در whatwg/fs مشخص شده است) مشاهده می‌کنند، و از اطلاعات تغییرات اساسی، مانند تغییر نوع

اسناد | باگ ردیابی #40105284 | ورودی ChromeStatus.com | مشخصات

Mesh2D Canvas API

یک Canvas 2D Mesh Triangle Mesh API با کارایی بالا که می تواند برای رندر دسته ای تعداد زیادی مثلث بافت دار استفاده شود.

این نگاشت بافت پیشرفته و اثرات تغییر شکل هندسی را در یک زمینه دو بعدی فعال می کند.

نسخه ی نمایشی | باگ ردیابی #40282920 | ورودی ChromeStatus.com | مشخصات

محرومیت ها و حذف ها

0.0.0.0 را برای دسترسی به شبکه خصوصی منسوخ کنید

قبل از اینکه دسترسی به شبکه خصوصی (PNA) به طور کامل منتشر شود، Chrome دسترسی به آدرس IP 0.0.0.0 را مسدود خواهد کرد.

Chrome دسترسی مستقیم به نقاط پایانی شبکه خصوصی از وب‌سایت‌های عمومی را به عنوان بخشی از مشخصات PNA منسوخ می‌کند. خدمات گوش دادن در لوکال هاست ( 127.0.0.0/8 ) طبق مشخصات خصوصی در نظر گرفته می شوند. حفاظت PNA کروم را می توان با استفاده از آدرس IP 0.0.0.0 برای دسترسی به خدماتی که در لوکال هاست در macOS و Linux گوش می دهند، دور زد.

این همچنین می تواند در حملات DNS rebinding که یک برنامه وب را در حال گوش دادن به لوکال هاست هدف قرار می دهند مورد سوء استفاده قرار گیرد.

این نسخه از کروم سه ویژگی را حذف می کند.

ورودی ChromeStatus.com | مشخصات

آرگومان includeShadowRoots را در DOMParser حذف کنید

آرگومان includeShadowRoots یک آرگومان هرگز استاندارد نشده برای تابع DOMParser.parseFromString() بود که برای اجازه تجزیه ضروری محتوای HTML که حاوی DOM سایه اعلامی است وجود داشت. این در Chrome 90 به عنوان بخشی از محموله اولیه DOM سایه اظهاری ارسال شد.

اکنون که نسخه استاندارد شده این ویژگی با متدهای setHTMLUnsafe() و parseHTMLUnsafe() در دسترس است، آرگومان غیراستاندارد includeShadowRoots حذف خواهد شد. کد باید به صورت زیر به روز شود:

به جای:

((new DOMParser()).parseFromString(html,'text/html',{includeShadowRoots: true});

استفاده کنید:

Document.parseHTMLUnsafe(html);

باگ ردیابی #329330085 | ورودی ChromeStatus.com

سریال سازی سایه ای DOM غیر استاندارد را حذف کنید

اجرای نمونه اولیه Shadow DOM حاوی روشی به نام getInnerHTML() بود که برای سریال‌سازی درخت‌های DOM حاوی ریشه‌های سایه استفاده می‌شد. آن بخش از نمونه اولیه با بقیه shadow dom اعلامی استاندارد نشده بود، و در عوض یک جایگزین طراحی شد getHTML() .

بنابراین روش قدیمی getInnerHTML() اکنون از کروم حذف شده است، شما باید از getHTML() به عنوان جایگزین استفاده کنید که به زودی در بین مرورگرها قابل همکاری خواهد بود.

باگ ردیابی #41492947 | ورودی ChromeStatus.com

PointerEvent.getCoalescedEvents() را از زمینه های ناامن حذف کنید

گروه کاری Pointer Events بیش از چهار سال پیش PointerEvent.getCoalescedEvents() محدود به زمینه‌های امن کرد که API را از زمینه‌های ناامن حذف کرد. Chrome در ابتدا رفتار قدیمی را ارسال کرد و به دلیل نگرانی‌های مربوط به سازگاری، بلافاصله تغییرات مشخصات را دنبال نکرد.

اکنون در حال حذف آن از زمینه‌های ناامن هستیم زیرا استفاده از Chrome در زمینه‌های ناامن بسیار کم است.

باگ ردیابی #40928769 | ورودی ChromeStatus.com

در ادامه مطلب

به دنبال بیشتر هستید؟ این منابع اضافی را بررسی کنید.

گوگل کروم را دانلود کنید

Chrome را برای Android ، Desktop یا iOS دانلود کنید.