Upstream update available: libsolv 0.7.35 → 0.7.37 #2

Closed
opened 2026-05-09 19:18:08 +03:00 by sbelikov · 1 comment
Owner

Upstream update available: libsolv 0.7.350.7.37

Package

  • Package: libsolv
  • RPM name: libsolv
  • Branch: niceos-5.2
  • Current EVR: 0.7.35-1
  • Update class: patch
  • Compare method: python_rpm
  • Update policy: leaf
  • Risk tags: github-upstream

Upstream

Signals

  • Security-relevant keywords detected: False
  • Policy blocked: False
  • Policy reason: -
  • Labels: ai-summary, bot, needs-build, needs-triage, priority/medium, update/patch, upstream-update, upstream/github

NiceSOFT AI preliminary stability analysis

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

Upstream-обновление libsolv с 0.7.35 до 0.7.37 выглядит как patch-level change с bugfix- и performance-изменениями, без явных признаков ABI/API-ломки по найденным источникам. Для НАЙС.ОС это manual review: обновление в целом похоже на допустимый candidate для leaf-пакета, но compare-диапазон не тривиален, поэтому нужен быстрый diff-check перед merge.

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

Риск: medium.
Обоснование: версия меняется на patch-level, upstream-заметки содержат только исправления и одно улучшение производительности, что хорошо для стабильного enterprise-дистрибутива. При этом libsolv — инфраструктурно важная библиотека для parsing/solver pipeline, а GitHub compare показывает 48 commits / 39 files changed, поэтому полностью низким риск назвать нельзя. Для политики RHEL-like стабильной ветки это скорее приемлемый апдейт, но не blind auto-merge.

3. Что изменилось upstream

Подтверждённые изменения в 0.7.37 по upstream changelog:

  • fix parsing of SHA-512 checksums in Debian repositories
  • improve speed of dirpool_add_dir, making filelists.xml parsing about twice as fast
  • fix parsing of recommends in the old Mandriva synthesis format
  • bump version to 0.7.37

Также в ближайшем предыдущем релизе 0.7.36 upstream зафиксированы:

  • respect default in comps environment option lists
  • support SUSE namespace deps in boolean dependencies
  • support Elbrus2000 (e2k)
  • support language() SUSE namespace rewriting
  • bump version to 0.7.36

Release tag 0.7.37 существует в официальном репозитории openSUSE/libsolv.

4. Security/CVE

Подтверждённых CVE не найдено.
В найденных upstream release notes и changelog для 0.7.37 нет ссылок на CVE или explicit security fix. Оснований считать обновление security-driven нет.

5. ABI/API/CLI/config риск

По найденным источникам:

  • явных сообщений об ABI break, removed APIs или изменениях SONAME нет;
  • не найдено упоминаний о новых CLI-опциях или изменениях конфигов;
  • release notes описывают bugfix/performance changes, а не изменение default behavior.

Оценка риска интерфейсов: low / unknown.
Low — потому что нет признаков ломки; unknown — потому что полной верификации ABI/API по одному changelog недостаточно, особенно для compare-диапазона в 48 commits.

6. Риск для RPM-сборки и dist-git

Что следует проверить перед PR/merge:

  • SPECS/:
    • совпадает ли Version/Release с 0.7.37
    • не нужны ли новые Patch или удаление устаревших
    • не изменились ли BuildRequires / Requires
  • SOURCES/:
    • обновление source tarball на 0.7.37
    • актуален ли sources.lock.json
  • SBOM/:
    • нужно ли регенерировать SBOM после смены upstream source
  • %check:
    • не сломались ли тесты на новых данных/поведении parser’а
  • metadata/change-report:
    • не требует ли новый upstream source ручной правки dist-git metadata
  • dependency metadata:
    • нет ли необходимости в пересчёте autogenerated provides/requires

На текущий момент evidence по upstream не показывает CMake/SONAME/dependency changes, но локальный spec diff в НАЙС.ОС остаётся unknown до реального rebasing.

7. Риск для системы и зависимых компонентов

libsolv влияет на:

  • repository parsing
  • dependency metadata ingestion
  • solver input preparation

Следовательно, даже patch-релиз может затронуть:

  • поведение package manager stack
  • обработку репозиторных метаданных
  • reverse dependencies, которые используют libsolv runtime behavior

Из changelog видно, что изменения касаются correctness/performance в parsing path, поэтому ожидаемый эффект — улучшение обработки metadata, а не изменение installed-system behavior. Тем не менее для enterprise-среды нужен ручной контроль, так как регрессия в solver/parser может иметь широкий blast radius.

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

Checklist перед merge:

  1. Сверить upstream tag 0.7.37 и убедиться, что source соответствует релизу.
  2. Проверить diff 0.7.35 -> 0.7.37 на предмет:
    • ABI/API/SONAME изменений
    • удаления символов
    • изменений default behavior
  3. Просмотреть SPECS/libsolv.spec:
    • Version, Release, Source0
    • BuildRequires, Requires
    • наличие/актуальность %check
  4. Пересобрать и проверить:
    • успешный build
    • автотесты
    • генерацию provides/requires
  5. Сверить SOURCES/sources.lock.json и SBOM.
  6. Проверить, не нужно ли адаптировать downstream patch set.
  7. Быстро прогнать smoke-тесты на:
    • repo metadata parsing
    • package manager operations, зависящие от libsolv
  8. Если есть staging/QA — загрузить пакет туда и проверить базовые сценарии.

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

manual review

10. Источники

  1. github.com — libsolv.changes
  2. github.com — libsolv
  3. github.com — opensuse
  4. github.com — 1486
  5. github.com — releases
  6. github.com — snapper
  7. github.com — openssl
  8. github.com — 13180
  9. github.com — repology
  10. github.com — mamba
  11. github.com — uldaq
  12. github.com — libuv

Upstream release notes / description

No release notes were available from the upstream API.

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 2.1.2-openai-deep
  • Generated at: 2026-05-09T16:18:03Z
<!-- niceos-upstream-monitor:fingerprint=upstream-update:libsolv:0.7.37 --> <!-- niceos-upstream-monitor:package=libsolv --> <!-- niceos-upstream-monitor:current=0.7.35 --> <!-- niceos-upstream-monitor:latest=0.7.37 --> # Upstream update available: `libsolv` `0.7.35` → `0.7.37` ## Package - Package: `libsolv` - RPM name: `libsolv` - Branch: `niceos-5.2` - Current EVR: `0.7.35-1` - Update class: `patch` - Compare method: `python_rpm` - Update policy: `leaf` - Risk tags: `github-upstream` ## Upstream - Upstream type: `github` - Upstream project: `openSUSE/libsolv` - Upstream URL: <a href="https://github.com/openSUSE/libsolv" target="_blank" rel="noopener noreferrer">github.com — libsolv</a> - Detected version: `0.7.37` - Tag/release: `0.7.37` - Source: `github_tag` - Published: `-` - Release URL: <a href="https://github.com/openSUSE/libsolv/releases/tag/0.7.37" target="_blank" rel="noopener noreferrer">github.com — 0.7.37</a> - Source URL: <a href="https://api.github.com/repos/openSUSE/libsolv/tarball/refs/tags/0.7.37" target="_blank" rel="noopener noreferrer">api.github.com — 0.7.37</a> - Pre-release: `False` ## Signals - Security-relevant keywords detected: `False` - Policy blocked: `False` - Policy reason: `-` - Labels: `ai-summary, bot, needs-build, needs-triage, priority/medium, update/patch, upstream-update, upstream/github` ## NiceSOFT AI preliminary stability analysis ### 1. Краткий вывод Upstream-обновление `libsolv` с `0.7.35` до `0.7.37` выглядит как **patch-level** change с bugfix- и performance-изменениями, без явных признаков ABI/API-ломки по найденным источникам. Для НАЙС.ОС это **manual review**: обновление в целом похоже на допустимый candidate для leaf-пакета, но compare-диапазон не тривиален, поэтому нужен быстрый diff-check перед merge. ### 2. Риск для НАЙС.ОС **Риск: medium.** Обоснование: версия меняется на patch-level, upstream-заметки содержат только исправления и одно улучшение производительности, что хорошо для стабильного enterprise-дистрибутива. При этом `libsolv` — инфраструктурно важная библиотека для parsing/solver pipeline, а GitHub compare показывает **48 commits / 39 files changed**, поэтому полностью низким риск назвать нельзя. Для политики RHEL-like стабильной ветки это скорее приемлемый апдейт, но не blind auto-merge. ### 3. Что изменилось upstream Подтверждённые изменения в `0.7.37` по upstream changelog: - fix parsing of **SHA-512 checksums** in Debian repositories - improve speed of `dirpool_add_dir`, making `filelists.xml` parsing about **twice as fast** - fix parsing of `recommends` in the old **Mandriva synthesis** format - bump version to `0.7.37` Также в ближайшем предыдущем релизе `0.7.36` upstream зафиксированы: - respect `default` in comps environment option lists - support SUSE namespace deps in boolean dependencies - support Elbrus2000 (e2k) - support `language()` SUSE namespace rewriting - bump version to `0.7.36` Release tag `0.7.37` существует в официальном репозитории `openSUSE/libsolv`. ### 4. Security/CVE **Подтверждённых CVE не найдено.** В найденных upstream release notes и changelog для `0.7.37` нет ссылок на CVE или explicit security fix. Оснований считать обновление security-driven нет. ### 5. ABI/API/CLI/config риск По найденным источникам: - явных сообщений об **ABI break**, removed APIs или изменениях SONAME нет; - не найдено упоминаний о новых CLI-опциях или изменениях конфигов; - release notes описывают bugfix/performance changes, а не изменение default behavior. **Оценка риска интерфейсов: low / unknown.** Low — потому что нет признаков ломки; unknown — потому что полной верификации ABI/API по одному changelog недостаточно, особенно для compare-диапазона в 48 commits. ### 6. Риск для RPM-сборки и dist-git Что следует проверить перед PR/merge: - `SPECS/`: - совпадает ли `Version`/`Release` с `0.7.37` - не нужны ли новые `Patch` или удаление устаревших - не изменились ли `BuildRequires` / `Requires` - `SOURCES/`: - обновление source tarball на `0.7.37` - актуален ли `sources.lock.json` - `SBOM/`: - нужно ли регенерировать SBOM после смены upstream source - `%check`: - не сломались ли тесты на новых данных/поведении parser’а - metadata/change-report: - не требует ли новый upstream source ручной правки dist-git metadata - dependency metadata: - нет ли необходимости в пересчёте autogenerated provides/requires На текущий момент evidence по upstream **не показывает** CMake/SONAME/dependency changes, но локальный spec diff в НАЙС.ОС остаётся **unknown** до реального rebasing. ### 7. Риск для системы и зависимых компонентов `libsolv` влияет на: - repository parsing - dependency metadata ingestion - solver input preparation Следовательно, даже patch-релиз может затронуть: - поведение package manager stack - обработку репозиторных метаданных - reverse dependencies, которые используют libsolv runtime behavior Из changelog видно, что изменения касаются correctness/performance в parsing path, поэтому ожидаемый эффект — улучшение обработки metadata, а не изменение installed-system behavior. Тем не менее для enterprise-среды нужен ручной контроль, так как регрессия в solver/parser может иметь широкий blast radius. ### 8. Проверки мейнтейнера Checklist перед merge: 1. Сверить upstream tag `0.7.37` и убедиться, что source соответствует релизу. 2. Проверить diff `0.7.35 -> 0.7.37` на предмет: - ABI/API/SONAME изменений - удаления символов - изменений default behavior 3. Просмотреть `SPECS/libsolv.spec`: - `Version`, `Release`, `Source0` - `BuildRequires`, `Requires` - наличие/актуальность `%check` 4. Пересобрать и проверить: - успешный build - автотесты - генерацию provides/requires 5. Сверить `SOURCES/sources.lock.json` и SBOM. 6. Проверить, не нужно ли адаптировать downstream patch set. 7. Быстро прогнать smoke-тесты на: - repo metadata parsing - package manager operations, зависящие от libsolv 8. Если есть staging/QA — загрузить пакет туда и проверить базовые сценарии. ### 9. Рекомендация **manual review** ### 10. Источники - <a href="https://github.com/openSUSE/libsolv/releases/tag/0.7.37" target="_blank" rel="noopener noreferrer">Upstream release tag `0.7.37`</a> - <a href="https://github.com/openSUSE/libsolv/blob/master/package/libsolv.changes" target="_blank" rel="noopener noreferrer">Upstream changelog `package/libsolv.changes`</a> - <a href="https://github.com/openSUSE/libsolv/compare/0.7.35...0.7.37" target="_blank" rel="noopener noreferrer">Upstream compare `0.7.35...0.7.37`</a> - <a href="https://github.com/openSUSE/libsolv/blob/master/NEWS" target="_blank" rel="noopener noreferrer">Upstream NEWS</a> - <a href="https://specs.niceos.ru/rpms/libsolv" target="_blank" rel="noopener noreferrer">NiceOS dist-git package `libsolv`</a> - <a href="https://specs.niceos.ru/rpms/libsolv/src/branch/niceos-5.2/METADATA/change-report.json" target="_blank" rel="noopener noreferrer">NiceOS change report JSON</a> - <a href="https://specs.niceos.ru/rpms/libsolv/src/branch/niceos-5.2/SPECS" target="_blank" rel="noopener noreferrer">NiceOS SPECS directory</a> - <a href="https://specs.niceos.ru/rpms/libsolv/src/branch/niceos-5.2/SOURCES" target="_blank" rel="noopener noreferrer">NiceOS SOURCES directory</a> - <a href="https://specs.niceos.ru/rpms/libsolv/src/branch/niceos-5.2/SOURCES/sources.lock.json" target="_blank" rel="noopener noreferrer">NiceOS source lock JSON</a> ### Источники, найденные web_search 1. <a href="https://github.com/openSUSE/libsolv/blob/master/package/libsolv.changes" target="_blank" rel="noopener noreferrer">github.com — libsolv.changes</a> 2. <a href="https://github.com/openSUSE/libsolv" target="_blank" rel="noopener noreferrer">github.com — libsolv</a> 3. <a href="https://github.com/opensuse" target="_blank" rel="noopener noreferrer">github.com — opensuse</a> 4. <a href="https://github.com/schwabe/ics-openvpn/issues/1486" target="_blank" rel="noopener noreferrer">github.com — 1486</a> 5. <a href="https://github.com/ipfs/kubo/releases?ref=pinata.cloud" target="_blank" rel="noopener noreferrer">github.com — releases</a> 6. <a href="https://github.com/openSUSE/snapper" target="_blank" rel="noopener noreferrer">github.com — snapper</a> 7. <a href="https://github.com/openssl/openssl/" target="_blank" rel="noopener noreferrer">github.com — openssl</a> 8. <a href="https://github.com/conda/conda/issues/13180" target="_blank" rel="noopener noreferrer">github.com — 13180</a> 9. <a href="https://github.com/sgrif/repology" target="_blank" rel="noopener noreferrer">github.com — repology</a> 10. <a href="https://github.com/mamba-org/mamba" target="_blank" rel="noopener noreferrer">github.com — mamba</a> 11. <a href="https://github.com/mccdaq/uldaq" target="_blank" rel="noopener noreferrer">github.com — uldaq</a> 12. <a href="https://github.com/libuv/libuv" target="_blank" rel="noopener noreferrer">github.com — libuv</a> ## Upstream release notes / description _No release notes were available from the upstream API._ ## 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 2.1.2-openai-deep` - Generated at: `2026-05-09T16:18:03Z`
Author
Owner

Package version is now 0.7.37 and target version was 0.7.37. Closing as resolved.\n\n_Closed by niceos_upstream_monitor.py 1.5 at 2026-05-09T17:52:03Z._

Package version is now `0.7.37` and target version was `0.7.37`. Closing as resolved.\n\n_Closed by `niceos_upstream_monitor.py 1.5` at `2026-05-09T17:52:03Z`._
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
rpms/libsolv#2
No description provided.