کروم ۱۵۱

تاریخ انتشار پایدار: ۲۸ ژوئیه ۲۰۲۶

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

سی‌اس‌اس و رابط کاربری

دسترسی به انیمیشن در رویدادهای انیمیشن و انتقال

یک ویژگی animation فقط خواندنی به رابط‌های AnimationEvent و TransitionEvent اضافه می‌کند. این ویژگی شیء Animation مرتبطی را که رویداد را فعال کرده است، برمی‌گرداند.

اشکال ردیابی شماره ۴۰۹۲۹۸۱۳ | ورودی ChromeStatus.com | مشخصات

ویژگی ruby-overhang در CSS

پشتیبانی از ویژگی CSS مربوط به ruby-overhang اضافه می‌کند. این ویژگی کلمات کلیدی auto ، spaces یا none را برای کنترل میزان بیرون‌زدگی متن حاشیه‌نویسی ruby ​​می‌پذیرد. طبق مشخصات گروه کاری CSS، none با spaces نام مستعار شده است که به متن اجازه می‌دهد فقط روی فضای خالی و علائم نگارشی CJK بیرون‌زدگی داشته باشد. این کار از ایجاد فاصله‌های غیرضروری در طرح‌بندی جلوگیری می‌کند و در عین حال خوانایی متن را حفظ می‌کند.

اشکال ردیابی شماره ۳۶۶۸۷۳۲۰۷ | ورودی ChromeStatus.com | مشخصات

مقدار اولیه position-anchor را به normal تغییر دهید.

مقدار اولیه ویژگی CSS position-anchor را از none به normal تغییر می‌دهد تا با مشخصات و سایر مرورگرها هماهنگ شود. اگر ویژگی CSS position-area برابر با none باشد، مقدار normal مانند none رفتار می‌کند و در غیر این صورت مانند auto رفتار می‌کند.

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

عدم امکان عقبگرد خودکار برای متدهای پخش AnimationTrigger

وقتی یک انیمیشن مرتبط با یک AnimationTrigger به طور کامل اجرا شده باشد، فراخوانی اکشن‌های play ، play-forwards یا play-backwards باعث شروع مجدد یا عقبگرد خودکار انیمیشن نمی‌شود.

اشکال ردیابی شماره 519573765 | ورودی ChromeStatus.com | مشخصات

DOM و HTML

DOM سایه اعلانی: ویژگی shadowrootslotassignment

ویژگی shadowrootslotassignment را به عنصر <template> اضافه می‌کند، که به ریشه‌های سایه اعلانی اجازه می‌دهد از تخصیص دستی اسلات استفاده کنند. پیش از این، این گزینه فقط با استفاده از attachShadow({slotAssignment: "manual"}) به صورت دستوری در دسترس بود. این ویژگی named (پیش‌فرض، با حفظ رفتار موجود) و manual را می‌پذیرد و توسط ویژگی shadowRootSlotAssignment در HTMLTemplateElement منعکس می‌شود.

اشکال ردیابی شماره ۴۹۳۳۱۵۷۴۷ | ورودی ChromeStatus.com | مشخصات

تجزیه XML در Rust برای سناریوهای غیر XSLT

برای بهبود امنیت مرورگر و محافظت در برابر آسیب‌پذیری‌های مربوط به حافظه، کروم موتور تجزیه XML خود را برای سناریوهای رایجی که در آن‌ها XSLT مورد نیاز نیست، به یک پیاده‌سازی Rust با قابلیت محافظت در برابر حافظه به‌روزرسانی می‌کند. این به‌روزرسانی، اشکالات احتمالی خرابی حافظه را از بین می‌برد و در عین حال سازگاری کامل با مشخصات وب را حفظ می‌کند. تجزیه‌کننده جدید، DOMParser ، XMLHttpRequest.responseXML ، اسناد تصویر SVG مستقل و منابع تصویر SVG خارجی را مدیریت می‌کند.

اشکال ردیابی شماره ۴۶۶۳۰۳۳۴۷ | ورودی ChromeStatus.com | مشخصات

عملکرد و شبکه

انتخاب زمان‌بندی ریدایرکت بین مبدائی

به سرورها این امکان را می‌دهد که ریدایرکت‌های بین مبدا خود را بر اساس مبدا مقصد یک ناوبری اندازه‌گیری کنند. این به توسعه‌دهندگان اجازه می‌دهد تا تأخیر ریدایرکت را برای ناوبری‌های تحت کنترل خود اندازه‌گیری و بهینه کنند.

اشکال ردیابی شماره 521861828 | ورودی ChromeStatus.com | مشخصات

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

اشکال ردیابی شماره ۳۶۶۰۶۰۳۵۱ | ورودی ChromeStatus.com | مشخصات

ورودی‌های عملکرد PerformanceSoftNavigation و InteractionContentfulPaint

انواع ورودی‌های soft-navigation و interaction-contentful-paint را به جدول زمانی عملکرد اضافه می‌کند تا عملکرد مبتنی بر تعامل را در برنامه‌های تک صفحه‌ای (SPA) ردیابی کند. ورودی interaction-contentful-paint ، رنگ‌آمیزی‌های محتوایی جدید را در بخش‌هایی از صفحه که توسط تعامل کاربر تغییر یافته‌اند، گزارش می‌دهد و به توسعه‌دهندگان کمک می‌کند تا تأخیر بارگذاری تعامل را حتی در درخواست‌های واکشی ناهمزمان درک کنند. ورودی soft-navigation ، تغییرات وضعیت تاریخچه سند مشابه را که توسط تعاملات آغاز شده‌اند، گزارش می‌دهد و یک مبدأ زمانی جدید برای نسبت دادن داده‌های عملکرد بعدی به مسیر فعال به جای URL سند اولیه ایجاد می‌کند.

اشکال ردیابی شماره ۱۳۳۸۳۹۰ | ورودی ChromeStatus.com | مشخصات

ادغام سیاست‌های مجوز: direct-sockets-private با local-network و loopback-network

سیاست مجوز direct-sockets-private موجود را با سیاست‌های مجوز local-network و loopback-network دقیق‌تر جایگزین می‌کند. مانیفست‌های برنامه‌های وب ایزوله اکنون برای فعال کردن اتصالات Direct Sockets به آدرس‌های شبکه محلی یا loopback به این سیاست‌های خاص نیاز دارند و به توسعه‌دهندگان کنترل دقیق‌تری بر دسترسی به شبکه ارائه می‌دهند و الزامات شبکه را در مانیفست شفاف می‌کنند.

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

قوانین حدس و گمان: فیلد form_submission

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

اشکال ردیابی شماره ۳۴۶۵۵۹۳۹ | ورودی ChromeStatus.com | مشخصات

textStream() برای ResponseRequest ) و Blob

یک متد textStream() به رابط‌هایی که یک جریان بایت ( Request ، Response و Blob ) را نشان می‌دهند، اضافه می‌کند. این یک معادل مختصرنویسی مناسب برای لوله‌کشی جریان بایت از طریق TextDecoderStream() فراهم می‌کند.

اشکال ردیابی شماره ۵۱۴۴۴۸۲۲۶ | ورودی ChromeStatus.com | مشخصات

رسانه‌ها، حسگرها و ورودی

عنصر قابلیت: <usermedia> MVP

عنصر قابلیت اعلانی <usermedia> را معرفی می‌کند، یک کنترل تحت کنترل مرورگر برای شروع و تعامل با جریان‌های رسانه‌ای. با جاسازی یک عنصر تحت کنترل مرورگر در صفحه، کلیک کاربر قبل از فعال شدن درخواست‌های مجوز، یک سیگنال واضح و عمدی ارائه می‌دهد. این امر تجربه کاربری سریع را بهبود می‌بخشد و یک مسیر بازیابی سرراست برای کاربرانی که قبلاً مجوز را رد کرده‌اند، فراهم می‌کند.

اشکال ردیابی شماره ۴۴۳۰۱۳۴۵۷ | ورودی ChromeStatus.com | مشخصات

API درخواست مجوز رویدادهای DeviceOrientation

به توسعه‌دهندگان وب اجازه می‌دهد تا با فراخوانی DeviceOrientationEvent.requestPermission() و DeviceMotionEvent.requestPermission() از عامل کاربر، جهت‌گیری دستگاه و داده‌های حرکتی که قرار است با صفحه به اشتراک گذاشته شوند را درخواست کنند. این متدهای استاتیک، یک promise را برمی‌گردانند که بر اساس اینکه آیا کاربر اجازه اشتراک‌گذاری داده‌های حسگر را داده است یا خیر، به granted یا denied تعیین می‌شود.

اشکال ردیابی شماره ۹۴۷۱۱۲ | ورودی ChromeStatus.com | مشخصات

تکانه رویداد چرخ

یک ویژگی بولی momentum را روی رویدادهای wheel نمایش می‌دهد تا رویدادهای ایجاد شده توسط اینرسی پیمایش پلتفرم بومی را شناسایی کند. پس از اینکه کاربر پس از یک تعامل fling، انگشت خود را از روی ترک‌پد برمی‌دارد، پلتفرم‌های بومی به ارسال رویدادهای wheel ادامه می‌دهند تا اینرسی را شبیه‌سازی کنند. ویژگی momentum این رویدادهای شبیه‌سازی شده را از تعاملات فیزیکی ترک‌پد متمایز می‌کند و به توسعه‌دهندگان اجازه می‌دهد رویدادهای fling را نادیده بگیرند یا جلوه‌های rich fling را سفارشی کنند.

اشکال ردیابی شماره ۴۰۷۰۴۹۵۲ | ورودی ChromeStatus.com | مشخصات

دسترسی‌پذیری و گفتار وب

ویژگی aria-actions

پشتیبانی از ویژگی aria-actions را اضافه می‌کند. برای الگوهای رابط کاربری که در آن‌ها اقدامات ثانویه در ویجت‌های تعاملی ترکیبی قرار می‌گیرند، ویژگی aria-actions به توسعه‌دهندگان اجازه می‌دهد تا این دکمه‌های اقدام ثانویه را مستقیماً در معرض فناوری‌های کمکی قرار دهند تا قابلیت کشف آن‌ها بهبود یابد.

اشکال ردیابی شماره ۵۱۴۷۵۱۹۴۶ | ورودی ChromeStatus.com | مشخصات

API گفتار وب: علائم نگارشی ناگفته

ویژگی بولی unspokenPunctuation را به رابط SpeechRecognition از Web Speech API اضافه می‌کند. وقتی این ویژگی فعال باشد ( true )، موتور تشخیص گفتار را هدایت می‌کند تا به طور خودکار علائم نگارشی (مانند نقطه، ویرگول و علامت سوال) را بر اساس مکث‌های طبیعی، ساختار دستوری و عروض، بدون نیاز به دستورات صریح نگارشی گفتاری، استنباط و درج کند.

اشکال ردیابی شماره ۵۱۴۷۶۴۷۰۲ | ورودی ChromeStatus.com | مشخصات

هوش مصنوعی

پشتیبانی LanguageDetector برای چینی سنتی در مقابل چینی ساده شده

دو کد زبان قابل تشخیص جدید، zh-Hant (چینی سنتی) و zh-Hans (چینی ساده‌شده)، را به API تشخیص زبان اضافه می‌کند. نتایج تشخیص که قبلاً zh را برمی‌گرداندند، اکنون یکی از این مقادیر خاص‌تر را برمی‌گردانند.

اشکال ردیابی شماره 519251262 | ورودی ChromeStatus.com | مشخصات

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

به‌روزرسانی‌های الگوریتم در وب کریپتو

الگوریتم‌های رمزنگاری پساکوانتومی و یک الگوریتم AEAD متقارن رایج را به API رمزنگاری وب اضافه می‌کند و به توسعه‌دهندگان امکان می‌دهد تا به پیاده‌سازی‌های ارائه شده توسط مرورگر از الگوریتم‌های مقاوم در برابر کوانتومی استاندارد شده توسط NIST دسترسی داشته باشند: ML-KEM (768، 1024)، ML-DSA (44، 65، 87)، ChaCha20-Poly1305 و X-Wing.

نسخه آزمایشی Origin | باگ ردیابی شماره ۴۵۰۶۲۷۰۱۷ | ورودی ChromeStatus.com | مشخصات

ناظر عملکرد اعلانی

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

اشکال ردیابی شماره ۵۰۵۲۰۸۷۸۱ | ورودی ChromeStatus.com

چراغ فعال‌سازی پیش‌واکشی

هدر پاسخ HTTP فعال‌سازی پیش از واکشی ( on-prefetch-activation response header) را معرفی می‌کند که به سرورها این امکان را می‌دهد تا یک نقطه پایانی تله‌متری (telemetry endpoint) را مشخص کنند که مرورگر هر زمان که از یک منبع پیش از واکشی برای پیمایش استفاده می‌شود، آن را اطلاع دهد. این به توسعه‌دهندگان یک سیگنال قابل اعتماد برای اندازه‌گیری دقت و تأثیر عملکرد استراتژی‌های پیش از واکشی خود می‌دهد.

نسخه آزمایشی Origin | باگ ردیابی شماره ۴۹۹۸۱۴۳۸۲ | ورودی ChromeStatus.com | مشخصات

کانال داده WebRTC: پروتکل شتاب‌دهی مذاکره SCTP

با تعبیه پارامترهای اولیه‌سازی پروتکل انتقال کنترل جریان (SCTP) مستقیماً در تبادل پیشنهاد/پاسخ پروتکل توصیف جلسه (SDP)، ایجاد کانال داده WebRTC را تسریع می‌کند. این امر زمان راه‌اندازی کانال داده را تا دو برابر زمان رفت و برگشت شبکه کاهش می‌دهد.

نسخه آزمایشی Origin | باگ ردیابی شماره ۴۲۶۴۸۰۶۰۱ | ورودی ChromeStatus.com | مشخصات

منسوخ‌ها و حذف‌ها

کروم ۱۵۱ پشتیبانی از macOS 12 را متوقف کرد

کروم ۱۵۰ آخرین نسخه‌ای است که از macOS 12 پشتیبانی می‌کند. با شروع از کروم ۱۵۱، macOS 13 یا بالاتر مورد نیاز است. در مک‌هایی که macOS 12 را اجرا می‌کنند، کروم به کار خود ادامه می‌دهد و یک هشدار نوار اطلاعات نمایش می‌دهد، اما دیگر به‌روزرسانی‌های امنیتی یا ویژگی‌ها را دریافت نخواهد کرد.

ورودی ChromeStatus.com

حذف [LegacyNoInterfaceObject] از FontFaceSet IDL

[LegacyNoInterfaceObject] را از FontFaceSet IDL حذف می‌کند تا FontFaceSet به درستی به عنوان یک ویژگی سراسری در شیء window نمایش داده شود. از آنجا که هیچ سازنده‌ای در IDL تعریف نشده است، فراخوانی new FontFaceSet() از جاوا اسکریپت اکنون یک TypeError: Illegal constructor می‌کند که با مشخصات مطابقت دارد و با فایرفاکس و سافاری هم‌تراز می‌شود.

اشکال ردیابی شماره ۴۷۷۵۶۸۲۶۳ | ورودی ChromeStatus.com | مشخصات