LINUX.ORG.RU

Сообщения dataman

 

GTK2-NG: форк библиотеки GTK2

 , ,

Группа Open Source

Один из разработчиков дистрибутива Devuan представил проект GTK2-NG, который будет развивать форк библиотеки GTK2, нацеленный на продолжение её сопровождения и обеспечение качественной работы в современных дистрибутивах. Поддержание форка позволит продолжить поставку в Devuan приложений, завязанных на GTK2, после прекращения поддержки GTK2 в дистрибутиве Debian 14, релиз которого ожидается летом 2027 года.

Разработчики проекта GTK прекратили сопровождение GTK2 более пяти лет назад, а пакеты с GTK2 уже исключены из официальных репозиториев дистрибутивов Red Hat Enterprise Linux, SUSE Linux Enterprise Server, openSUSE и Arch Linux (доступен через AUR). Из значимых проектов GTK2 продолжает использовать звуковой редактор Ardour, но данный проект не зависит от внешних библиотек и поддерживает собственный форк GTK2 - YTK (opennet.ru). В репозитории Debian остаётся около 150 пакетов, связанных зависимостями с GTK2, среди которых afterstep, Double Commander, fpc, gkrellm, gmpc, hexchat, lazarus, mplayer, navit, pidgin, sane-frontends, scim, sylpheed, tickr, tilem, uim, usermode, xsane, xzgv и z88.

В GTK2-NG добавлено несколько десятков изменений, в основном связанных с переносом исправлений, распространявшихся в форме патчей в пакетах из AUR и Debian, и исправлением предупреждений, выдаваемых компилятором. Из улучшений отмечается модернизация функции сортировки массивов g_sort_array и замена алгоритма масштабирования для повышения чёткости пиктограмм. В виджете выбора файлов (filechooser) решены имевшиеся проблемы и проведена оптимизация отображения в виде иконок содержимого каталогов с большим числом файлов. Протестирована сборка с использованием GCC 14 и Clang 21.

Из планов на будущее отмечается перенос изменений из форка GTK2, развиваемого участником проекта Xlibre - stefan11111, а также бэкпортирование кода из YTK (github.com), форка GTK2 от проекта Ardour. Среди задач также называется проверка сборки в GCC 15 и добавление поддержки использования libppd для вывода на печать на системах с CUPS 3.x. Не исключается задействование лицензии GPLv3 для нового кода и смена названия для исключения претензий от проекта GNOME.

>>> Источник: OpenNET (opennet.ru)

dataman
()

В LLVM 23 удалены опции оптимизации Os и Oz

 , , ,

https://github.com/llvm/llvm-project/pull/191363:

These should use O2 with the optsize or minsize attributes instead.

This enforces that there is no divergence between pipeline-level Os/Oz and function-level Os/Oz at an architectural level.

For the purpose of testing IR that does not have optsize/minsize itself, it’s possible to use -force-attribute=optsize etc.

И $ clang-23 --help | ugrep -i ofast:

1675: -Ofast Deprecated; use ‘-O3 -ffast-math’ for the same behavior, or ‘-O3’ to enable only conforming optimizations

dataman
()

7-Zip 26.01

 , , , ,

Группа Open Source

Состоялся выпуск 26.01 библиотеки и консольной утилиты 7-Zip, предназначенных для работы с архивами в формате 7z, XZ, BZIP2, GZIP, TAR, ZIP, WIM и многих других.

Проект написан на языках C и C++ и распространяется по лицензии GNU LGPL.

( читать дальше... )

>>> Подробности на GitHub (github.com)

dataman
()

В Ubuntu намечена интеграция AI

 , , ,

https://www.opennet.ru/opennews/art.shtml?num=65306:

Джон Сигер (Jon Seager), вице-президент компании Canonical по инжинирингу и технический лидер проекта Ubuntu, обобщил планы по интеграции в дистрибутив функциональности на основе больших языковых моделей. На первом этапе разработчики Ubuntu намерены задействовать AI-модели для улучшения существующей функциональности дистрибутива, после чего добавить в дистрибутив отдельные AI-возможности и рабочие процессы для пользователей, заинтересованных в использовании AI. AI-возможности будут интегрироваться в дистрибутив постепенно в течение 2027 года, без принуждения и по мере доведения их до готовности.

При выборе AI-инструментов предпочтения будут отдаваться открытым моделям, распространяемым под лицензиями, отвечающими духу дистрибутива, а также AI-платформам на базе открытого кода. По умолчанию AI-модели будут выполняться локально. Интеграция с внешними облачными AI-системами будет в форме опции, подконтрольной пользователю.

Подчёркивается, что цель инициативы не в превращении Ubuntu в AI-продукт и не в продвижении AI ради AI, а в выборочной интеграции в дистрибутив AI-возможностей там, где это будет действительно полезным для пользователей. Для тех, кто не желает использовать AI будет предоставлена возможность отключения AI-возможностей. В качестве примеров применения AI упоминается обработка голосовых команд, диагностика сетевых и системных проблем, настройка сервисов, анализ логов, выполнение рутинных задач и проведение аудита серверов.

Добавляемая в дистрибутив AI-функциональность разделена на неявное и явное использование AI. В первом случае AI-модели расширяют имеющиеся функции без изменения способа взаимодействия с пользователем, например, применяются для распознавания и синтеза речи. Во втором случае, AI-модели предлагаются как самостоятельные решения, например, как AI-агенты для автоматизации работы, AI-ассистенты для обучения, генерации и анализа контента.

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

Внутри компании Canonical решено не отталкиваться изначально от определённого AI-стека, а в течение следующих 6 месяцев предоставить командам возможность углубиться в тему, попробовать разные AI-стеки, выбрать оптимальные для их задач AI-решения, понять сильные стороны AI-инструментов и их ограничения. Сотрудники компании по-прежнему будут оцениваться по тому, как хорошо они выполняют свои задачи, а не по тому, используют ли они AI.
dataman
()

MD4C 0.5.3

 , , md4c, ,

Группа Open Source

20-го апреля, после более чем двухлетней паузы, состоялся выпуск 0.5.3 быстрой библиотеки MD4C («Markdown for C»), предназначенной для парсинга данных в формате Markdown и конвертирования их в формат HTML. Поддерживаются спецификации Markdown CommonMark 0.31 и GitHub Flavored Markdown (GFM).

В комплект поставки также входит консольная утилита md2html.

( читать дальше... )

>>> Почему MD4C такой быстрый?

>>> Подробности на GitHub (github.com)

dataman
()

Dillo 3.3.0

 , , ,

Группа Интернет

После более года разработки состоялся выпуск 3.3.0 минималистичного кроссплатформенного браузера Dillo.

Особенности проекта:

  • написан на языках C и C++ с минимальным количеством зависимостей;
  • использует собственный движок рендеринга в реальном времени;
  • низкое потребление памяти и быстрый рендеринг даже при работе с большими страницами;
  • использует быструю и лёгкую библиотеку графического интерфейса FLTK;
  • поддерживает HTTP, HTTPS, FTP и локальные файлы;
  • возможность расширения с помощью плагинов, написанных на любом языке;
  • распространяется по лицензии GNU GPL 3.

( читать дальше... )

>>> Репозитории Git

>>> Баг-трекер

>>> Документация

>>> Подробности на dillo-browser.org (dillo-browser.org)

dataman
()

jemalloc 5.3.1

 , , аллокатор,

Группа Разработка

После почти четырёхлетней паузы (см. «jemalloc всё») состоялся выпуск 5.3.1 аллокатора jemalloc – реализации malloc(3), в которой особое внимание уделяется предотвращению фрагментации и поддержке масштабируемой параллельности.

Новый выпуск включает в себя более 390 коммитов с исправлением ошибок, новыми функциями, оптимизацией производительности и улучшением переносимости.

Проект написан на языке С и распространяется по лицензии BSD.

( читать дальше... )

>>> Подробности на GitHub (github.com)

dataman
()

htop 3.5.0

 , , , ,

Группа Open Source

9-го апреля, после года разработки, состоялся выпуск 3.5.0 интерактивной кроссплатформенной консольной утилиты htop, предназначенной для просмотра списка и информации о запущенных процессах и управления ими.

( читать дальше... )

>>> Подробности на GitHub (github.com)

dataman
()

Linux 7.0

 ,

Linux 7.0
Группа Ядро Linux

После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 7.0. Среди наиболее заметных изменений: правила применения AI-ассистентов, перевод Rust в основные возможности ядра, повышение производительности подкачки, включение по умолчанию режима PREEMPT_LAZY, поддержка фильтров для операций io_uring, новая ФС Nullfs, инфраструктура fserror, средства мониторинга XFS, поддержка ремапинга в Btrfs, включение по умолчанию версии NFS 4.1, интеграция пост-квантового криптоалгоритма ML-DSA, активация AccECN в сетевой подсистеме, начальная поддержка WiFi 8.

Номер 7.0 присвоен, так как в ветке 6.x накопилось достаточного выпусков для смены первого числа в номере версии (в своё время выпуск 6.0 был сформирован следом за 5.19). Смена нумерации осуществляется из эстетических соображений и является формальным шагом, снимающим дискомфорт из-за накопления большого числа выпусков в серии.

В новую версию принято 15624 исправления от 2477 разработчиков, размер патча – 56 МБ (изменения затронули 18053 файла, добавлено 704060 строк кода, удалено 278132 строки). В прошлом выпуске было 15657 исправлений от 2237 разработчиков, размер патча – 52 МБ. Около 51% всех представленных в 7.0 изменений связаны с драйверами устройств, примерно 11% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 14% связано с сетевым стеком, 5% – с файловыми системами и 3% c внутренними подсистемами ядра.

( читать дальше... )

>>> Источник: OpenNET (opennet.ru)

dataman
()

SQLite 3.53.0

 , ,

Группа Open Source

9-го апреля состоялся выпуск 3.53.0 компактной кроссплатформенной встраиваемой СУБД SQLite. Код проекта написан на языке C и распространяется как общественное достояние (public domain).

( читать дальше... )

>>> Подробности на sqlite.org (sqlite.org)

dataman
()

libunicode 0.9.0

 , , ,

libunicode 0.9.0
Группа Разработка

Состоялся выпуск 0.9.0 библиотеки для языка C++ (стандарт C++20) libunicode. Проект разрабатывается командой разработчиков эмулятора терминала Contour и оболочки Endo (в активной разработке), и распространяется по лицензии Apache 2.0.

( читать дальше... )

>>> Подробности на GitHub (github.com)

dataman
()

Endo 0.1.0

 , endo, , ,

Группа Open Source

Состоялся первый публичный выпуск 0.1.0 кроссплатформенной интерактивной командной оболочки и интерпретатора функционального языка в стиле F# Endo.

Проект создан автором и основным разработчиком эмулятора терминала Contour на языке C++ (стандарт C++23) и распространяется по лицензии Apache 2.0.

( читать дальше... )

>>> Подробности на GitHub (github.com)

dataman
()

Какую разметку текста LOR вы используете чаще?

 , , ,

Проверить (и при необходимости изменить) используемую разметку можно в своём профиле, нажав кнопку «Настройки» и найдя пункт «Разметка текста».

>>> Результаты

dataman
()

FARS 1.0.0 Beta

 , , , sui,

Группа Open Source

После более года разработки, 32-го марта, состоялся выпуск 1.0.0 Beta кроссплатформенного, многопоточного, SIMD-оптимизированного менеджера файлов FARS.

Особенности:

  • Для работы требуется любой эмулятор терминала с поддержкой форматов Sixel, Kitty Graphics Protocol или iTerm2.
  • Желательно, чтобы ЭТ поддерживал Kitty Keyboard Protocol, тогда станет доступно большее количество сочетаний клавиш.
  • Парсинг ESC-последовательностей ЭТ осуществляется библиотекой Lug 0.5.0.
  • Для пользовательского интерфейса используется мой значительно переписанный форк FTXUI 6.0.0 и 6.0.1) с бэкендом constixel.hpp для отрисовки в ЭТ.
  • Так как интерфейс уже не текстовый, я назвал эту концепцию SUI – Sixel User Interface (хотя constixel.hpp поддерживает все три формата).
  • Для быстрой работы с ФС используется библиотека llfio, вызывающая syscall напрямую.
  • Встроенный редактор на основе Lexilla и Scintilla (на базе редактора turbo).
  • Конфигурация хранится в формате TOML, так что Glaze 7.2.0 подошла идеально.

Код проекта написан на C++ (стандарт C++23) и распространяется по лицензии WTFPL.

Просьба сообщать обо всех найденных ошибках!

>>> Подробности (linux.org.ru)

dataman
()

Утверждён стандарт C++26

 ,

Группа Разработка

Комитет ISO по стандартизации языка C++ утвердил финальный вариант спецификации, образующей международный стандарт «C++26». Представленные в спецификации возможности частично уже поддерживаются в компиляторах GCC (gnu.org), Clang и Microsoft Visual C++. Поддерживающие C++26 стандартные библиотеки реализованы в рамках проекта Boost.

В следующие два месяца утверждённая спецификация будет находиться на стадии подготовки документа к публикации, на которой будет проведена работа по редакторской правке орфографических ошибок и опечаток. В начале ноября результирующий вариант документа будет направлен в ISO для публикации под формальным именем ISO/IEC 14882:2026.

( читать дальше... )

>>> Источник: OpenNET (opennet.ru)

dataman
()

mcedit + tree-sitter

 , , , ,

Jiri Tyr сделал PR#5067 в Midnight Commander, добавляющий возможность интеграции библиотеки и парсеров tree-sitter в mcedit. Парсеры могут быть прилинкованы как статически, так и динамически (по умолчанию).

Прилагаемый скрипт по умолчанию загружает с репозиториев 63 парсера (без клонирования), но возможна их выборочная интеграция.

Выглядит перспективно для будущего улучшения, если автор на этом не остановится.

( читать дальше... )

dataman
()

cpp-peglib 1.10.0 и 1.10.1

 , cpp-peglib, , ,

Группа Разработка

12-го и 14-го марта, после длительного затишья, состоялись выпуски 1.10.0 и 1.10.1 библиотеки cpp-peglib, реализующей PEG (грамматику, разбирающую выражение).

Библиотека поддерживает синтаксис, подробно описанный Брайаном Фордом на странице 2 документа «Parsing Expression Grammars: A Recognition-Based Syntactic Foundation», со многими дополнительными улучшениями.

В отличие от таких проектов, как PEGTL, Lexy и многих других, cpp-peglib позволяет задать выражение PEG и во время выполнения.

( читать дальше... )

>>> Попробовать онлайн (пример грамматики JSON на скриншоте)

>>> Подробности на GitHub (github.com)

dataman
()

Раскрашивают strace...

 

Это ответ «colored output #377» на «Support for output coloring #39» (19-02-2018 г.).

dataman
()

ZXC 0.9.0

 , , , ,

Группа Open Source

Состоялся выпуск 0.9.0 библиотеки и кроссплатформенной консольной утилиты ZXC (github.com), реализующих высокопроизводительное многопоточное асимметричное сжатие без потерь и оптимизированное для игровых ресурсов, прошивок и пакетов приложений. Формат разработан по принципу «один раз записать, многократно читать» (WORM).

В отличие от таких кодеков, как LZ4, ZXC жертвует скоростью сжатия ради максимальной пропускной способности при распаковке.

Декларируется скорость распаковки на 40%+ выше, чем у LZ4 на Apple Silicon, на 25%+ выше на Google Axion (ARM64) и на 5%+ выше на x86_64, при этом во всех случаях обеспечивается более высокий коэффициент сжатия.

В этом выпуске представлен API многократно используемого контекста, возможность настройки размера блоков, полное справочное руководство по API и ABI, а также несколько исправлений, связанных с безопасностью, в том числе устранение уязвимости переполнения буфера в куче, обнаруженной в ходе фаззинга модуля сжатия.

Данный релиз содержит изменения, нарушающие ABI, поэтому SOVERSION увеличена до 2.

( читать дальше... )

>>> Подробности на GitHub (github.com)

dataman
()

lexbor 2.7.0

 , , , ,

Группа Разработка

13 марта, после четырёх месяцев разработки, состоялся выпуск 2.7.0 высокопроизводительной библиотеки lexbor, предназначенной для обработки форматов HTML 5 и CSS.

Основные особенности проекта:

  • полная поддержка спецификаций WHATWG, W3C и Unicode: HTML5, CSS Syntax 3, Encoding, URL​, Unicode Standard Annex #15, Unicode Technical Standard #46, Punycode, Unicode Standard Annex #15, Unicode Technical Standard #46;
  • манипулирование элементами и атрибутами DOM: добавление, изменение, удаление и прочее;
  • поддержка разбора фрагментов HTML;
  • прохождение всех тестов построения деревьев DOM;
  • протестирована на более чем 200 миллионах HTML-страниц с помощью ASAN;
  • поддержка определения кодировки по потоку байтов;
  • анализ стилей CSS в атрибутах тегов и в теге <style>;
  • поиск HTML-элементов с помощью CSS-селекторов;
  • поддержка 40 кодировок при кодировании и декодировании;
  • поддержка небуферизованного и буферизованного кодирования и декодирования;
  • написан на языке C (стандарт C99) без сторонних зависимостей и распространяется по лицензии Apache 2.0;
  • библиотека разделена на модули (Core, CSS, DOM, Encoding, Engine, HTML, NS, Punycode, Selectors, Tag, Unicode, URL, Utils), которые могут быть скомпилированы и использованы как раздельные библиотеки (с опцией CMake LEXBOR_BUILD_SEPARATELY=ON);
  • сторонние биндинги и врапперы для языков Crystal, ​​D​​, Elixir, Julia, PHP​, Python и Ruby.

( читать дальше... )

>>> Сайт проекта

>>> Исходный код

>>> Документация

>>> Сделанные и запланированные возможности

>>> Подробности о версии 2.7.0 на GitHub (github.com)

dataman
()

RSS подписка на новые темы