گوگل نسخه مرورگر وب Chrome 139 را منتشر کرد. همزمان، نسخه پایدار پروژه رایگان Chromium که اساس Chrome است، در دسترس است. مرورگر Chrome با Chromium در استفاده از لوگوهای گوگل، وجود سیستمی برای ارسال اعلانها در صورت خرابی، ماژولهایی برای پخش محتوای ویدیویی محافظتشده در برابر کپی (DRM)، سیستم نصب خودکار بهروزرسانی، گنجاندن مداوم جداسازی Sandbox، ارائه کلیدهای API گوگل و انتقال پارامترهای RLZ در حین جستجو متفاوت است. برای کسانی که به زمان بیشتری برای بهروزرسانی نیاز دارند، شاخه Extended Stable به طور جداگانه پشتیبانی میشود و به مدت ۸ هفته پشتیبانی میشود. نسخه بعدی Chrome 8 برای ۲ سپتامبر برنامهریزی شده است.
تغییرات کلیدی در کروم 139:
- قابلیت استفاده از مدل هوش مصنوعی برای تولید توصیههای جستجو در نوار آدرس و در صفحه باز شدن تب جدید اضافه شده است. برای نمایش چنین توصیههای هوش مصنوعی، دکمه "حالت هوش مصنوعی" به نوار آدرس اضافه شده است و خروجی هوش مصنوعی در بخش جداگانهای در فهرست توصیهها علامتگذاری یا هایلایت شده است. این ویژگی در حال حاضر به طور پیشفرض فقط برای برخی از کاربران فعال است.

- در سیستمهای مدیریتشدهی متمرکز، امکان ایجاد میانبرهای جستجوی سریع از طریق نوار آدرس گسترش یافته است (میتوانید یک میانبر "@name" برای جستجوی یک سایت خاص ایجاد کنید). نسخه جدید یک تنظیم اضافی اضافه میکند که به کاربر اجازه میدهد میانبرهای تعیینشده توسط مدیر را لغو، حذف یا غیرفعال کند.
- در نسخه اندروید، بررسیهای امنیتی بستههای APK دانلود شده در حالتهای محافظت استاندارد و پیشرفته مرور ایمن گوگل (Google Safe Browsing) پیادهسازی شدهاند. این بررسی با تماس با سرورهای گوگل انجام میشود. اگر فایلی خطرناک تشخیص داده شود، به کاربر هشدار مربوطه نشان داده میشود و دسترسی به فایل مسدود میشود (رابط کاربری گزینه جداگانهای برای دسترسی بدون عبور از مسدودسازی ارائه میدهد).

- تنظیم ExtensionManifestV2Availability که به ما امکان میداد پشتیبانی از نسخه ۲ مانیفست کروم را بازگردانیم، که قابلیتها و منابع موجود برای افزونههای نوشته شده با استفاده از API WebExtensions را تعریف میکند، حذف شده است. مرورگر اکنون فقط میتواند از افزونههای مبتنی بر نسخه ۳ مانیفست استفاده کند.
- در نسخههای پایدار رسمی کروم، پشتیبانی از گزینههای خط فرمان "--extensions-on-chrome-urls" و "--disable-extensions-except" متوقف شده است. این گزینهها امکان مسدود کردن نصب افزونههای پرخطر، مانند افزونههایی که بدون اجازه کاربر در مرورگر نصب میشوند، را فراهم میکردند. در کرومیوم و نسخههای آزمایشی کروم، پشتیبانی از این گزینهها حفظ شده است.
- صفحه برگه جدید اکنون شامل یک پنل پایینی است که اطلاعاتی در مورد افزونههایی که بر محتوای صفحه برگه جدید تأثیر میگذارند، و همچنین اطلاعاتی در مورد سیاستهای مدیریت متمرکز اعمال شده را نمایش میدهد.

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

- قابلیت بازگشت خودکار به SwiftShader، موتور رندر Vulkan API، برای WebGL غیرفعال شده است. بدون یک GPU backend مناسب، ایجاد یک زمینه WebGL اکنون به جای بازگشت به SwiftShader، خطا برمیگرداند. حذف SwiftShader با حذف اجرای کد تولید شده توسط JIT در فرآیندی که مسئول تعامل با GPU است، امنیت را بهبود میبخشد. در لینوکس و macOS، سیستمهای بدون GPU دیگر قادر به استفاده از WebGL نخواهند بود. در ویندوز، پشتیبانی SwiftShader فقط برای دستگاههایی که GPU ندارند یا GPUهای مشکلدار به لیست سیاه اضافه شدهاند، باقی میماند.
- فروشگاه ریشه کروم، به دلیل نقض الزامات گواهینامه، اعتبار گواهینامههای Chunghwa Telecom و Netlock را سلب کرده است. به دلیل عدم اقدام برای رفع نقصهای شناساییشده، گواهینامههای TLS صادر شده توسط Chunghwa Telecom و Netlock پس از ۳۱ ژوئیه ۲۰۲۵ اکنون در کروم به عنوان گواهینامههای غیرقابل اعتماد در نظر گرفته میشوند. گواهینامههای صادر شده قبل از ۳۱ ژوئیه همچنان به صورت عادی در نظر گرفته میشوند.
- API گفتار وب اکنون از تشخیص گفتار با استفاده از موتورهای موجود در دستگاه پشتیبانی میکند. یک سایت میتواند درخواست دسترسی به موتورهای تشخیص برای یک زبان خاص را بدهد، بین سرویسهای محلی و ابری یکی را انتخاب کند، درخواست نصب منابع لازم برای تشخیص محلی را بدهد و اطمینان حاصل کند که تشخیص در دستگاه کاربر بدون ارسال داده به سرویسهای خارجی انجام میشود.
- در CSS، علاوه بر تنظیم شعاع گرد کردن با استفاده از ویژگی border-radius، ویژگی "corner-shape" برای کنترل شکل و انحنای گوشههای عناصر مستطیلی پیادهسازی شده است. به عنوان مثال، با استفاده از "corner-shape" میتوانید انتقالهای نرمی از مربع به دایره (مهار) انجام دهید، گوشهها را مقعر کنید (scoop)، یک پخ (bevel) برش دهید و برشهایی (notch) ایجاد کنید، و همچنین تغییر شکل گوشهها را متحرک کنید.
- پشتیبانی از مشخصات توابع سفارشی اضافه شده است، که به شما امکان میدهد توابع CSS خود را ایجاد کنید که مشابه ویژگیهای CSS پارامتری شما کار میکنند. تفاوت این است که ویژگیهای CSS فقط میتوانند یک مقدار ثابت را برگردانند، در حالی که توابع CSS میتوانند مقادیری را بر اساس سایر ویژگیها، پارامترها و شرایط CSS برگردانند. قانون @function برای تعریف توابع CSS اضافه شده است. @function --negative(--value) { result: calc(-1 * var(--value)); } @function --shadow(--shadow-color : به ارث برده) { نتیجه: 2px 2px var(—سایه-رنگ، مشکی); }
- ویژگی CSS به نام "caret-animation" اضافه شد که به شما امکان میدهد انیمیشن تغییر مکاننما در فیلدهای ورودی را کنترل کنید (برای مثال، مکاننمای چشمکزن را میتوان با انیمیشن دلخواه خود جایگزین کرد).
- برای مطابقت با مشخصات و بهبود سازگاری با سایر مرورگرها، ویژگی CSS "font-width" اضافه شده است، مشابه ویژگی "font-stretch" که قبلاً در دسترس بود.
- وقتی یک Service Worker به دلیل فعال شدن یک قانون CSP (سیاست امنیت محتوا) مسدود میشود، به جای اینکه بلافاصله پس از فراخوانی سازندهی "new Worker(url)" یا "new SharedWorker(url)" یک خطای SecurityError ایجاد شود، اکنون یک رویداد "error" به صورت ناهمگام ارسال میشود.
- توانایی ایجاد یک برنامه وب واحد که با چندین برنامه کار میکند دامنههای سطح بالا یا زیردامنههای مختلف. فیلد "scope_extensions" در مانیفست برای پیکربندی اتصال دامنه ارائه شده است. { "name": "Example", "display": "standalone", "start_url": "/index.html", "scope_extensions": [ { "origin": "https://*.example.com" }, { "origin": "https://example.co.uk" }, { "origin": "https://*.example.co.uk" } ] }
- همانطور که در مشخصات WHATWG MIME Sniffing ذکر شده است، شناسایی تمام انواع MIME معتبر برای دادههای JSON پیادهسازی شده است. علاوه بر انواع MIME سنتی "application/json" و "text/json"، پشتیبانی از انواع MIME چندبخشی مانند "text/html+json" و "image/svg+json" نیز اضافه شده است.
- دستور "request-close" به API دستورات Invoker اضافه شد تا بر اساس عنصر HTML، کادر محاورهای را به اجبار ببندد. که عملکرد آن مشابه فراخوانی متد جاوا اسکریپت requestClose() است.
- WebGPU پشتیبانی از بافتهای سهبعدی فشردهشده با استفاده از فرمتهای BC و ASTC را اضافه میکند. یک حالت سازگاری آزمایشی (Origin Trial) نیز اضافه شده است که یک API WebGPU سادهشده مناسب برای کار با APIهای گرافیکی قدیمی مانند OpenGL و Direct3D3 را فراهم میکند.
- برای عناصر SVG (SVGScriptElement) добавлена поддержка атрибута «async» для выполнения скриптов в асинхронном режиме.
- برای دشوارتر کردن شناسایی غیرفعال یک نمونه مرورگر، هدر HTTP مربوط به Accept-Language اکنون فقط زبانهای با بالاترین اولویت را فهرست میکند، نه تمام زبانهای انتخاب شده توسط کاربر.
- API Prompt آزمایشی (Origin trials) اضافه شد که فراخوانیهایی برای تعامل با مدلهای زبانی بزرگ ارائه میدهد و امکان ورود متن، تصویر و صدا را در پرسوجوها فراهم میکند. نتیجه به شکلی ساختاریافته بازگردانده میشود که تجزیه آن آسان است. نمونههایی از موارد استفاده شامل تولید توضیحات تصویر، جستجوی بصری، رونویسی گفتار، طبقهبندی صدا، تولید متن بر اساس دستورالعملها و استخراج اطلاعات از متن است.
- در ابزارهای توسعهدهندگان وب، کارهایی برای رفع مشکلات عملکردی شناختهشده و نقصهای رابط کاربری انجام شده است. به لطف کارهای انجامشده، تعداد اعلانهای باز در مورد مشکلات ۲۷٪ کاهش یافته است. پشتیبانی از آپلود تصاویر دلخواه به دستیار هوش مصنوعی داخلی اضافه شده است. قابلیت اضافه کردن ستونها برای نمایش وضعیت هدرهای HTTP دلخواه در پنل بازرسی شبکه پیادهسازی شده است.

- پشتیبانی از macOS 11 متوقف شده است و برای اجرا حداقل به macOS 12 نیاز است.
- نسخه اندروید دیگر از پلتفرمهای اندروید ۸ (Oreo) و اندروید ۹ (Pie) پشتیبانی نمیکند.
علاوه بر نوآوریها و رفع اشکالات، نسخه جدید ۱۲ آسیبپذیری را حذف کرده است. بسیاری از این آسیبپذیریها در نتیجه آزمایش خودکار با ابزارهای AddressSanitizer، MemorySanitizer، Control Flow Integrity، LibFuzzer و AFL شناسایی شدهاند. هیچ مشکل بحرانی که امکان دور زدن تمام سطوح حفاظت مرورگر و اجرای کد در سیستم خارج از محیط sandbox را فراهم کند، شناسایی نشد. به عنوان بخشی از برنامه پرداخت پاداش نقدی برای تشخیص آسیبپذیریها برای نسخه فعلی، گوگل هشت پاداش به مبلغ ۱۸۵۰۰ دلار (یک پاداش ۱۰۰۰۰ دلاری، سه پاداش ۲۰۰۰ دلاری، دو پاداش ۱۰۰۰ دلاری و یک پاداش ۵۰۰ دلاری) پرداخت کرده است. مبلغ یک پاداش هنوز مشخص نشده است.
علاوه بر این، شایان ذکر است که در کد پایهای که نسخه ۱۴۰ کروم بر اساس آن ساخته شده است، حالت OverrideDefaultOzonePlatformHintToAuto گنجانده شده است که انتخاب خودکار backend را در لایه Ozone فعال میکند و تعامل با زیرسیستم گرافیکی را انتزاعی میکند. این تغییر امکان فعالسازی تطبیقی backend Wayland را در سیستمهایی که از Wayland پشتیبانی میکنند، بدون اتصال پیشفرض به backend X140، فراهم میکند. انتخاب خودکار backend همچنین میتواند به صورت دستی در نسخه ۱۳۹ کروم با استفاده از تنظیم "chrome://flags/#ozone-platform-hint" یا پرچم خط فرمان "—ozone-platform-hint=auto" فعال شود.
منبع: opennet.ru





