fbpx
-5.9 C
София

Излезе Chrome 95: нововъведения и промени

Най-четени

Даниел Десподовhttps://www.kaldata.com/
Ежедневен автор на новини. Увличам се от съвременни технологии, оръжие, информационна безопасност, спорт, наука и концепцията Internet of Things.

Миналата седмица Google представи поредната версия на своя уеб браузър – Chrome 95. Едновременно с това излезе и стабилната версия на свободния проект Chromium, на които се базира Chrome. Браузърът Chrome се различава от Chromium по използването логотипите на Google, интегрираната система за изпращане на уведомления при крашване на браузъра, вградените модули за възпроизвеждане на защитено видео съдържание (DRM), системата за автоматично изтегляне и инсталиране на обновяване и други В съответствие с новия 4-седмичен цикъл на разработване следващата версия Chrome 96 е обявена да излезе на 16 ноември тази година. За потребителите, които предпочитат по-дълго време за обновяване, отделно се поддържа варианта Extended Stable, при който обновяването става на всеки осем седмици.

Основни нововъведения и промени в Chrome 95

  • За потребителите на операционните системи Windows, различните Linux дистрибуции, macOS и ChromeOS се предлага нов страничен панел, който се показва в дясната страна на браузъра след кликването върху специалната иконка, появила се вдясно на адресния ред. В този нов панел се извеждат списъка с материалите за четене и отметките. Този промяна засега не е включена за всички потребители и за нейното активиране е необходимо да бъде променен следния флаг:
chrome://flags/#side-panel

 
  • Реализирано е явно запитване относно правата за съхранение на адресите, въведени в уеб формите, които ще бъдат използвани по-късно от системата за автоматично запълване на различните полета. При откриване на уеб адреси във формите, сега на потребителя се показва диалогов прозорец, който дава възможност за избор дали уеб адресът да бъде съхранен, редактиран, дали да бъде променен предишния записан уеб-адрес или отказ от записването на каквото и да било
  • Изцяло е премахнат кода за поддръжката на ftp протокола. В Chrome 88 поддръжката на ftp протокола по подразбиране бе изключена, но бе оставен флаг за нейното включване.
  • Прекратена е поддръжката на URL с домейни, имената на които приключват с хостове съставени от цифри, които не съответстват на IPv4 адресите. Такива са например URL „http://127.1/“, „http://foo.127.1/“ и „http://127.0.0.0.1“, които сега се считат за некоректни
  • За WebAssembly е реализирана възможност за създаване на манипулатори за изключения, които могат да прихванат изпълнението в случай на възникване на някоя от тези изключения при изпълнението на определен код. Поддържа се както прихващането на всички налични в модула WebAssembly изключения, така и изключенията в процесите за извикване на импортирани функции. За прихващането на изключенията трябва да се използва WebAssembly модула, който е компилиран с компилатор, който поддържа изключенията. Такъв е например компилаторът Emscripten.

 

Google отбелязва, че обработването на изключенията на ниво WebAssembly дава възможност за съществено съкращаване размера на генерирания код в сравнение с обработката на изключения с помощта на JavaScript. Така например, създаването на оптимизатора Binaryen с обработка на изключенията с помощта на JavaScript води до увеличение на кода с 43%. Ако това стане чрез WebAssembly, увеличението на кода е едва 9%. Освен това, при използване режима на оптимизация  „-O3“, кодът за обработка на изключенията с помощта на WebAssembly на практика не се различава по производителност от кода без обработката на изключения, докато в същото време обработването на изключенията с помощта на JavaScript води до забавяне изпълнението на кода с цели 30%.

  • В новата версия на Chrome е забранено съвместното използване на WebAssembly модулите между различните домейни (cross-origin) при обработването на един и същ уеб сайт
 
  • В режим Origin Trials (това са експериментални възможности, които изискват отделна активация) са добавени няколко нови API. Origin Trials дава възможност за работа с указаните API от приложенията, заредени от localhost или 127.0.0.1, или след преминаване на регистрация и получаване на специален токен, който действа ограничено време за конкретния сайт
    • Включено е орязването на информацията в HTTP заглавието User-Agent, както и JavaScript параметрите navigator.userAgent, navigator.appVersion и navigator.platform. В заглавието е оставена единствено информацията за името на браузъра, мажорната версия на браузъра, за операционната система и типа на устройството – мобилен телефон, персонален компютър, лаптоп или таблет. За получаването на допълнителни данни, като например точната версия на браузъра и разширените данни за използваната операционна система е необходимо да се използва API User Agent Client Hints. Изрязването на User-Agent за всички потребители бе обявено, че ще стане при версия Chrome 102, която трябва да излезе след половин година
    • Предложена е възможност за създаване на дескриптор за достъпа (Access Handles) за API File System Access, който дава възможност на уеб-приложенията да четат и записват данни директно във файловете и папките на локалното устройство на потребителя. За намаляване на начините за достъп на уеб приложенията към файловата система, Google възнамерява да обедини API File System Access и Storage Foundation. Като подготвителен етап за подобно обединение е предложена поддръжка на дескриптори за достъп, допълващи методите за работа на базата на файлови дескриптори с разширени възможности, като например блокиране възможността за запис на информация от други процеси и създаване на отделни потоци за запис и четене

 
  • Стабилизиран е и е предложен по подразбиране API Secure Payment Confirmation с реализация на новото разширение ‘payment’, осигуряващо допълнително потвърждение на извършваната платежна операция. Проверяващата страна, каквато може да бъде например банката, има възможност да генерира публичен ключ тип PublicKeyCredential, който може да бъде поискан от продавача за допълнително безопасно потвърждение на разплащането чрез API Payment Request, използвайки метода за разплащане ‘secure-payment-confirmation’
  • В callback извикванията, зададени чрез конструктора PerformanceObserver, е реализирано прехвърлянето на свойството droppedEntriesCount, което дава възможност да се разбере колко от показателите за ефективността на уеб сайта са били отхвърлени, понеже не се вписват в предоставения буфер
  • Добавен е API EyeDropper, даваш възможност за извикване на предоставения от браузъра интерфейс за определяне цвета на произволни пиксели на екрана, което е удобно за използване например, в графичните редактори, реализирани във вид на уеб приложения
const eyeDropper = new EyeDropper();
const result = await eyeDropper.open(); // result = {sRGBHex: '#160731'}
  • Добавена е функцията self.reportError(), позволяваща на скриптовете да извеждат грешките в конзолата, емулирайки възникването на изключение, което не може да бъде прихванато
  • Добавен е API URLPattern за проверка съответствието на URL на определен шаблон, което може да се използва за анализ на линковете и други подобни
const p = new URLPattern({
protocol: 'https',
hostname: 'example.com',
pathname: '/:folder/*/:fileName.jpg',
});
  • Направени са подобрения в инструментариума за уеб-разработчици. В панела Styles е опростено коригирането на CSS свойствата, свързани с размерите  (height, padding и т.н.). В таба Styles е предоставена възможност за скриване на отделните проблеми. В уеб конзолата и в панелите Sources и Properties е подобрено изобразяването на свойствата – собствените свойства сега се показват с удебелен шрифт и се намират в горната част на списъка

 
  • Разширени са възможностите на API Intl.DisplayNames, с помощта на който могат да бъдат получени локализираните имена на езика, държавата, валутата, начина на изписване на датите и т.н. В новата версия са добавени новите типови имена „calendar“ и „dateTimeField, с помощта на които може да се разбере какви са полетата на датата и времето. За типа  „language“ сега е добавена поддръжката на използването на диалектите на различните езици. 

Освен нововъведения и промени, както и оправяне на забелязаните бъгове, в новата версия са отстранени 19 уязвимости. Повечето от тези уязвимости са открити с помощта на автоматизирано тестване с помощта на софтуерните инструменти AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Критични проблеми, даващи възможност да се заобиколят всички нива на защита на браузъра и да се изпълни код в операционната система извън пределите на sandbox средата, не са открити. В рамките на програмата за изплащане на парично възнаграждение за открити уязвимости в новата версия на браузъра интернет гигантът е платил 16 възнаграждения с обща сума $74 хиляди. Google е дал един бонус в размер на 20 хиляди, две премии в размер на 10 хиляди, един бонус от $7500, една премия в размер на $6000, три по $5000 и по една на суми $3000, $2000 и $1000. Размерът на останалите пет възнаграждения засега не е определен.

Абонирай се
Извести ме за
guest
0 Коментара
Отзиви
Всички коментари

Нови ревюта

Huawei P50 Pro – възродена легенда

От днес актуалният флагман на китайския производител Huawei вече е наличен за предварителна поръчка в България. След забавяне, породено от редица причини, компанията размести...

Подобни новини