مرورگر وب فایرفاکس 108 منتشر شده است.علاوه بر این، یک به روز رسانی شاخه پشتیبانی طولانی مدت ایجاد شده است - 102.6.0. شعبه فایرفاکس 109 به زودی به مرحله آزمایش بتا منتقل می شود که انتشار آن برای 17 ژانویه برنامه ریزی شده است.
ویژگی های جدید فایرفاکس 108:
- میانبر صفحه کلید Shift+ESC را برای باز کردن سریع صفحه مدیر فرآیند (درباره: فرآیندها) اضافه کرده است و به شما امکان می دهد ارزیابی کنید که کدام فرآیندها و رشته های داخلی بیش از حد حافظه و منابع CPU را مصرف می کنند.
- زمانبندی بهینهشده خروجی فریم انیمیشن در شرایط بار بالا، که نتایج تست MotionMark را بهبود بخشید.
- هنگام چاپ و ذخیره فرم های PDF، می توان از کاراکترها به زبان هایی غیر از انگلیسی استفاده کرد.
- پشتیبانی از تصحیح رنگ صحیح تصاویر مطابق با پروفایل های رنگی ICCv4 اجرا شده است.
- حالت نمایش نوار نشانکها «فقط در برگههای جدید» (تنظیم «فقط نمایش در برگه جدید») برای برگههای خالی جدید به درستی کار میکند.
- تنظیمات cookiebanners.bannerClicking.enabled و cookiebanners.service.mode را به about:config برای کلیک خودکار روی بنرهایی که درخواست مجوز برای استفاده از کوکی ها در سایت ها می کنند اضافه شد. در رابط ساخت های شبانه، سوئیچ هایی برای کنترل کلیک خودکار روی بنرهای کوکی در رابطه با دامنه های خاص پیاده سازی شده است.
- Web MIDI API اضافه شده است که به شما امکان می دهد از یک برنامه وب با دستگاه های موسیقی با رابط MIDI متصل به رایانه کاربر تعامل داشته باشید. API فقط برای صفحات بارگیری شده از طریق HTTPS در دسترس است. هنگام فراخوانی متد navigator.requestMIDIAccess() هنگامی که دستگاههای MIDI متصل به رایانه وجود دارد، یک گفتگوی کاربر نمایش داده میشود که از او میخواهد «افزونه مجوز سایت» را که برای فعال کردن دسترسی لازم است نصب کند (توضیحات زیر را ببینید).
- یک مکانیسم آزمایشی، Site Permission Add-on، برای کنترل دسترسی سایتها به APIهای بالقوه خطرناک و ویژگیهایی که به امتیازات گسترده نیاز دارند، پیشنهاد شده است. منظور از خطرناک، قابلیت هایی است که می تواند به تجهیزات آسیب فیزیکی وارد کند، تغییرات غیرقابل برگشتی ایجاد کند، برای نصب کدهای مخرب روی دستگاه ها استفاده شود یا منجر به نشت اطلاعات کاربر شود. به عنوان مثال، در زمینه Web MIDI API، افزونه مجوز برای دسترسی به یک دستگاه سنتز صوتی متصل به رایانه استفاده می شود.
- پشتیبانی از import maps به طور پیشفرض فعال است و به شما امکان میدهد هنگام وارد کردن فایلهای جاوا اسکریپت از طریق دستورات import و import() کنترل کنید کدام URL بارگذاری میشود. نقشه واردات با فرمت JSON در عنصر مشخص شده است с новым атрибутом «importmap». Например: { «imports»: { «moment»: «/node_modules/moment/src/moment.js», «lodash»: «/node_modules/lodash-es/lodash.js» } }
پس از اعلام این نقشه واردات در کد جاوا اسکریپت، می توانید از عبارت "import moment from "moment"; برای بارگیری و اجرای ماژول جاوا اسکریپت "/node_modules/moment/src/moment.js" استفاده کنید. بدون جزئیات مسیر (معادل 'import moment from "/node_modules/moment/src/moment.js";').
- در عنصر " "پشتیبانی از ویژگیهای "height" و "width" که ارتفاع و عرض تصویر را بر حسب پیکسل تعیین میکنند، اجرا میشود. ویژگی های مشخص شده تنها زمانی موثر هستند که عنصر " "در عنصر تودرتو است" "و زمانی که درون عناصر تودرتو هستند نادیده گرفته می شوند و . برای غیرفعال کردن پردازش "ارتفاع" و "عرض" در تنظیم "dom.picture_source_dimension_attributes.enabled" به about:config اضافه شد.
- CSS مجموعه ای از توابع مثلثاتی sin()، cos()، tan()، asin()، acos()، atan() و atan2() را ارائه می دهد.
- CSS تابع round() را برای انتخاب استراتژی گرد کردن پیاده سازی می کند.
- CSS نوع را پیاده سازی می کند ، که به شما امکان می دهد از ثابت های ریاضی شناخته شده مانند Pi و E و همچنین بی نهایت و NaN در توابع ریاضی استفاده کنید. به عنوان مثال، "rotate(calc(1rad * pi))".
- درخواست CSS "@container"، که به شما امکان می دهد عناصر را بسته به اندازه عنصر والد استایل دهید (یک آنالوگ از درخواست "@media" که نه به اندازه کل ناحیه قابل مشاهده، بلکه به اندازه آن اعمال می شود. بلوک (کانتینری) که عنصر در آن قرار گرفته است، پشتیبانی آزمایشی برای cqw (1٪ عرض)، cqh (1٪ از ارتفاع)، cqi (1٪ از اندازه درون خطی)، cqb (1٪ از اندازه بلوک) اضافه شده است. cqmin (کوچکترین مقدار cqi یا cqb) و cqmax (بالاترین مقدار cqi یا cqb). این ویژگی به طور پیش فرض غیرفعال است و از طریق تنظیم layout.css.container-queries.enabled در about:config فعال می شود.
- جاوا اسکریپت متد Array.fromAsync را برای ایجاد یک آرایه از داده های دریافتی ناهمزمان اضافه کرده است.
- پشتیبانی از دستورالعملهای "style-src-attr"، "style-src-elem"، "script-src-attr" و "script-src-elem" به هدر CSP (خطمشی امنیت محتوا) HTTP، ارائه عملکرد سبک و اسکریپت، اما با قابلیت اعمال آنها به عناصر جداگانه و کنترل کننده رویداد مانند onclick.
- یک رویداد جدید به نام domContentLoaded اضافه شد که پس از اتمام بارگیری محتوا فعال می شود.
- یک گزینه forceSync به متد .get() اضافه کرد تا همگام سازی را اجباری کند.
- یک منطقه پانل جداگانه برای قرار دادن ویجت های افزودنی WebExtension پیاده سازی شده است.
- منطق پشت لیست سیاه درایورهای لینوکس که با WebRender ناسازگار هستند تغییر کرده است. به جای حفظ یک لیست سفید از رانندگان فعال، انتقال به حفظ لیست سیاه از رانندگان مشکل ساز انجام شده است.
- پشتیبانی بهبود یافته از پروتکل Wayland. مدیریت متغیر محیطی XDG_ACTIVATION_TOKEN با کد فعال سازی برای پروتکل xdg-activation-v1 اضافه شده است، که با آن یک برنامه می تواند فوکوس را به دیگری تغییر دهد. مشکلاتی که هنگام جابجایی نشانکها با ماوس ایجاد میشد حل شده است.
- اکثر سیستم های لینوکس دارای انیمیشن پانل فعال هستند.
- About:config یک تنظیم gfx.display.max-frame-rate را برای محدود کردن حداکثر نرخ فریم ارائه میکند.
- پشتیبانی از مشخصات کاراکتر Emoji 14 اضافه شده است.
- به طور پیش فرض، برنامه افزودنی WebGL OES_draw_buffers_indexed فعال است.
- قابلیت استفاده از GPU برای تسریع شطرنجی Canvas2D پیاده سازی شده است.
- در پلتفرم ویندوز، sandboxing فرآیندهای در تعامل با GPU فعال است.
- پشتیبانی از دستورالعملهای FMA3 SIMD (ضدافزودن با یک گرد کردن) اضافه شد.
- فرآیندهایی که برای مدیریت برگههای پسزمینه در پلتفرم ویندوز 11 استفاده میشوند، اکنون در حالت «کارایی» اجرا میشوند، که در آن زمانبندی کار اولویت اجرا را کاهش میدهد تا مصرف CPU را کاهش دهد.
- بهبود در نسخه اندروید:
- قابلیت ذخیره یک صفحه وب به عنوان سند PDF اضافه شده است.
- پشتیبانی پیادهسازی شده برای گروهبندی برگهها در پانلها (زبانهها را میتوان پس از پایین نگه داشتن ضربه روی یک برگه تعویض کرد).
- دکمه ای برای باز کردن همه نشانک ها از یک بخش مشخص در برگه های جدید در یک پنجره جدید یا در حالت ناشناس ارائه شده است.
فایرفاکس 108 علاوه بر نوآوری ها و رفع اشکال، 20 آسیب پذیری را نیز برطرف کرده است. ۱۶ آسیبپذیری بهعنوان خطرناک علامتگذاری شدهاند، که ۱۴ آسیبپذیری (جمعآوریشده تحت CVE-16-14 و CVE-2022-46879) ناشی از مشکلات حافظه، مانند سرریز بافر و دسترسی به مناطق حافظه آزاد شده است. به طور بالقوه، این مشکلات می تواند منجر به اجرای کد مهاجم در هنگام باز کردن صفحات طراحی شده خاص شود. آسیبپذیری CVE-2022-46878 به دلیل استفاده از کد نسخه قدیمی کتابخانه libusrsctp است که حاوی آسیبپذیریهای اصلاح نشده است. آسیبپذیری CVE-2022-46871 به مهاجمی که به فرآیند پردازش صفحه دسترسی دارد، اجازه میدهد تا از جداسازی sandbox در لینوکس عبور کند و محتویات فایلهای دلخواه را از طریق دستکاری پیامهای IPC مرتبط با کلیپبورد بخواند.
منبع: opennet.ru