Андреас Клинг (Andreas Kling), основатель web-браузера Ladybird, объявил об изменении процесса разработки проекта. Ladybird отныне прекращает приём публичных pull-запросов и переходит к продвижению изменений в кодовую базу только через сопровождающих. Все уже открытые публичные pull-запросы будут закрыты. Исходный код Ladybird продолжит поставляться под лицензией BSD. Сообщения о проблемах, уязвимостях и тестировании работы с сайтами продолжат приниматься без изменения. Сторонние энтузиасты также смогут принимать участие в обсуждениях, связанных с поддержкой стандартов и архитектурой проекта.
В качестве причин прекращения принятия публичных pull-запросов упоминается подготовка к первому альфа-выпуску, требующая более строгого распределения ответственности за вносимые изменения. По мнению создателей Ladybird код должен приниматься только от тех, кто заслуживает доверия и готов нести персональную ответственность за каждую строку кода, и то, соответствует ли код архитектуре проекта и сможет ли поддерживаться в будущем.
Из проблем возникающих при приёме изменений от всех желающих упоминается снижение уровня доверия к авторам патчей — из-за возможности формирования изменений через AI, размер патча теперь не корректирует с трудозатратами и потраченным на разработку временем. Принятие сторонних патчей также упрощает деятельность злоумышленников, первое время генерирующих рабочие изменения, чтобы заслужить доверие для последующего внедрения в код скрытой уязвимости.
Дополнительно можно отметить майский отчёт о развитии Ladybird. Из недавних достижений отмечается:
- Реализован JIT-компилятор для WebAssembly, основанного на Cranelift (переход от интерпретации к JIT-компиляции в 8 раз повысил производительность прохождения теста CoreMark и в 3–4 раза микротестов отдельных функций);
- Задействован новый блокировщик нежелательного контента, основанный на библиотеке adblock-rust от проекта Brave и поддерживающий фильтры в стиле Adblock Plus и EasyList;
- На языке Rust переписан парсер HTML;
- Код прокрутки содержимого вынесен из основного потока в отдельный процесс композитинга и переведён на асинхронную модель работы;
- Включён по умолчанию API Media Source Extensions и улучшена работа с потоковым видео;
Добавлена система кэширования байткода JavaScript на диске;
- В сборщике мусора реализован инкрементальный режим очистки памяти, исключающий длительные приостановки вычислений и повышающий отзывчивость интерфейса;
Расширена поддержка CSS, реализованы контейнерные запросы (@container), разграничение области видимости (@scope), «grid-template-columns: subgrid», «scroll-margin», «scroll-padding»;
- Добавлен API Permissions;
- Реализован протокол HSTS (HTTP Strict Transport Security);
Обеспечено автоматическое определения кодировки текста;
В инструменты для web-разработчиков добавлена поддержка инспектирования flexbox- и grid-раскладок;
Улучшена совместимость с Discord, Shopify, Reddit, а также с сайтами, использующими графики на базе библиотеки TradingView.

Модернизирован интерфейс пользователя на базе библиотеки Qt. Реализован режим вертикального отображения вкладок. Добавлена поддержка перемещения вкладок мышью для их группировки, отсоединения или переноса в другое окно;

Вместо типовых для Qt стилей панелей и кнопок, реализовано собственное оформление вкладок, панели инструментов и адресной строки. Добавлена возможность восстановления недавно закрытых вкладок и окон. Реализована функция вставки текста из буфера обмена средней кнопкой мыши.

Браузер Ladybird развивается Андреасом Клингом, который когда-то работал в компании Nokia и занимался разработкой KHTML, а затем в Apple был одним из разработчиков Safari. Изначально проект был создан как приложение для операционной системы SerenityOS, но летом 2024 года был выделен в отдельный проект и получил пожертвование в 1 млн. долларов. Браузер написан на языке С++ (стартовал проект переписывания компонентов на Rust) и распространяется под лицензией BSD. Проектом развиваются собственный движок LibWeb, JavaScript-интерпретатор LibJS и сопутствующие библиотеки.
Источник: http://www.opennet.ru/opennews/art.shtml? num=65628
© OpenNet

2 часов назад
1








English (US) ·
Russian (RU) ·