Policy review: major upstream version available: libyang 3.13.5 → 5.4.9 #1

Open
opened 2026-04-28 01:32:35 +03:00 by sbelikov · 0 comments
Owner

Upstream update available: libyang 3.13.55.4.9

Package

  • Package: libyang
  • RPM name: libyang
  • Branch: niceos-5.2
  • Current EVR: 3.13.5-1
  • Update class: major
  • Compare method: python_rpm
  • Update policy: library
  • Risk tags: github-upstream

Upstream

Signals

  • Security-relevant keywords detected: False
  • Policy blocked: True
  • Policy reason: package appears to be a library/API dependency
  • Labels: ai-summary, bot, needs-policy-decision, policy/major-blocked, priority/high, update/major, upstream-update, upstream/github

NiceOS policy decision

This is a policy-blocked major update. Do not update automatically.

Major updates for libraries, toolchain and security-critical packages require explicit manual architecture review, ABI/API compatibility review, reverse-dependency impact analysis and controlled rebuild planning.

NiceSOFT AI preliminary analysis

1. Краткий вывод

Обновление пакета libyang с версии 3.13.5 до 5.4.9 является мажорным (major), так как вводится новая версия совместимости сокетов (SO version 5). Это обновление затрагивает API библиотеки, удаляет функции bin и рефакторит принтер деревьев, что требует обязательной проверки совместимости со всеми зависимыми приложениями в дистрибутиве.

2. Риск для НАЙС.ОС

high. Обновление классифицировано как major с изменением ABI (новая SO version 5, удаление функций). Поскольку пакет помечен как policy_blocked из-за статуса библиотеки/API-зависимости, автоматическое применение невозможно без ручного анализа всех потребителей этой библиотеки в системе.

3. Security/CVE

Во входных данных отсутствуют явные указания на уязвимости безопасности или CVE. Скрипт обнаружения ключевых слов безопасности (security_keywords_detected_by_script) вернул False. В тексте релизов упоминаются улучшения парсинга anydata и поддержка OpenConfig, но конкретных отладок уязвимостей не зафиксировано.

4. ABI/API риск

Высокий риск нарушения бинарной совместимости. Ввод новой SO version 5 и удаление функций bin гарантированно ломают приложения, связывающиеся с этой библиотекой динамически или жестко компилирующиеся под старую версию. Требуется полный аудит всех пакетов, зависящих от libyang, чтобы проверить наличие патчей миграции или необходимость обновления их версий.

5. Риск для RPM-сборки

Вероятны проблемы с %check тестами, если они используют удаленные функции или старые сигнатуры API. Возможны ошибки линковки (BuildRequires) или сборки, если зависимости проекта CESNET/libyang изменились между версиями 3.x и 5.x. Патчи, применяемые к исходному коду, могут перестать работать из-за глубоких изменений структуры кода (рефакторинг tree printer, изменения anydata).

6. Проверки мейнтейнера

  • Провести поиск всех пакетов в репозитории НАЙС.ОС, зависящих от libyang (через rpm -q --whatrequires libyang).
  • Для каждого зависимого пакета проверить наличие обновлений upstream, поддерживающих SO version 5.
  • Проверить наличие в исходном коде зависимых пакетов вызовов удаленных функций (например, связанных с bin).
  • Выполнить сборку обновленного libyang в изолированной среде и запустить %check секцию.
  • Протестировать функциональность критических системных компонентов (Netopeer, конфигурационные менеджеры), использующих эту библиотеку.

7. Рекомендация

blocked manual review

8. Основание рекомендации

Обновление заблокировано политикой (policy_blocked: True) из-за статуса библиотеки и представляет собой мажорное изменение API (ABI break). Без ручного аудита всех зависимых пакетов и подтверждения их готовности к работе с новой версией библиотеки, установка обновления приведет к неработоспособности связанных сервисов.

Upstream release notes / description

Main changes of this release are:

  • new SO version 5
  • bin value functions removed
    • LYB uses complex encoding
  • tree printer refactored
  • schema mount improvements
  • anydata changes
    • xpath support
    • native tree traversal support
  • extension support significantly improved
  • OpenConfig extensions support
  • LYB format improvements
  • strict anydata parsing (@ahassany)
  • lots of other bugfixes and minor improvements

NiceOS maintainer checklist

  • Confirm that the detected version is a stable upstream release.
  • Check upstream changelog for security fixes, ABI/API changes and build-system changes.
  • Check ABI/API compatibility and reverse dependencies.
  • Download source into NiceOS lookaside storage.
  • Update Version and related fields in SPECS/*.spec only if policy allows it.
  • Regenerate SOURCES/sources.lock.json, manifests, metadata and SBOM.
  • Build SRPM/RPM in a clean NiceOS buildroot.
  • Run package smoke tests.
  • Link PR/build logs and close this issue after update or triage.

Bot metadata

  • Tool: niceos_upstream_monitor.py 1.4
  • Generated at: 2026-04-28T23:33:55Z
<!-- niceos-upstream-monitor:fingerprint=upstream-update:libyang:5.4.9 --> <!-- niceos-upstream-monitor:package=libyang --> <!-- niceos-upstream-monitor:current=3.13.5 --> <!-- niceos-upstream-monitor:latest=5.4.9 --> # Upstream update available: `libyang` `3.13.5` → `5.4.9` ## Package - Package: `libyang` - RPM name: `libyang` - Branch: `niceos-5.2` - Current EVR: `3.13.5-1` - Update class: `major` - Compare method: `python_rpm` - Update policy: `library` - Risk tags: `github-upstream` ## Upstream - Upstream type: `github` - Upstream project: `CESNET/libyang` - Upstream URL: https://github.com/CESNET/libyang - Detected version: `5.4.9` - Tag/release: `v5.4.9` - Source: `github_release_latest` - Published: `2026-04-01T06:30:58Z` - Release URL: https://github.com/CESNET/libyang/releases/tag/v5.4.9 - Source URL: https://api.github.com/repos/CESNET/libyang/tarball/v5.4.9 - Pre-release: `False` ## Signals - Security-relevant keywords detected: `False` - Policy blocked: `True` - Policy reason: `package appears to be a library/API dependency` - Labels: `ai-summary, bot, needs-policy-decision, policy/major-blocked, priority/high, update/major, upstream-update, upstream/github` ## NiceOS policy decision **This is a policy-blocked major update. Do not update automatically.** Major updates for libraries, toolchain and security-critical packages require explicit manual architecture review, ABI/API compatibility review, reverse-dependency impact analysis and controlled rebuild planning. ## NiceSOFT AI preliminary analysis ### 1. Краткий вывод Обновление пакета `libyang` с версии 3.13.5 до 5.4.9 является мажорным (major), так как вводится новая версия совместимости сокетов (SO version 5). Это обновление затрагивает API библиотеки, удаляет функции `bin` и рефакторит принтер деревьев, что требует обязательной проверки совместимости со всеми зависимыми приложениями в дистрибутиве. ### 2. Риск для НАЙС.ОС **high**. Обновление классифицировано как `major` с изменением ABI (новая SO version 5, удаление функций). Поскольку пакет помечен как `policy_blocked` из-за статуса библиотеки/API-зависимости, автоматическое применение невозможно без ручного анализа всех потребителей этой библиотеки в системе. ### 3. Security/CVE Во входных данных отсутствуют явные указания на уязвимости безопасности или CVE. Скрипт обнаружения ключевых слов безопасности (`security_keywords_detected_by_script`) вернул `False`. В тексте релизов упоминаются улучшения парсинга `anydata` и поддержка OpenConfig, но конкретных отладок уязвимостей не зафиксировано. ### 4. ABI/API риск Высокий риск нарушения бинарной совместимости. Ввод новой SO version 5 и удаление функций `bin` гарантированно ломают приложения, связывающиеся с этой библиотекой динамически или жестко компилирующиеся под старую версию. Требуется полный аудит всех пакетов, зависящих от `libyang`, чтобы проверить наличие патчей миграции или необходимость обновления их версий. ### 5. Риск для RPM-сборки Вероятны проблемы с `%check` тестами, если они используют удаленные функции или старые сигнатуры API. Возможны ошибки линковки (`BuildRequires`) или сборки, если зависимости проекта `CESNET/libyang` изменились между версиями 3.x и 5.x. Патчи, применяемые к исходному коду, могут перестать работать из-за глубоких изменений структуры кода (рефакторинг `tree` printer, изменения `anydata`). ### 6. Проверки мейнтейнера - [ ] Провести поиск всех пакетов в репозитории НАЙС.ОС, зависящих от `libyang` (через `rpm -q --whatrequires libyang`). - [ ] Для каждого зависимого пакета проверить наличие обновлений upstream, поддерживающих SO version 5. - [ ] Проверить наличие в исходном коде зависимых пакетов вызовов удаленных функций (например, связанных с `bin`). - [ ] Выполнить сборку обновленного `libyang` в изолированной среде и запустить `%check` секцию. - [ ] Протестировать функциональность критических системных компонентов (Netopeer, конфигурационные менеджеры), использующих эту библиотеку. ### 7. Рекомендация blocked manual review ### 8. Основание рекомендации Обновление заблокировано политикой (`policy_blocked: True`) из-за статуса библиотеки и представляет собой мажорное изменение API (ABI break). Без ручного аудита всех зависимых пакетов и подтверждения их готовности к работе с новой версией библиотеки, установка обновления приведет к неработоспособности связанных сервисов. ## Upstream release notes / description Main changes of this release are: - **new SO version 5** - all the important changes mentioned in the [transition manual](https://netopeer.liberouter.org/doc/libyang/master/html/transition4_5.html) - `bin` value functions removed - LYB uses complex encoding - `tree` printer refactored - schema mount improvements - `anydata` changes - xpath support - native tree traversal support - extension support significantly improved - OpenConfig extensions support - LYB format improvements - strict `anydata` parsing (@ahassany) - lots of other bugfixes and minor improvements ## NiceOS maintainer checklist - [ ] Confirm that the detected version is a stable upstream release. - [ ] Check upstream changelog for security fixes, ABI/API changes and build-system changes. - [ ] Check ABI/API compatibility and reverse dependencies. - [ ] Download source into NiceOS lookaside storage. - [ ] Update `Version` and related fields in `SPECS/*.spec` only if policy allows it. - [ ] Regenerate `SOURCES/sources.lock.json`, manifests, metadata and SBOM. - [ ] Build SRPM/RPM in a clean NiceOS buildroot. - [ ] Run package smoke tests. - [ ] Link PR/build logs and close this issue after update or triage. ## Bot metadata - Tool: `niceos_upstream_monitor.py 1.4` - Generated at: `2026-04-28T23:33:55Z`
Sign in to join this conversation.
No description provided.