Апублікаваны рэліз web-браўзэра Pale Moon 31.0, які адказаў ад кодавай базы Firefox для забеспячэння больш высокай эфектыўнасці працы, захаванні класічнага інтэрфейсу, мінімізацыі спажывання памяці і паданні дадатковых магчымасцяў па наладзе. Зборкі Pale Moon фармуюцца для Windows і Linux (x86 і x86_64). Код праекту распаўсюджваецца пад ліцэнзіяй MPLv2 (Mozilla Public License).
Праект прытрымліваецца класічнай арганізацыі інтэрфейсу, без пераходу да інтэграванага ў Firefox 29 інтэрфейсу Australis, і з прадастаўленнем шырокіх магчымасцяў кастамізацыі. З выдаленых кампанентаў можна адзначыць DRM, Social API, WebRTC, PDF-прагляднік, Сrash Reporter, код для збору статыстыкі, сродкі для бацькоўскага кантролю і людзей з абмежаванымі магчымасцямі. У параўнанні з Firefox у браўзэры пакінутая падтрымка тэхналогіі XUL і захавана магчымасць ужывання як паўнавартасных, так і легкаважных тэм афармлення.
У новай версіі:
- Пасля выяўлення шэрагу праблем са стабільнасцю і пратэсту аднаго з ключавых распрацоўшчыкаў адмененыя раней сфармаваныя выпускі Pale Moon 30.0.0 і 30.0.1. Вернута выкарыстанне платформы UXP (Unified XUL Platform), якая развівае адгалінаванне кампанентаў Firefox з рэпазітара Mozilla Central, пазбаўленых ад прывязак да кода на мове Rust і не ўключаюць напрацоўкі праекта Quantum. У якасці браузернага рухавічка задзейнічаны Goanna 5.1, варыянт рухавічка Gecko, вычышчаны ад кода непадтрымоўваных кампанентаў і платформаў. Карыстачам галінкі Pale Moon 29.x прапанаваны прамы пераход на выпуск 31.0.
- Забяспечана падтрымка як старых немадыфікаваных дапаўненняў да Firefox, так і новых дапаўненняў, спецыяльна падрыхтаваных для Pale Moon. Стабільнасць работы старых дапаўненняў не гарантуецца, таму яны будуць пазначацца ў менеджэры дапаўненняў спецыяльнай аранжавай пазнакай.
- Дададзена падтрымка аднаразовай праверкі ўсяго ланцужка ўласцівасцяў або выклікаў у JavaScript пры дапамозе аператара «?.». Напрыклад, праз "db?.user?.name?.length" можна звярнуцца да значэння "db.user.name.length" без папярэдніх праверак.
- Для паляпшэння сумяшчальнасці з сайтамі дададзены метады Selection.setBaseAndExtent() і queueMicroTask().
- У канструктару IntersectionObserver() пры перадачы пустога радка забяспечана выстаўленне па змаўчанні ўласцівасці rootMargin замест генерацыі выключэння.
- Палепшана адмалёўка канструкцый, зададзеных пры дапамозе CSS grid і flexbox.
- Падвышаная прадукцыйнасць раўналежнага выканання web worker-ов у JavaScript.
- Палепшана адлюстраванне шрыфтоў курсівам.
- Абноўлены версіі бібліятэк, уключаных у базавую пастаўку.
- Дададзена падтрымка пашыраных ідэнтыфікатараў відэакодэкаў VPx.
- Вырашана даўняя праблема з адлюстраваннем палёў, зададзеных напроста ў тэгах body і iframe без ужывання CSS.
- Выдалены код, звязаны з выкарыстаннем сэрвісаў Google SafeBrowsing і URLClassifier.
- Адноўлены код для зборкі на платформе macOS.
- Выдалены нестандартны API ArchiveReader.
- Праведзена чыстка кода ад кампанентаў Mozilla для збору тэлеметрыі.
- Выдалены код, звязаны з падтрымкай платформы Android.
- Выдалены фрэймворк аўтаматызаванага тэсціравання Marionette.
- Перанесены выпраўленні, злучаныя з ухіленнем уразлівасцяў.
Крыніца: opennet.ru