Ответственный за взаимодействие с сообществом в компании Oracle (MySQL Community Manager) опубликовал заметку, в которой заявил об изменении в инженерном руководстве, усилении сотрудничества с сообществом и форсировании разработки новой функциональности. Новая стратегия разработки MySQL включает три направления: внедрение в MySQL Community Edition инноваций и новой функциональности для разработчиков; расширение экосистемы и развитие инструментов, фреймворков и коннекторов для улучшения работы с MySQL; повышение прозрачности процессов и активное вовлечение сообщества к определению пути развития MySQL.
В MySQL Community Edition планируют интегрировать возможности, ранее доступные только в коммерческих продуктах. Из намеченных для интеграции новшеств отмечены новые векторные функции для AI, создание сборок с PGO-оптимизациями, гиперграфный оптимизатор, повышение качества работы с JSON, расширение средств мониторинга через
OpenTelemetry, реализация многопоточного переноса изменений из журнала транзакций и предоставление расширенной аналитики HA/DR (High Availability/Disaster Recovery). Некоторые значимые изменения уже доступны в ветке MySQL 9.6, в которой из движка хранения InnoDB в SQL-движок перенесено управление внешними ключами и каскадными действиями (распространение изменений на другие записи, связанные через внешние ключи).
Кроме того, отмечается намерение расширить сотрудничество и согласованность действий между сообществом и командами Oracle, отвечающими за разработку, оптимизатор, runtime, безопасность, AI, контроль качества и управление продуктом. Планируется размещать в открытом доступе планы разработки, отчёты о ходе разработки и исправлении ошибок, а также упростить приём изменений от участников из сообщества. Для укрепления экосистемы намерены наладить тесное сотрудничество с дистрибутивами Linux и открытыми проектами. Отдельно упоминается сотрудничество с компанией Canonical и сообществом Ubuntu, а также поддержка зависящих от MySQL крупных отрытых проектов, таких как WordPress, Drupal, Magento и Joomla.
В ответ от имени сообщества опубликовано открытое письмо, которое подписали около 250 представителей сообщества и компаний, использующих MySQL или развивающих альтернативные решения на базе MySQL. Письмо призывает Oracle создать некоммерческую организацию для поддержки сообщества MySQL, не зависящую от отдельных поставщиков.
Предполагается, что создание нейтральной площадки даст возможность решить имеющиеся системные проблемы, наблюдаемые в последние годы, такие как потеря доли рынка MySQL, снижение доверия и отсутствие прозрачности, барьеры при передаче изменений от сторонних участников, отставание по функциональности (например, отсутствие векторного поиска), фрагментированное и стареющее сообщество (отсутствие притока новых разработчиков). Создание независимой организации также привлечёт к проекту крупные компании, заинтересованные в развитии MySQL, но ныне ограниченные в возможности участия в разработке из-за развития MySQL за закрытыми дверями.
Для обсуждения предлагается несколько вариантов управления в новой организации. Например, допускается, что по аналогии с формированием ассоциации OpenELA компания Oracle создаст организацию и пригласит в число учредителей других лидеров отрасли, что позволит сохранить контроль над стратегией развития и видением экосистемы, но привлечёт при этом других участников к совместной работе. Вторым вариантом является создание отдельной организации, в которой Oracle будет выступать стратегическим управляющим партнёром и предоставлять возможность использования торговой марки MySQL. Не исключается также создание ассоциации из заинтересованных в развитии MySQL сторонних компаний и уже после создания независимой организации приглашение Oracle принять участие в инициативе.
Опубликован выпуск СУБД MariaDB 12.2.2, который отмечен как первый стабильный релиз ветки 12.2. Ветка MariaDB 12.2 отнесена к промежуточным выпускам (rolling), продолжает постепенное развитие функциональности и пришла на смену ветке MariaDB 12.1. Одновременно опубликован выпуск MariaDB 12.3.1 с новой реализацией binlog, имеющий статус кандидата в релизы будущей LTS-ветки. Ветка MariaDB 12.2 будет сопровождаться до формирования выпуска 12.3.2.
Проектом MariaDB развивается ответвление от MySQL, сохраняющее обратную совместимость и отличающееся интеграцией дополнительных движков хранения и расширенных возможностей. Развитие MariaDB курирует независимая организация MariaDB Foundation в соответствии с открытым и прозрачным процессом разработки, не зависящим от отдельных производителей. MariaDB поставляется вместо MySQL во многих дистрибутивах Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) и внедрён в таких крупных проектах, как Wikipedia, Google Cloud SQL и Nimbuzz.
В режиме совместимости с СУБД Oracle реализованы функции TO_NUMBER (преобразование строки в число) и TRUNC (усечение даты, например, до часа, дня, месяца, года).
При выполнении операций слияния таблиц (JOIN) реализована оптимизация, учитывающая уникальность строк в подзапросах с выражением "GROUP BY" для более точного прогнозирования числа результирующих строк (out_rows) и корректного применения индексов.
Добавлены новые опции управления оптимизатором ROWID_FILTER/NO_ROWID_FILTER и INDEX_MERGE/NO_INDEX_MERGE, а также возможность неявного указания имён блоков в запросах (можно точечно применять опции оптимизации к частям запросов, ссылаясь на них по именам "select#N", где N - порядковый номер блока). Например: "select /*+ JOIN_ORDER(@"select#2" twenty,ten) */ ....".
Снятыограничения на уровень вложенности структур в функциях для работы с JSON (убран лимит JSON_DEPTH_LIMIT, который ранее принимал значение 32).
Добавлена таблица TRIGGERED_UPDATE_COLUMNS в схеме INFORMATION_SCHEMA (INFORMATION_SCHEMA.TRIGGERED_UPDATE_COLUMNS), показывающая столбцы, изменяемые при срабатывании триггера.
В таблице PARAMETERS в схеме INFORMATION_SCHEMA реализован столбец PARAMETER_DEFAULT, содержащий значения по умолчанию параметров хранимых процедур.
Реализована экспериментальная поддержка выражения "CREATE GLOBAL TEMPORARY TABLE" для создания глобальных временных таблиц. Подобные временные таблицы удаляются после завершения сеанса и видны всем пользователям, но содержат данные, индивидуальные для каждого пользователя.
В тестовом режиме предложена улучшенная поддержка репликации межу таблицами, имеющими разную структуру.
Опубликован первый выпуск проекта Netbase, занимающегося портированием утилит NetBSD для других операционных систем. В первом выпуске основное внимание уделено работоспособности компонентов пользовательского пространства NetBSD на системах с ядром Linux и стандартной Си-библиотекой Glibc. При этом также упомянута не полностью протестированная поддержка FreeBSD, OpenBSD и macOS, и потенциальная поддержка GNU/Hurd. Наработки проекта распространяются под лицензией BSD.
Порт реализован с использованием обеспечивающих совместимость заголовочных файлов и библиотек-прослоек (libnetbsd, libutil), позволяющих использовать задействованную в утилитах специфичную функциональность NetBSD поверх других систем. При разработке библиотек использован только код из кодовой базы NetBSD. По возможности сам код утилит пытаются сохранить в неизменном виде или обойтись минимальными правками.
Майкл Уинсер (Michael Winser), сооснователь инициативы Alpha-Omega, нацеленной на повышение безопасности открытого ПО, выступил на конференции FOSDEM 2026 с докладом, поднимающим вопрос устойчивости инфраструктуры при нынешних моделях финансирования каталогов пакетов PyPI (Python), npm (Node.js), Crates.io (Rust), RubyGems (Ruby) и Maven Central (Java). При экспоненциальном росте числа загрузок и объёма хранимых данных финансирование отмеченных каталогов практически не увеличивается, что создаёт риски нарушения их устойчивой работы и мешает развитию механизмов для выявления вредоносных пакетов и защиты от атак через зависимости.
Отмечается, что многие каталоги пакетов работают на грани рентабельности, полагаясь на непостоянные гранты, пожертвования и безвозмездное предоставление ресурсов. Около 25% расходов каталогов приходится на оплату трафика CDN и каналов связи (network bandwidth). Далее следуют: 18% - хранение данных, 15% - вычислительные мощности, 12% - борьба с вредоносной активностью, 10% - реагирование на инциденты (Abuse), 8% - обеспечение стабильной работы (SRE - Site Reliability Engineering), 6% - поддержка, 4% - исправление ошибок.
На создание новой функциональности тратится лишь 2% средств, а разработку компонентов обеспечения безопасности - 1%. Подготовка документации и вовсе не вошла в первую десятку статей расходов.
По оценке Уинсера, содержание каталога масштаба Crates.io, обрабатывающего около 125 миллиардов загрузок в год, обходится в 5-8 миллионов долларов ежегодно, причём без учёта безвозмездно предоставляемых ресурсов - например, сеть доставки контента Fastly обслуживает трафик Crates.io бесплатно. Для PyPI, обслуживающего более 700 тысяч пакетов с суммарным трафиком порядка 747 петабайт в год (189 Гбит/с), одна лишь оплата трафика без спонсорства Fastly составила бы около 1.8 миллионов долларов в месяц.
Особую обеспокоенность вызывает рост числа вредоносных пакетов, в том числе создаваемых с помощью средств генеративного искусственного интеллекта. Медианное время от публикации вредоносного пакета до его удаления составляет 39 часов - более чем достаточно для распространения по цепочке зависимостей. В сентябре 2025 года данная проблема проявилась на практике: самораспространяющийся червь Shai-Hulud поразил экосистему NPM.
Рассмотрено несколько гипотетических способов покрытия расходов каталогов пакетов, ни один из которых, судя по проведённым расчётам, не способен полностью компенсировать все затраты. Наиболее очевидный путь монетизации - введение платы за пропускную способность или доступ к пакетам, неизбежно приведёт к увеличению интенсивности кэширования и появлению сторонних зеркал, предлагающих бесплатный доступ, что создаст проблемы с отслеживанием публикации вредоносного содержимого и фрагментацией экосистемы. При этом, как отметил Уинсер, каталоги фактически являются естественными монополиями - им принадлежит пространство имён, - однако стоимость создания альтернативного каталога стремится к нулю, что делает это положение неустойчивым.
В прошлом году при рассмотрении вопроса финансирования каталогов организацией OpenSSF были предложены такие меры, как введение дополнительных платных возможностей, например, предоставление расширенной платной статистики; коммерческое сотрудничество, помогающее финансировать поддержание инфраструктуры пропорционально создаваемой нагрузке или в обмен на стратегические преимущества; многоуровневые модели доступа, сохраняющие открытость для обычных пользователей, но вводящие платные опции для тех, кому требуется повышенная надёжность и большой объём трафика.
С ростом популярности AI-ассистентов у разработчиков участились случаи утечки в публичные Git-репозитории конфиденциальных данных, оседающих среди информации, сохраняемой AI-инструментами в рабочее дерево проекта. AI-ассистенты Claude Code, Cursor, Continue, Aider, OpenAI Codex, Copilot, Sourcegraph Cody и Amazon Q в корневом каталоге проекта создают локальные файлы конфигурации и каталоги, в которых среди прочего может сохранятся история операций и данные о контексте.
В сохраняемые AI-ассистентами файлы могут попасть ключи доступа к API, строки подключения к СУБД, ссылки на внутренние ресурсы и учётные данные для подключения к облачным окружениям, полученные AI-ассистентом в процессе выполнения инструкций, после работы с локальными настройками или охваченные в связанном с проектом контексте. Для разработчика оседание подобных данных в файловой иерархии проекта не очевидно, поэтому многие забывают прописать создаваемые AI-ассистентами каталоги в файл .gitignore и после публикации изменений переносят их в публичный git-репозиторий.
Для выявления подобных утечек в публичных репозитриях на GitHub подготовлена утилита claudleak. Тестовое сканирование GitHub показало, что из репозиториев, в которых имеются подкаталоги с настройками AI-ассистентов, примерно 2.4% содержат актуальные ключи или учётные данные, действие которых было подтверждено отдельной проверкой. Автор утилиты столкнулся с проблемой, когда заметил файл ".claude/settings.local.json" в своём репозитории, в котором среди информации оказались ключи доступа и пароли, передававшиеся через переменные окружения.
Разработчикам, использующим AI-ассистенты, рекомендуется добавить в файл .gitignore каталоги .claude/, .cursor/, .continue/, .copilot/ и .aider/, а также настроить их игнорирование через глобальный фильтр командой "git config --global core.excludesfile файл_со_списком".
Группа исследователей из Йельского университета предложила (PDF) новый тип открытых лицензий CCAI (Contextual Copyleft), расширяющий применение копилефта к генеративным AI-моделям. Идея CCAI в том, что использование содержимого под данной лицензией в качестве данных для машинного обучения приводит к распространению условий копилефта на результирующие генеративные AI-модели. Предполагается, что новая лицензия может способствовать снижению злоупотреблений в AI-проектах и предотвращению появления фиктивных AI-моделей, которые формально преподносятся как открытые, но из-за скрытия исходных данных и инструментария для обучения, привязаны к производителю.
CCAI определяет, что любое распространение и публикация точных копий или изменённых производных работ, распространяемых под лицензией
CCAI, должно осуществляться под теми же лицензионными условиями без
наложения дополнительных ограничений. Данное требование распространяется на любую AI-модель, набор данных или AI-систему, при обучении которых использовалось ПО под лицензией CCAI или результат его работы. В контексте обучения генеративных AI-моделей CCAI требует раскрытия исходного кода модели, детального описания задействованных при обучении данных, параметров, весов и архитектуры модели.
Лицензию CCAI также можно использовать как дополнительное требование, прикрепляемое к существующим копилефт-лицензиям, таким как AGPLv3. Указанное требование расширяет действие лицензии на обучающие наборы данных, код и весовые коэффициенты модели в соответствии с критериями открытости AI-систем, сформулированными организацией Open Source Initiative (OSI). Код, распространяемый под подобном лицензией, может использоваться для обучения AI-модели только при условии, что всем пользователям будет предоставлено описание обучающего набора данных, код для обучения модели и обученная AI-модель.
Текст прикрепляемого дополнительного требования: "При использовании программного обеспечения для обучения, оптимизации или создания любой модели машинного обучения или генеративной AI-системы, любая результирующая модель, набор данных или система должны публиковаться на условиях, не ужесточающих требования настоящей лицензии. Подобное требование охватывает предоставление доступа к коду для проведения обучения, описанию данных, использованных при обучении, параметров и архитектуры модели. Предоставление доступа к модели или результату её работы по сети считается распространением и является основанием для выполнения накладываемых лицензией обязательств".
GitHub подвёл итоги третьего раунда инициативы "GitHub Secure Open Source Fund", нацеленной на финансирование работы по усилению безопасности открытых проектов. В третьем раунде финансирование получили 67 проектов, используемых при разработке или задействованных в современных AI-стеках.
Участники получили по 10 тысяч долларов на проведение работы по усилению безопасности, трёхнедельное обучение мэйнтнеров по компьютерной безопасности, рекомендации и консультации от команды GitHub Security Lab, а также бесплатный доступ к связанным с безопасностью сервисам GitHub (Copilot, Copilot Autofix, Secret scanning). Всего за время действия инициативы финансирование было предоставлено 138 проектам, а к работе привлечено 219 сопровождающих. В результате была выявлена 191 уязвимость, обнаружено более 600 утечек и предотвращено более 250 утечек секретов.
После восьми лет разработки представлен релиз операционной системы AsteroidOS 2.0, предназначенной для использования на портативных носимых устройствах, таких как умные часы. Сборки подготовлены для 26 моделей часов от таких производителей, как Asus, LG, Samsung, Sony, Huawei, Casio, OPPO и TicWatch. Код низкоуровневых компонентов платформы написан на языках Си и C++, для построения интерфейса используется Qt и QML. Наработки проекта распространяются под лицензиями BSD/MIT (композитный менеджер) и GPL (приложения).
Системные компоненты построены с использованием наработок проекта OpenEmbedded, предоставляющего средства для сборки GNU/Linux дистрибутивов для встраиваемых систем. В ОС задействованы systemd, BlueZ и PulseAudio. Для взаимодействия с оборудованием применяется прослойка libhybris, позволяющая применять драйверы, созданные для платформы Android, что упрощает портирование платформы для устройств, изначально поставляемых с прошивкой на базе Android.
Базовая оболочка и прикладные приложения в AsteroidOS написаны с использованием библиотеки Qt, компонентов qml-asteroid и технологии QtQuick. Вывод информации организован с применением QtWayland и протокола Wayland. Работу пользовательского интерфейса обеспечивает композитный сервер asteroid-launcher, реализованный на основе фреймворка Lipstick, который также применяется для создания пользовательского интерфейса в Sailfish.
Среди входящих в состав AsteroidOS приложений: часы, будильник, секундомер, таймер, калькулятор, календарь, напоминание о событиях, интерфейс для управления воспроизведением музыки на телефоне, конфигуратор, прогноз погоды, вывод уведомлений со смартфона, компас, фонарик, пульсометр, шагомер. Для разработчиков приложений предлагается SDK, инструментарий для кастомизации оформления и эмулятор умных часов. Синхронизация со смартфоном осуществляется через Bluetooth Low Energy. Предоставляются клиентские приложения для синхронизации внешних устройств с AsteroidOS: AsteroidOS Sync (для Android, поддерживает уведомления о звонках), Gadgetbridge (для Android), Amazfish (для SailfishOS и Linux) и Telescope (для UBports Ubuntu Touch).
Особенности AsteroidOS 2.0:
Реализован режим "Always-on Display", при котором экран не выключается и постоянно отображает время (не требуется нажатие кнопки для пробуждения устройства).
Добавлена функция "Tilt-to-wake", позволяющая автоматически активировать экран при движении руки, характерном для взгляда на часы.
Функция "Palm-to-sleep" для быстрого перевода устройства в ждущий режим через касания ко всей поверхности сенсорного экрана ладонью.
Добавлена поддержка звуковых устройств и устройств ввода (HID), подключаемых через Bluetooth.
Добавлена настраиваемая панель для быстрого изменения настроек и режимов, а также вызова часто используемых функций и приложений.
Предложено семь новых стилей оформление базового интерфейса App Launcher. Для выбора стиля в настройки добавлена отдельная страница.
Улучшен интерфейс для выбора фоновых изображений и циферблатов часов. Обеспечен подбор циферблатов, сочетающихся c выбранными обоями. Значительно повышена производительность галерей обоев и циферблатов.
Добавлен режим Nightstand для использования в качестве настольных часов или постоянного отображения состояния при зарядке.
Добавлена новая анимация фона.
Добавлена игра Diamonds в стиле игры 2048, пригодная для небольших экранов.
Переделано оформление приложения для показа прогноза погоды.
Переделано оформление таймера, которые теперь работает в фоне и оптимизирован для устройств в круглым экраном.
Добавлено приложение с функцией фонарика (показывает белый экран в максимальной яркости).
Предложена анимированная загрузочная заставка.
Добавлена поддержка круглых экранов с нижним плоским срезом под датчики.
В калькуляторе изменена раскладка кнопок для более удобной работы на круглых экранах.
Улучшены и унифицированы элементы интерфейса, такие как переключатели и индикаторы прогресса.
Задействован шрифт Noto Sans и цветные Emoji.
Добавлена опция для настройки вибросигнала при поступлении звонка.
Интерфейс переведён на 49 языков. Для русского и украинского языков уровень перевода составил 100%, литовского - 89%, белорусского - 59%, узбекского - 52%.
Значительно повышена производительность отрисовки интерфейса пользователя и реализована более плавная анимация.
Добавлены оптимизации для снижения энергопотребления.
Добавлена полная поддержка часов:
Fossil Gen 4/5/6
Huawei Watch/Watch 2
LG Watch W7
Moto 360 2015
MTK6580
OPPO Watch
Polar M600 (pike)
Ticwatch C2+ & C2
Ticwatch E & S
Ticwatch E2 & S2
Ticwatch Pro, Pro 2020, Pro 3
Добавлена частичная поддержка часов:
Casio WSD-F10/F20
LG Watch Urbane 2
Moto 360 1st gen
Samsung Gear 2 (используются драйверы для штатного Linux-ядра, без применения libhybris)
Samsung Gear Live
Из планов на будущее отмечено создание приложения для фитнеса, конфигуратора Wi-Fi, web-приложений для прошивки и дизайна циферблатов, запуск каталога-магазина приложений.
Опубликован выпуск игровой платформы Lutris 0.5.20, предоставляющей инструменты для упрощения установки, настройки и управления играми в Linux. Код проекта написан на языке Python и распространяется под лицензией GPLv3. Готовые сборки доступны в формате flatpak.
Проектом поддерживается каталог для быстрого поиска и установки игровых приложений, позволяющий через единый интерфейс одним щелчком мыши запускать в Linux игры, не заботясь об установке зависимостей и настройках. Runtime-компоненты для запуска игр поставляются проектом и не привязываются к используемому дистрибутиву. Runtime представляет собой независимый от дистрибутива набор библиотек, включающий компоненты из SteamOS и Ubuntu, а также различные дополнительные библиотеки.
Предоставляется возможность установки игр, распространяемых через сервисы GOG, Steam, Epic Games Store, Battle.net, Amazon Games, Origin и Uplay. При этом сам по себе Lutris выступает лишь в роли посредника и не продаёт игры, поэтому для коммерческих игр пользователь должен самостоятельно приобрести игру в соответствующем сервисе (бесплатные игры можно запускать одним кликом из графического интерфейса Lutris).
Каждая игра в Lutris привязывается к сценарию загрузки и обработчику, описывающему окружение для запуска игры. Среди прочего предоставляются готовые профили с оптимальными настройками для запуска игр под управлением Wine. Кроме Wine игры могут запускаться при помощи эмуляторов игровых консолей, таких как RetroArch, Dosbox, FS-UAE, ScummVM, MESS/MAME и Dolphin.
Среди изменений в новой версии:
Для запуска Windows-игр с использованием UMU (Unified Launcher) по умолчанию задействован Proton-GE,
расширенный вариант пакета Proton, отличающийся использованием свежей версии Wine, задействованием FFmpeg в FAudio и включением дополнительных патчей, решающих проблемы в различных игровых приложениях.
При использовании Proton прекращена установка VKD3D, D3D Extras и DXVK-NVAPI, которые уже предоставляются в Proton.
Обеспечена передача в Proton настроек "Enable Esync" и "Enable Fsync".
Включена предоставляемая в DXVK прослойка для трансляции Direct3D 8 в API Vulkan.
В скрипт запуска Wine добавлена опция для использования драйвера winewayland.drv для окружений на базе протокола Wayland.
Добавлены кнопки для выбора обложек, баннеров и пиктограмм в настройках игры.
В настройки добавлена опция для выставления файлового пути к BIOS для эмулятора, используемого в libretro.
Обеспечено определение информации о релизах через сервисы GOG и Itch.io. При работе с Itch.io вместо учётных данных задействованы ключи доступа к API. Упрощена работа с коллекциями Itch.io - если отсутствует коллекция с именем "Lutris", показываются все игры.
В настройках платформы MAME для выбора типа эмулируемого устройства вместо огромного выпадающего списка реализовано поле с поиском.
Добавлен скрипт для запуска игр через эмулятор Azahar.
Реализованы источники загрузки игр "ZOOM Platform" и "Steam Family"
Обновлены скрипты для запуска игр при помощи TIC-80, EasyRPG, mGBA, Rosalie's Mupen GUI, Ruffle и 86Box.
Добавлена поддержка импорта ПЗУ от компьютеров Commodore 64.
Добавлена поддержка ICD (Installable Client Driver) для GPU Intel Xe.
Удалено меню "Add Games", на смену которому пришла кнопка "+".
В контекстное меню добавлена кнопка для создания ярлыка запуска Steam в режиме Big Picture.
Добавлена файловая ассоциация для запуска инсталлятора lutris двойным кликом.
Налажена совместимость с Python 3.14.
Одновременно опубликован выпуск проекта Bottles 0.62, развивающего приложение для упрощения установки, настройки и запуска Windows-приложений в Linux на базе Wine или Proton. Программа предоставляет интерфейс для управления префиксами, определяющими Wine-окружение и параметры для запуска приложений, а также инструменты для установки зависимостей, необходимых для корректной работы запускаемых программ. Код проекта написан на языке Python и распространяется под лицензией GPLv3. Программа поставляется в формате Flatpak и в пакетах для Arch Linux.
Для установки дополнительных библиотек в Bottles вместо скрипта Winetricks применяется полноценная система управления зависимостями, работа которой напоминает управление зависимостями в пакетных менеджерах дистрибутивов. Для запускаемого Windows-приложения определяется список зависимостей (DLL-библиотеки, шрифты, runtime и т.п.), которые необходимо загрузить и установить для нормальной работы, при том, что у каждой зависимости могут быть свои зависимости.
Bottles предоставляет репозиторий с информацией о зависимостях для различных программ и библиотек, а также инструментарий для централизованного управления зависимостями. Все установленные зависимости отслеживаются, поэтому при удалении программы, можно удалить и связанные зависимости, если они не используются для запуска других приложений. Подобный подход позволяет обойтись без установки отдельной версии Wine для каждого приложения и использовать единое Wine-окружение для запуска как можно большего числа приложений.
Для работы с Windows-префиксами в Bottles применяется концепция окружений, предоставляющих готовые настройки, библиотеки и зависимости для определённого класса приложений. Предлагаются базовые окружения: Gaming - для игр, Software - для прикладных программ и Custom - чистое окружение для проведения собственных экспериментов. В окружении для игр включены DXVK, VKD3D и Esync, на системах с гибридной графикой активирована дискретная графическая карта, а в PipeWire включены настройки для улучшения качества звука. В окружении для приложений включены настройки, подходящие как для мультимедийных программ, так и офисных приложений.
При необходимости можно установить несколько разных версий wine, proton и dxvk, и на лету переключаться между ними. Возможен импорт окружений из других менеджеров Wine, таких как Lutris и PlayOnLinux. Окружения запускаются с использованием sandbox-изоляции, отделены от основной системы и имеют доступ только к необходимым данным в домашнем каталоге. Предоставляется поддержка версионного контроля, автоматически сохраняющего состояние перед установкой каждой новой зависимости и позволяющего откататься на одно из прошлых состояний в случае проблем.
Среди изменений в Bottles 0.62:
Добавлена поддержка XDG-портала Dynamic Launcher, позволяющего изолированным приложениям устанавливать ".desktop" файлы без ручного предоставления полномочий.
Активация технологии суперсэмплинга FSR (FidelityFX Super Resolution) перемещена на страницу с настройками композитного сервера Gamescope.
Реализован вывод индикатора прогресса создания резервной копии.
Разработчики дистрибутива Gentoo объявили о реализации возможности передачи изменений в ebuild-репозиторий, используя Git-хостинг Codeberg. На Codeberg также подняты зеркала для разработки portage, steve и gentoolkit. Поддержка Codeberg пока реализована в дополнение к ранее используемой платформе GitHub, но в дальнейшем планируют поэтапно полностью перевести процесс передачи изменений на Codeberg. Основная причина ухода с GitHub - навязывание AI-сервиса Copilot.
Git-хостинг Codeberg построен на базе свободной платформы совместной разработки Forgejo. Ключевыми особенностями Forgejo является низкое потребление ресурсов (может использоваться в дешёвых VPS) и простой процесс установки. Предоставляются типовые возможности работы с проектами, такие как управление задачами, отслеживание проблем (issues), pull-запросы, wiki, средства для координации групп разработчиков, подготовка релизов, автоматизация размещения пакетов в репозиториях, управление правами доступа, сопряжение с платформами непрерывной интеграции, поиск кода, аутентификация через LDAP и OAuth, доступ к репозиторию по протоколам SSH и HTTP/HTTPS, подключение web-хуков для интеграции со Slack, Discord и другими сервисами, поддержка Git-хуков и Git LFS, инструменты для миграции и зеркалирования репозиториев.
После четырёх месяцев разработки опубликован релиз среды рабочего стола KDE Plasma 6.6. Для оценки работы новых выпусков KDE можновоспользоваться сборками от проектов KDE Linux, KDE Neon и openSUSE (Argon, основанный на openSUSE Leap, и Krypton, основанный на openSUSE Tumbleweed).
Добавлен новый менеджер входа Plasma Login Manager, развиваемый для замены дисплейного менеджера SDDM (Simple Desktop Display Manager) и решающий специфичные для него архитектурные проблемы. Plasma-login-manager использует бэкенд на основе урезанной версии SDDM и механизм запуска, идентичный тому, что применяется для запуска сеанса рабочего стола KDE Plasma. Оформление экрана входа приближено к существующему блокировщику экрана KDE, а настройки унифицированы с KDE Plasma. Вместо использования QML для кастомизации тем оформления предложено использовать существующие плагины обоев рабочего стола, цветовых схем и тем оформления Plasma.
Plasma Login Manager завязан на сервис systemd-logind и работает только в системах с systemd. При этом разработчики KDE заявили, что сама по себе среда рабочего стола KDE Plasma остаётся не привязанной к systemd и в обозримом будущем может как и раньше использоваться в системах без systemd, включая FreeBSD. Привязка к systemd касается только нового менеджера входа, который является необязательным компонентном и может быть заменён на альтернативные проекты, работающие без systemd.
Добавлен новый мастер начальной настройки Plasma Setup, который дополняет экран приветствия входа в систему (Welcome Center). В plasma-setup предложены системные операции, которые выполняются до первого входа в систему после установки, такие как создание нового пользователя, под которым будет осуществляться дальнейшая работа, выбор языка и часового пояса, настройка раскладки клавиатуры и конфигурирование сетевого доступа.
Добавлена новая экранная клавиатура plasma-keyboard, которая разрабатывается на смену виртуальной клавиатуре Maliit. Plasma-keyboard базируется на коде экранной клавиатуры Qt Virtual Keyboard, входящей в состав Qt. Реализация от KDE расширена возможностями для интеграции с рабочим столом Plasma, решает некоторые проблемы с удобством использования и применяет новый алгоритм масшабирования, позволивший улучшить отображение клавиатуры на узких экранах.
В программу для создания скриншотов Spectacle встроена функция оптического распознавания символов (OCR), позволяющая преобразовывать присутствующие на изображении слова в выделяемый текст. В текущем виде функциональность OCR ограничена Spectacle, но в дальнейшем её планируют выделить в библиотеку и задействовать в других приложениях KDE. Распознавание текста осуществляется при помощи пакета
Tesseract и активируется только при его наличии в системе.
В Spectacle также предоставлена возможность пометки отдельных окон для их исключения при захвате содержимого экрана (в скринкастах подобные окна и связанные с ними всплывающие окна будут скрыты). Окно можно пометить через контекстные меню в заголовке и менеджере задач, а также в редакторе оконных правил. В уведомления о скриншотах добавлена кнопка "Open Containing Folder" для открытия каталога, в который сохраняются скриншоты.
Добавлена возможность сохранения текущих настроек внешнего вида в форме новой темы оформления.
В интерфейсе смены темы оформления предоставлена возможность предпросмотра тёмных вариантов тем оформления GTK.
Добавлена поддержка настройки визуального выделения рамок и контуров элементов интерфейса, для которых используется тема оформления Breeze. Среди прочего возможно полное отключение разделителей элементов или контрастное разделение выбранным цветом.
В интерфейс выбора Emoji добавлена опция для изменения цвета кожи при изображении людей и рук.
В виджет управления сетевым соединением добавлена кнопка для подключения к сети с получением параметров Wi-Fi через сканирование QR-кода.
В панель добавлена возможность изменения уровня громкости задачи, используя прокрутку колесом мыши на пиктограмме приложения.
В виджет со списком окон добавлена возможность исключения окон, открытых на других экранах и виртуальных рабочих столах. Также добавлена опция для открытия окна после удержания курсора мыши на его эскизе в течение определённого времени.
На рабочем столе реализована возможность показа диалога со свойствами при двойном клике мыши на файле или директории, удерживая клавишу Alt.
В конфигураторе улучшен интерфейс цветокоррекции для людей с нарушением восприятия цветов. Добавлен фильтр для отображения в оттенках серого.
В эффект увеличения областей экрана добавлен режим, позволяющий центрировать вывод относительно позиции курсора (при увеличении курсор всегда остаётся в центре экрана).
В приложение System Monitor добавлена возможность выставления приоритетов выполнения процессов, по аналогии с тем, как это можно было делать в ранее поставлявшемся приложении KSysGuard.
По умолчанию прекращена проверка ошибок в файловой системе при монтировании внешнего накопителя, данная операция теперь вызывается по желанию через отдельную опцию.
В диалог выбора экрана добавлено поле для поиска и фильтрации, позволяющее быстро найти экран по названию при наличии большого числа открытых окон.
В приложениях воспроизведения мультимедийного контента реализована поддержка прокрутки вперёд и назад при помощи соответствующих специализированных кнопок на клавиатуре.
В композитный менеджер kwin добавлена поддержка Wayland-протокола color-management-v2, предоставляющего возможности для управления цветом.
В композитном менеджере KWin реализована эмуляция расширения XRandr, применяемого для динамического изменения разрешения, вращения, трансформации и зеркалирования содержимого экрана. Реализованная поддержка решила проблемы с отображением полноэкранных X11-приложений на широкоформатных экранах при использовании XWayland.
Улучшено использование Wayland-протокола xdg-activation для переключения фокуса ввода между приложениями.
Улучшена работа операций drag-and-drop между окнами приложений на базе Wayland и XWayland.
В сеансе на базе Wayland значительноулучшена поддержка зеркалирования содержимого на нескольких экранах.
Добавлена возможность использования в Wayland-сеансе утилиты kscreen-doctor для добавления собственных режимов экрана.
В виджет управления Bluetooth добавлена кнопка "Forget device" для быстрого удаления сопряжённого устройства без перехода в конфигуратор.
В виджет управления питанием добавлена информация о видах блокировки, применённых к отдельным приложениям (блокировка перехода в спящий режим или блокировка запуска хранителя экрана).
При просмотре миниатюр окон в виджете управления задачами реализовано фокусирование на активном окне для его выделения на фоне других открытых окон.
В размещаемых в панели виджетах улучшена читаемость текстовых меток.
В виджете с реализацией меню приложений (Application Dashboard) учтена выбранная цветовая схема для показа в светлых тонах при светлом режиме оформления (по умолчанию меню продолжает отображаться тёмным). Добавлена возможность изменения размера секций с избранными (Favorites) и обычными приложениями, чтобы выделить одной из них больше места на экране.
Из виджета буфера обмена (klipper) убрана кнопка для показа диалога просмотра QR-кода - QR-код теперь сразу показывается в интерфейсе.
В виджет калибровки HDR добавлена страница для определения максимальной усреднённой яркости при отображении в полноэкранном режиме.
Виджет с часами переведён на использование библиотеки "libclock", что позволило избавиться от проблем с часовыми поясами и повысить эффективность работы с таймером.
Переработан интерфейс настройки виджета с таймером (вместо двух страниц предложен унифицированный блок настроек).
В меню Kickoff реализована поддержка прокрутки списка избранных приложений, в случае если они не вмещаются в отведённую для них область.
В меню приложений (Kickoff) реализовано визуальное разделение смежных выделенных категорий.
В панельном виджете с меню приложений (Kicker) налажен показ подменю при быстром перемещении курсора по элементам меню верхнего уровня. Обеспечено раскрытие подменю по левую сторону от родительского элемента в случае размещения виджета в правой боковой панели.
В меню приложений Kickoff добавлена возможность использования клавиш управления курсором для возвращения из области с результатами поиска к полю для ввода поискового запроса.
В виджете со списком окон реализованы настройки для показа меню при наведении курсора мышью и скрытия пиктограммы окна (останется только название окна).
Реализована возможность настройки порядка показа пиктограмм в виджете завершения сеанса и блокировки экрана.
В конфигураторе на странице настройки экрана унифицирован размер всех слайдеров.
Во всплывающий интерфейс компоновки дисплеев в многомониторных конфигурациях добавлена кнопка для вызова полноценного конфигуратора.
В конфигураторе переделан интерфейс настройки Bluetooth. Добавлены рамки для кнопок элементов списка, добавлен текст на кнопки "Connect" и обеспечено скрытие вкладки с параметрами активного устройства при выключенном Bluetooth.
В конфигураторе на странице выбора обоев реализованы дополнительные отступы.
Добавлена комбинация клавиш Meta+I для вызова конфигуратора.
Унифицирован размер слайдеров на странице настройки экрана в конфигураторе.
В конфигураторе на странице с настройками подключения к удалённым рабочим столам в основном интерфейсе обеспечено отображение предупреждения о возникновении ошибок без необходимости открытия лога в случае сбоев.
В конфигураторе при попытке удаления целиком группы ярлыков реализован запрос на подтверждение операции с подсветкой подлежащих удалению элементов.
Улучшено отображение состояния дисков на странице SMART-диагностики в конфигураторе.
В конфигураторе на страницу настройки сетевого подключения и Wi-Fi добавлена информация о подключённых беспроводных сетях, аналогичная сведениям, показываемым в панельном апплете.
В конфигураторе реализован показ страниц настройки Thunderbolt и сенсорного экрана только при наличии данного оборудования.
В интерфейс калибровки HDR добавлена сводная страница с настройками для Windows-приложений и игр.
В приложение System Monitor встроена функция для поиска процессов с учётом не только имени, но и опций командой строки, а также расширен диалог для настройки показываемых столбцов.
На экран завершения работы добавлено предупреждение о том, что перезапуск приведёт к загрузке другой операционной системы.
Добавлена настройка для отключения индикаторов таймаута автоскрытия в уведомлениях (на некоторых системах подобная индикация на 15% увеличивает нагрузку на CPU)
Использование игрового контроллера теперь воспринимается как активность, блокирующая переход в спящий режим и запуск хранителя экрана.
На странице настройки прав доступа приложений обеспечен показ идентификатора Flatpak-приложения (например, "com.github.wwmm.easyeffects") вместо номера версии. Добавлена возможность выделения текста для помещения в буфер обмена.
По умолчанию включено хранение паролей от Wi-Fi в глобальном контексте, доступном только пользователю root, а не в привязке к отдельным пользователям. Изменение позволит новым пользователям сразу начать работу в сети, если в системе ранее уже осуществлялось подключение к Wi-Fi, без необходимости повторного входа. На странице входа также сразу будут работать функции, требующие интернет-подключения, такие как использование учётных записей через LDAP.
Предоставлена возможность временного отключения шаблонов и команд в менеджере буфера обмена Klipper без их удаления из списка.
Закруглены углы маркера, выделяющего активный элемент верхнего меню в приложениях.
Обеспечено корректное отображение соотношения сторон эскизов изображений при использовании сервиса смены обоев рабочего стола "Bing Picture of the Day" - вместо использования для изображений только портретного формата адаптивно выбирается альбомное или портретное представление.
В настройках дополнения для интеграции с web-браузером теперь используется тёмный фон, если в браузере включён тёмный режим оформления.
В команде "kcmshell6 --list" задействована сортировка в алфавитном порядке.
В KRunner отключено динамическое изменение приоритета вывода результатов поиска в зависимости от частоты их использования, что позволит добиться более предсказуемой сортировки.
Реализована возможность передачи приложением свойства "position" при инициировании предоставления совместного доступа к экрану для улучшения работы в многомониторных конфигурациях.
В интерфейсе поиска при вводе запроса "winver", привычного пользователям Windows, обеспечен вывод страницы с информацией о системе.
Реализовано отображение иконки сайта при управлении воспроизведением мультимедийного контента в браузере через виджет Media Player, когда не удалось получить картинку с обложкой альбома.
Ограничение на максимальное число виртуальных рабочих столов увеличено с 20 до 25 (позволяет отображать виртуальные рабочие столы в сетке 5x5).
Добавлена поддержка портала xdg для доступа к USB-устройствам из изолированных приложений.
На системах с ядром Linux 7.0, разработка которого только началась, и соответствующей аппаратной поддержкой реализована возможность корректировки чёткости всего содержимого экрана.
В интерфейс выбора обоев рабочего стола для показа в режиме слайдшоу добавлены кнопки установки и снятия выделения со всех миниатюр.
Улучшено отображение содержимого на страницах с информацией о системе.
Реализована возможность использования ключевого слова "dxdiag", привычного пользователям Windows, для вывода информации о графической подсистеме при поиске.
В текстовых полях задействован стандартный стиль кнопок для встроенных действий.
В GTK-теме Breeze GTK по аналогии с Qt-темой Breeze прекращено использование градиентов на кнопках.
Внесеныоптимизации, позволившие снизить потребление оперативной памяти в KDE Plasma более чем на 100 МБ за счёт выгрузки из памяти неиспользуемых изображений, формируемых для показа обоев рабочего стола. Ценой оптимизации стала невозможность использования мозаичного режима (tiled) отображения обоев, применяемых для воссоздания ретро-оформления в стиле KDE 1. Функциональность для работы с подобными обоями вынесена из основного кода работы с изображениями в отдельный плагин "Tiled".
Реализована настройка "KWin Scripts -> Enable Virtual Desktops Only on Primary", допускающая привязку окон к виртуальным рабочим столам только на первичном экране - на вторичных дисплеях окна всегда остаются видимыми, независимо от активного виртуального рабочего стола.
В DrKonqi, утилите для отправки отчётов о сбоях, реализован учёт аварийных завершений приложений, не связанных с KDE, а также возможность отправки отчётов о сбоях в подобных программах разработчикам или сопровождающим в дистрибутиве.
При использовании "пипетки" (color picker) для определения цвета пикселя на экране теперь передаётся исходное RGB-значение цвета, а не значение после обработки фильтрами (например, фильтра для ночного режима) или использования профиля ICC.
При отображении GTK-приложений с использованием темы оформления
Breeze реализованы дополнительные отступы для панелей инструментов (крайние элементы панелей касались краёв окна) и исключено появление неэстетичных чёрных линий-разделителей.
Обеспечена обработка активных углов (Hot-corner) для вызова действий на всех экранах в многомониторных конфиграциях, а не только на первом экране. При желании новое поведение можно отключить в настройках.
Переработано оформление диалогов подтверждения полномочий и выбора приложения для обработки определённого контента.
Объединены на одной странице разрозненные настройки системного лотка.
Обеспечено запоминание отказа регистрации последовательности клавиш, запрашиваемой при запуске приложения (при последующих запусках повторные запросы больше не выводятся).
Обеспечено сохранение позиции пиктограммы на рабочем столе после переименования файла или каталога.
Повышено качество и чёткость отображения информации при использовании дробного коэффициента масштабирования в сочетании с программным рендерингом.
Цикличное аварийное завершение процесса больше не приводит к исчерпанию памяти и зависанию системы.
В набор пиктограмм Breeze добавлена пиктограмма для файлов с кодом на языке Nim.
В KDE Plasma и KWin значительно повышена плавность анимации при использовании экранов с частотой обновления больше 60Hz.
Проведена оптимизация KWin, сократившая выполнение лишних действий при композитинге.
Предоставлена возможность настройки насыщенности фона для эффекта размытия содержимого. В тёмной цветовой схеме по умолчанию реализовано более тёмное размытие, а насыщенность увеличена на 150%.
Модернизирован интерфейс диалогового окна для управления удалённым доступом (1, 2, 3, 4).
При прокручивании сгруппированных пиктограмм в менеджере задач, окна теперь выводятся в порядке последнего обращения к ним, без приоритезации полноэкранных задач.
В редакторе меню (KMenuEdit) реализована поддержка выделения одновременно нескольких элементов для ускорения массового удаления.
Продолжена модернизация диалоговых окон для доступа изолированных приложений к внешним ресурсам (XDG portal). Упрощён интерфейс для выбора окон и экрана.
В приложениях на базе фреймворка Kirigami и QtWidgets унифицированы высота заголовков и отступы между элементами в списках.
Добавлена возможность назначения глобально действующих комбинаций клавиш для перемотки воспроизводимого контента вперёд или назад на 5 и 30 секунд. Комбинации назначаются пользователем и поддерживаются в мультимедийных проигрывателях, реализующих протокол удалённого управления MPRIS.
Убран вывод уведомления об ошибке в случае отмены вставки файлов на рабочий стол из буфера обмена.
Повышена производительность выделения элементов на рабочем столе при помощи расширяемой мышью прямоугольной рамки.
При отключении анимации в системных настройках реализовано автоматическое выставление опции
"reduced-motion", информирующей приложения о необходимости минимизировать использование анимации.
Добавлена возможность автоматической настройки яркости экрана на устройствах с датчиком освещённости.
Обходным путём решена проблема с некорректным отображением цветов при запуске Windows-игр с поддержкой HDR в Wine или Proton.
В обработчик сворачивания всех окон добавлено действие Meta+Shift+O для минимизации всех окон, кроме текущего.
Добавлена возможность перемещения окон стилусом графического планшета (смещение стилуса при удержании клавиши Meta).
Сокращено возникновение пропусков кадров (frame drop) на мониторах с очень высокой частотой обновления.
В приложениях, использующих xdg-desktop-portal-kde, добавлена возможность предотвращения завершения сеанса, например, из-за наличия несохранённых документов.
Проект MOS развивает лёгкий модульный Linux-дистрибутив на базе Devuan Linux, нацеленный на управление домашними серверами. Проект изначально разрабатывался "для себя", но впоследствии вышел за рамки системы для личных целей и опубликован в открытом доступе. Текущий выпуск 0.1.9-beta поддерживает только загрузку в режиме UEFI. Подготовлены образы для установки на USB-накопители (354 МБ) и запуска в системах виртуализации (348 МБ).
MOS позиционируется как серверная ОС общего назначения с веб-интерфейсом. Архитектура построена по принципу API-first: веб-интерфейс выступает лишь клиентом к REST API бэкенда, все операции выполняются серверными сервисами. Для доставки уведомлений в реальном времени задействованы WebSocket-ы. Наработки распространяются под лицензией AGPLv3. Проект не собирает телеметрию и не отправляет данных вовне. Минимальные требования для работы в VM: 2 ядра CPU и 6 ГБ ОЗУ.
Из коробки MOS включает поддержку mergerfs для объединения нескольких дисков в единый пул и SnapRAID для защиты данных с помощью контрольных сумм чётности, основанной на применении снапшотов (популярная комбинация для домашних медиасерверов, не требующая классического RAID). Дополнительные драйверы хранилищ, а также драйверы оборудования (GPU, DVB) подключаются через систему плагинов. Каталог плагинов и шаблонов доступен через компонент MOS Hub.
Контейнеризация реализована через Docker и LXC, виртуализация - через QEMU (фронтенд для VM находится в разработке, API уже практически полностью функционален). Сервисы активируются и деактивируются раздельно, что позволяет сохранять минималистичность базовой установки. Для уведомлений разработан отдельный сервис на Go (MOS Notify). Аутентификация - токенная, для эксплуатации вне изолированных сетей рекомендуется TLS и reverse proxy.
Для ядра Linux предложено изменение, оптимизирующее работу нового аллокатора подкачки (swap allocator) при выполнении операций, связанных с переходом в спящий режим c сохранением памяти на диск (hibernate, suspend-to-disk). В процессе работы один из разработчиков заметил, что при переходе в режим гибернации не поддерживается быстрое выделение больших регионов в разделе/файле подкачки. На системах с медленными SSD-накопителями из-за этого возникали проблемы с производительностью операций при использовании 4K-блоков, приводящие к заметному замедлению перехода в режим гибернации.
При тестировании на системе с накопителем Samsung SSD 830 (SATA II, 3.0 Gbps), предложенный патч, включающий всего несколько десятков строк, позволил сократить время перехода в режим гибернации почти в 10 раз - с 324 до 35 секунд. Рассматривается возможность включения патча в находящуюся в разработке ветку ядра 7.0, а также бэкпортирование в 6.18, 6.19 и возможно другие поддерживаемые стабильные ветки. Замедление записи образа памяти в раздел подкачки наблюдается начиная с ядра 6.15 и вызвано регрессивным изменением из-за удаления поддержки slot-кэша.
Компания Google опубликовала релиз web-браузера Chrome 145. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается от Chromium использованием логотипов Google, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого от копирования видеоконтента (DRM), системой автоматической установки обновлений, постоянным включением Sandbox-изоляции, поставкой ключей к Google API и передачей RLZ-параметров при поиске. Для тех, кому необходимо больше времени на обновление, отдельно поддерживается ветка Extended Stable, сопровождаемая 8 недель. Следующий выпуск Chrome 146 запланирован на 10 марта.
Добавлена поддержка формата изображений JPEG XL, для декодирования которого задействована библиотека jxl-rs с реализацией JPEG-XL на языке Rust. Поддержка JPEG XL пока отключена по умолчанию и требует активации параметра "chrome://flags/#enable-jxl-image-format".
Продолжено развитие AI-режима, позволяющего взаимодействовать с AI-агентом из адресной строки или со страницы, показываемой при открытии новой вкладки. AI-режим даёт возможность задавать сложные вопросы на естественном языке и получать ответы на основе агрегирования информации из наиболее релевантных страниц на заданную тему. При необходимости пользователь может уточнять информацию наводящими вопросами. Режим также позволяет задавать вопросы о содержимом страницы прямо из адресной строки. В Chrome 145 AI-режим реализован в версиях для платформ Android и iOS. Для пользователей из Канады, Индии и Новой Зеландии началось включение по умолчанию
чат-бота Gemini (при использовании английского языка).
Добавлен механизм DBSC (Device Bound Session Credentials), позволяющий привязать сеанс аутентификации на сайте к определённому устройству для усложнения совершения с других систем атак с использованием перехваченных сессионных Cookie. Для создания привязанного к устройству сеанса предложен HTTP-заголовок
"Secure-Session-Registration". Метод защиты сводится к предоставлению пары криптографических ключей, привязанных к текущему устройству, генерируемых при подключении и сохраняемых в TPM (Trusted Platform Module). В сеансе используются Cookie с небольшим временем жизни, которые периодически обновляются с использованием закрытого ключа и могут быть проверены открытым ключом.
Убран параметр, позволявший отключить блокировку принудительно установленных браузерных дополнений, в которых выявлены несущественные нарушения правил каталога Chrome Web Store. К несущественным нарушениям причисляется наличие потенциальных уязвимостей, навязывание дополнения без ведома пользователя, манипуляции с метаданными, нарушение правил работы с пользовательскими данными и введение в заблуждение о функциональности.
В версии для платформы Android при активации режима расширенной защиты (AAPM, Android Advanced Protection Mode) отключён Javascript API WebGPU. Сайты, использующие WebGPU для отрисовки 3D-контента (например, Google Maps), могут использовать более медленные альтернативы, такие как WebGL (в тестах на 5.78% медленнее). Для определения отключения WebGPU можно использовать свойство navigator.gpu.
В версии для Android при включении режима расширенной защиты браузера (Enhanced Safe Browsing) реализован локальный анализ внешнего вида страниц на предмет наличия признаков мошенничества. Если локальная проверка выявила подозрения на сомнительный контент, то выполняется дополнительная проверка на серверах Google и в случае подтверждения выводится предупреждение пользователю.
Добавлен API Origin, предоставляющий объект Origin, реализующий концепцию Web Origin и предлагающий методы для сравнения, сериализации и разбора Web Origin. Термин "Web Origin" определён в RFC 6454 для разделения границ изоляции и доверия к контенту. Web Origin охватывает часть URL с названием протокола, именем хоста и номером порта (например, https://opennet.ru). Новый API введён для унификации операций с Web Origin для исключения уязвимостей из-за некорректных сравнений сериализированных ASCII-представлений Web Origin при определении принадлежности ресурсов к одному сайту.
Разделены права доступа к локальной системе при взаимодействии с публичными сайтами. Обращения с сайта к IP-адресам локальной сети (интранет или внутренние адреса) и loopback-интерфейсу (127.0.0.0/8) теперь обрабатываются с использованием разных полномочий (local-network и loopback-network), требующих от пользователя подтверждения операции в специальном диалоге. Под действия защиты попадают попытки загрузки ресурсов, запросы fetch() и iframe-вставки. Обращение к внутренним ресурсам используются злоумышленниками для осуществления CSRF-атак на маршрутизаторы, точки доступа, принтеры, корпоративные web-интерфейсы и другие устройства и сервисы, принимающие запросы только из локальной сети. Кроме того, сканирование внутренних ресурсов может использоваться для косвенной идентификации или сбора сведений о локальной сети.
Убрана настройка UserAgentReduction, позволявшая вернуть передачу неурезанной информации в HTTP-заголовке User-Agent и JavaScript параметрах navigator.userAgent, navigator.appVersion и navigator.platform. Брузер теперь всегда передаёт сокращённый вариант User-Agent без детальной информации о платформе (например, "Android 16; S" вместо "Android 16; SM-A205U").
Во встроенный PDF-просмотрщик добавлена возможность сохранения документа в облачное хранилище Google Drive. В Google Drive документы из Chrome сохраняются в папке "Saved from Chrome".
API LayoutShift, позволяющий отслеживать изменение позиции элементов DOM на экране, переведён на вывод информации в CSS-пикселях вместо экранных пикселей.
CSS-пиксель учитывает DPI экрана и визуально одинаков на любых экранах, в том числе на мониторах с высокой плотностью пикселей. Изменение выполнено для приведения Chrome к поведению других браузеров.
Для API Controlled Frame реализован метод WebRequest.SecurityInfo, позволяющий web-приложению перехватить HTTPS, WSS или WebTransport запрос на сервер, получить слепок сертификата сервера и использовать его для ручной верификации сертификата, использованного при прямом соединении с этим же сервером по TCP/UDP.
Добавлена поддержка CSS-свойств column-wrap и column-height, определённых в спецификации CSS Multi-column Layout 2. Свойство column-wrap позволяет перемещать колонки на новую строку вместо горизонтальной прокрутки, если колонки не умещаются по высоте, заданной через свойство column-height.
Добавлено CSS-свойство text-justify, позволяющее определить тип выравнивания текста при использовании "text-align: justify";
В CSS-свойствах letter-spacing и word-spacing разрешено указание размера отступа в процентах.
В JavaScript-объектах Map и WeakMap реализована спецификация "upsert", упрощающая работу с коллекциями пар ключ/значение. Добавлены методы getOrInsert и getOrInsertComputed, возвращающие уже имеющееся в коллекции значение, ассоциированное с указанными ключом, или создающие новую запись, если ключа не нашлось.
Реализация API IndexedDB переписана с использованием СУБД SQLite в качестве бэкенда (прошлая реализация основывалась на LevelDB в отдельных файлах). Новый вариант пока используется только в контекстах, размещаемых в оперативной памяти, например, применяется в режиме инкогнито.
Внесены улучшения в инструменты для web-разработчиков.
В интерфейсе инспектирования сети в панели "Request conditions" включена по умолчанию возможность ограничивать скорость отдельных сетевых запросов.
Кроме нововведений и исправления ошибок в новой версии устранено 11 уязвимостей. Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Критических проблем, которые позволяют обойти все уровни защиты браузера и выполнить код в системе за пределами sandbox-окружения, не выявлено. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google учредила 11 премий и выплатила 18.5 тысяч долларов США (по одной премии в $8000, $5000, $2000 и $500, три премии по $1000). Размер 4 вознаграждений пока не определён.
Дэйв Эйрли (David Airlie), мэйнтейнер стека графических драйверов в ядре Linux, объявил о внедрении вспомогательной автоматизированной системы рецензирования патчей, для проверки изменений в которой применяется AI-платформа Сlaude Opus 4.6. Система внедрена в качестве эксперимента для оценки возможности применения AI для оптимизации рабочих процессов сотрудников компании Red Hat.
AI-рецензирование охватывает изменения, присылаемые для включения в подсистему DRM (Direct Rendering Manager). Публикация результатов организована с использованием применяемых при разработке ядра Linux почтовых рассылок. Для того, чтобы не захламлять основной список рассылки, в котором ведётся разработка подсистемы DRM, для AI-отчётов создан отдельный список рассылки drm-ai-reviews.
Предполагается, что авторы патчей могут использовать AI-рецензии в качестве начальной обратной связи. При этом разбор подобных рецензий не навязывается и авторы вольны принимать во внимание AI-рецензии на своё усмотрение. При этом если AI-рецензии будут выявлять регрессии, проигнорированные авторами патчей, возможно в будущем разбор AI-рецензий будет предписываться более настойчиво.
Изначально для организации рецензирования в Сlaude Дэйв попытался использовать предложенный Крисом Мейсоном (Chris Mason) набор подсказок, уточняющих особенности работы подсистем и протоколов, и позволяющих AI-ассистенту лучше понимать контекст при рецензировании. Набор Криса предназначался для выявление регрессий и анализа патчей при их последовательном применении к актуальному дереву кода ядра и финальным тестированием регрессий в последнем патче.
В конечном счёте Дэйву пришлось доработать и расширить промпты Криса, так как требовалось чтобы AI рецензировал серию патчей как одно целое с последующим проведением глубокого анализа каждого патча по отдельности. Помимо актуального дерева кода ядра проверка была распространена на ветку drm-next. Дэйв также подготовил инструментарий для интеграции с AI-сервисом Сlaude и организации почтовой рассылки.