Публикуван е релизът на уеб браузъра Pale Moon 31.0, който е отклонение от кодовата база на Firefox, за да осигури по-висока ефективност, запазване на класическия интерфейс, минимизиране на потреблението на памет и предоставяне на допълнителни възможности за настройка. Сборките на Pale Moon се генерират за Windows и Linux (x86 и x86_64). Кодът на проекта се разпространява под лицензия MPLv2 (Mozilla Public License).
Проектът следва класическа организация на интерфейса, без преминаване към интегрирания в Firefox 29 интерфейс Australis и предоставя широки възможности за персонализация. Между премахнатите компоненти могат да се открият DRM, Social API, WebRTC, PDF прегледач, Crash 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 работници в JavaScript.
- Подобрено е показването на курсивни шрифтове.
- Актуализирани са версиите на библиотеките, включени в основната доставка.
- Добавена е поддръжка на разширени идентификатори на видео кодеци VPx.
- Решен е дългогодишен проблем с показването на полета, зададени директно в таговете body и iframe без използване на CSS.
- Премахнат е кодът, свързан с използването на услугите Google SafeBrowsing и URLClassifier.
- Възстановен е кодът за сборка на платформата macOS.
- Нестандартният API ArchiveReader беше премахнат.
- Кодът е пречистен от компоненти на Mozilla за събиране на телеметрия.
- Кодът, свързан с поддръжката на платформата Android, е премахнат.
- Фреймуъркът за автоматизирано тестване Marionette е премахнат.
- Преместени са корекции, свързани с отстраняване на уязвимости.

Източник: opennet.ru
