گوگل از نسخه مرورگر وب کروم 106 رونمایی کرد. همزمان، نسخه پایدار پروژه رایگان کرومیوم که اساس کروم است در دسترس است. تفاوت مرورگر کروم با کرومیوم در استفاده از لوگوهای گوگل، وجود سیستمی برای ارسال اعلان ها در صورت خرابی، ماژول هایی برای پخش محتوای ویدئویی محافظت شده از کپی (DRM)، سیستمی برای نصب خودکار به روز رسانی ها، فعال کردن دائمی ایزوله Sandbox. ، کلیدهایی را برای Google API ارائه می دهد و پارامترهای RLZ- را هنگام جستجو ارسال می کند. برای کسانی که به زمان بیشتری برای به روز رسانی نیاز دارند، شاخه Extended Stable به طور جداگانه پشتیبانی می شود و پس از آن 8 هفته. انتشار بعدی کروم 107 برای 25 اکتبر برنامه ریزی شده است.
تغییرات کلیدی در کروم 106:
- برای کاربران ساخت دسکتاپ، Prerender2 بهطور پیشفرض فعال است تا محتوای پیشنهادی را در نوار آدرس Omnibox بهصورت فعال ارائه کند. رندر فعال مکمل توانایی موجود قبلی برای بارگیری توصیه هایی است که به احتمال زیاد بدون انتظار کلیک کاربر پیمایش می شوند. علاوه بر بارگیری، محتوای صفحات مرتبط با توصیه ها اکنون می تواند در یک بافر (از جمله اجرای اسکریپت و درخت DOM) ارائه شود. شکلگیری)، که امکان نمایش فوری توصیهها را پس از یک کلیک فراهم میکند.
- امکان جستجوی تاریخچه، نشانکها و برگهها را مستقیماً از نوار آدرس Omnibox فراهم میکند. برای بومی سازی جستجو، تگ های کنترل @history، @bookmarks و @tabs پیشنهاد شده است. برای مثال، برای جستجو در نشانکها باید «عبارت جستجوی @bookmarks» را وارد کنید. برای غیرفعال کردن جستجو از نوار آدرس، گزینه خاصی در تنظیمات جستجو وجود دارد.
- پشتیبانی از فناوری Server Push که در استانداردهای HTTP/2 و HTTP/3 تعریف شده است، به طور پیشفرض غیرفعال است و به سرور اجازه میدهد بدون انتظار درخواست صریح مشتری، منابع را برای مشتری ارسال کند. دلیل ذکر شده برای قطع پشتیبانی، پیچیدگی غیرضروری اجرای فناوری در زمانی است که جایگزینهای سادهتر و به همان اندازه مؤثر، مانند برچسب در دسترس هستند. ، پاسخ HTTP 103 و پروتکل WebTransport. طبق آمار گوگل، در سال 2021، حدود 1.25 درصد از سایت های دارای HTTP/2 از Server Push استفاده می کردند و در سال 2022 این رقم به 0.7 درصد کاهش یافت. فناوری Server Push در مشخصات HTTP/3 نیز وجود دارد، اما در عمل بسیاری از محصولات نرم افزاری سرور و مشتری، از جمله مرورگر کروم، در ابتدا آن را پیاده سازی نکردند.
- امکان استفاده از نویسههای غیر ASCII در دامنههای مشخصشده در هدر کوکی غیرفعال است (برای دامنههای IDN، دامنهها باید در قالب punycode مشخص شوند). این تغییر مرورگر را با RFC 6265bis و رفتار پیادهسازی شده در فایرفاکس مطابقت میدهد.
- برچسبهای واضحتری برای شناسایی صفحههای نمایش در تنظیمات چند مانیتور پیشنهاد شده است. برچسبهای مشابهی را میتوان در گفتگوها برای اعطای مجوز برای باز کردن پنجره در یک صفحه خارجی نمایش داد. به عنوان مثال، به جای شماره صفحه نمایش خارجی ('External Display 1')، نام مدل مانیتور ('HP Z27n') اکنون نشان داده می شود.
- بهبود در نسخه اندروید:
- صفحه تاریخچه مرور از مکانیزم «سفر» پشتیبانی میکند، که فعالیتهای گذشته را با گروهبندی اطلاعات مربوط به عبارتهای جستجوی قبلی اجرا شده و صفحات مشاهده شده خلاصه میکند. وقتی کلمات کلیدی را در نوار آدرس وارد می کنید، اگر قبلاً در پرس و جوها استفاده شده باشند، از شما خواسته می شود که جستجو را از موقعیت قطع شده ادامه دهید.
- در دستگاههای دارای پلتفرم اندروید 11، میتوان صفحهای را که در حالت ناشناس باز میشود، پس از جابهجایی به برنامه دیگری مسدود کرد. برای ادامه مرور پس از مسدود کردن، احراز هویت لازم است. به طور پیش فرض، مسدود کردن غیرفعال است و نیاز به فعال سازی در تنظیمات حریم خصوصی دارد.
- هنگامی که سعی میکنید فایلها را از حالت ناشناس دانلود کنید، یک درخواست تأیید اضافی برای ذخیره فایل دریافت میکنید و هشداری مبنی بر اینکه فایل دانلود شده برای سایر کاربران دستگاه قابل مشاهده خواهد بود، زیرا در قسمت مدیریت دانلود ذخیره میشود.
- API chrome.runtime برای همه سایتها متوقف شده است. این API اکنون تنها در صورتی ارائه می شود که افزونه های مرورگر به آن متصل باشند. قبلاً، chrome.runtime برای همه سایتها در دسترس بود، زیرا توسط افزونه CryptoToken داخلی با پیادهسازی U2F API استفاده میشد که دیگر پشتیبانی نمیشود.
- چندین API جدید به حالت Origin Trials (ویژگی های آزمایشی که نیاز به فعال سازی جداگانه دارند) اضافه شده است. Origin Trial به معنای توانایی کار با API مشخص شده از برنامه های دانلود شده از localhost یا 127.0.0.1 یا پس از ثبت نام و دریافت یک توکن خاص است که برای مدت محدودی برای یک سایت خاص معتبر است.
- مفهوم iframe های ناشناس، به یک سند اجازه می دهد تا در یک زمینه جداگانه بارگذاری شود، بدون ارتباط با سایر فریم ها و سند اصلی.
- پاپ آپ API برای نمایش عناصر رابط در بالای عناصر دیگر، به عنوان مثال، برای سازماندهی کار منوهای تعاملی، نکات ابزار، ابزارهای انتخاب محتوا و سیستم های آموزشی. ویژگی جدید "popup" برای نشان دادن عنصر در بالاترین لایه استفاده می شود. برخلاف دیالوگ های ایجاد شده با استفاده از عنصر API جدید به شما امکان میدهد دیالوگهای بدون حالت ایجاد کنید، رویدادها را مدیریت کنید، از انیمیشنها استفاده کنید و کنترلهای ناحیه بازشو انعطافپذیر ایجاد کنید.
- ویژگیهای «grid-template-columns» و «grid-template-rows» که در CSS Grid استفاده میشوند، اکنون از درون یابی برای ارائه یک انتقال صاف بین حالتهای شبکه مختلف پشتیبانی میکنند.
- ویژگی CSS 'forced-color-adjust' اکنون از مقدار 'preserve-parent-color' پشتیبانی می کند، که وقتی تنظیم شود، باعث می شود ویژگی 'color' مقدار خود را از عنصر والد قرض بگیرد.
- ویژگی "-webkit-hyphenate-character" از پیشوند "-webkit-" حذف شده است و اکنون با نام "hyphenate-character" در دسترس است. از این ویژگی می توان برای تنظیم رشته به جای کاراکتر شکست خط ("-") استفاده کرد.
- نسخه سوم Intl.NumberFormat API پیاده سازی شده است که شامل توابع جدید formatRange()، formatRangeToParts() و selectRange()، گروه بندی مجموعه ها، گزینه های جدید برای گرد کردن و تنظیم دقت، و توانایی تفسیر رشته ها به عنوان اعداد اعشاری است. .
- ReadableStream API پشتیبانی برای انتقال مستقیم کارآمد داده های باینری از پورت سریال، دور زدن صف های داخلی و بافرها را اضافه کرده است. خواندن مستقیم با تنظیم حالت BYOB - "port.readable.getReader({ mode: 'byob' })" فعال می شود.
- رابطهای نرمافزاری برای کار با صدا و تصویر (AudioDecoder، AudioEncoder، VideoDecoder و VideoEncoder) پشتیبانی از رویداد "dequeue" و تماسهای برگشتی مرتبط را اضافه کردهاند، که زمانی فعال میشوند که کدک شروع به اجرای وظایف کدگذاری یا رمزگشایی محتوای در صف میکند.
- WebXR Device API توانایی دسترسی خام به بافت های تصاویر از دوربین را که با موقعیت فعلی در محیط مجازی همگام شده است، پیاده سازی می کند.
- بهبودهایی در ابزارهای توسعه دهندگان وب ایجاد شده است. اکنون پنل Sources قابلیت گروه بندی فایل ها بر اساس منبع را دارد. ردیابی پشته بهبود یافته برای عملیات ناهمزمان. اکنون امکان نادیده گرفتن خودکار اسکریپت های شخص ثالث در هنگام اشکال زدایی وجود دارد. قابلیت مخفی کردن فایل های نادیده گرفته شده در منوها و پنل ها اضافه شده است. مدیریت بهتر پشته تماس در دیباگر.
یک مسیر تعاملات جدید به پنل عملکرد اضافه شده است تا تعامل صفحه را تجسم کند و مشکلات احتمالی پاسخگویی رابط را شناسایی کند.
علاوه بر نوآوری ها و رفع اشکال، نسخه جدید 20 آسیب پذیری را از بین می برد. بسیاری از آسیبپذیریها در نتیجه آزمایش خودکار با استفاده از ابزارهای AddressSanitizer، MemorySanitizer، Control Flow Integrity، LibFuzzer و AFL شناسایی شدند. هیچ مشکل مهمی شناسایی نشده است که به شخص اجازه می دهد تمام سطوح حفاظت مرورگر را دور بزند و کد را در سیستم خارج از محیط سندباکس اجرا کند. به عنوان بخشی از برنامه پرداخت جوایز نقدی برای کشف آسیبپذیریها برای نسخه فعلی، گوگل 16 جایزه به ارزش 38500 دلار (هر جایزه 9000 دلار، 7500 دلار، 7000 دلار، 5000 دلار، 4000 دلار، 3000 دلار، 2000 دلار و 1000 دلار) پرداخت کرد. اندازه هشت جایزه هنوز مشخص نشده است.
منبع: opennet.ru