Policy review: major upstream version available: protobuf 31.1 → 34.1 #1

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

Upstream update available: protobuf 31.134.1

Package

  • Package: protobuf
  • RPM name: protobuf
  • Branch: niceos-5.2
  • Current EVR: 31.1-1
  • Update class: major
  • Compare method: python_rpm
  • Update policy: leaf
  • 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. Краткий вывод

Обнаружено обновление библиотеки protobuf с версии 31.1 до 34.1, классифицированное как major-обновление. Политика дистрибутива блокирует автоматическое применение таких обновлений для пакетов, являющихся зависимостями API или библиотек, из-за высокого риска нарушения совместимости. В предоставленных релиз-нотах отсутствуют прямые указания на критические уязвимости безопасности.

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

high. Обновление является major (31.1 -> 34.1), что подразумевает потенциальные изменения в ABI и API. Поскольку пакет помечен как библиотека/API-зависимость (policy_blocked: True), автоматическое обновление может привести к поломке зависимых приложений, которые используют протокол сериализации или вызовы C++ API, несовместимые с новой версией.

3. Security/CVE

Во входных данных отсутствуют явные признаки уязвимостей безопасности или упоминания CVE. Скрипт детектирования безопасности не нашел ключевых слов (security_keywords_detected_by_script: False). Хотя в Java-часть есть фикс поведения toBigIntegerExact, это описано как улучшение корректности парсинга, а не как исправление известной CVE в данном контексте.

4. ABI/API риск

Высокий риск. Переход с мажорной версии 31.x на 34.x в библиотеках протоколирования часто влечет за собой изменения в структуре сообщений, именах полей или бинарном формате сериализации. Без анализа конкретных изменений в заголовках C++ и бинарных форматах файлов .proto невозможно гарантировать обратную совместимость.

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

Возможны проблемы с BuildRequires из-за обновления зависимостей CMake (Updated CMake dependencies). Также могут потребоваться правки в %check секции, если тесты зависят от специфичного поведения старой версии. Изменения в скриптах сборки (release_prep.sh) указывают на возможные проблемы с генерацией артефактов, но это касается upstream процесса, а не напрямую RPM-спека, хотя может повлиять на исходные коды.

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

  • Провести сравнение ABI между версиями 31.1 и 34.1 (используя abi-dumper или аналогичные инструменты).
  • Проверить список зависимых пакетов в дистрибутиве, использующих protobuf в качестве runtime-зависимости.
  • Внимательно изучить commit 5583d... (CMake dependencies) на предмет требований новых версий компиляторов или инструментов.
  • Проверить наличие патчей в репозитории НАЙС.ОС, которые могут конфликтовать с новыми изменениями upstream.
  • Убедиться, что тесты в %check проходят на новой версии без модификаций.

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

blocked manual review

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

Автоматическое обновление запрещено политикой (policy_blocked: True) из-за статуса пакета как библиотеки/API-зависимости и класса обновления major. Требуется ручная оценка влияния на ABI и проверку всех зависимых пакетов перед разрешением обновления.

Upstream release notes / description

Announcements

  • Protobuf News may include additional announcements or pre-announcements for upcoming changes.

Bazel

C++

Java

Python

Other

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-28T16:00:08Z
<!-- niceos-upstream-monitor:fingerprint=upstream-update:protobuf:34.1 --> <!-- niceos-upstream-monitor:package=protobuf --> <!-- niceos-upstream-monitor:current=31.1 --> <!-- niceos-upstream-monitor:latest=34.1 --> # Upstream update available: `protobuf` `31.1` → `34.1` ## Package - Package: `protobuf` - RPM name: `protobuf` - Branch: `niceos-5.2` - Current EVR: `31.1-1` - Update class: `major` - Compare method: `python_rpm` - Update policy: `leaf` - Risk tags: `github-upstream` ## Upstream - Upstream type: `github` - Upstream project: `protocolbuffers/protobuf` - Upstream URL: https://github.com/protocolbuffers/protobuf - Detected version: `34.1` - Tag/release: `v34.1` - Source: `github_release_latest` - Published: `2026-03-19T22:21:30Z` - Release URL: https://github.com/protocolbuffers/protobuf/releases/tag/v34.1 - Source URL: https://api.github.com/repos/protocolbuffers/protobuf/tarball/v34.1 - 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. Краткий вывод Обнаружено обновление библиотеки `protobuf` с версии 31.1 до 34.1, классифицированное как major-обновление. Политика дистрибутива блокирует автоматическое применение таких обновлений для пакетов, являющихся зависимостями API или библиотек, из-за высокого риска нарушения совместимости. В предоставленных релиз-нотах отсутствуют прямые указания на критические уязвимости безопасности. ### 2. Риск для НАЙС.ОС **high**. Обновление является major (31.1 -> 34.1), что подразумевает потенциальные изменения в ABI и API. Поскольку пакет помечен как библиотека/API-зависимость (`policy_blocked: True`), автоматическое обновление может привести к поломке зависимых приложений, которые используют протокол сериализации или вызовы C++ API, несовместимые с новой версией. ### 3. Security/CVE Во входных данных отсутствуют явные признаки уязвимостей безопасности или упоминания CVE. Скрипт детектирования безопасности не нашел ключевых слов (`security_keywords_detected_by_script: False`). Хотя в Java-часть есть фикс поведения `toBigIntegerExact`, это описано как улучшение корректности парсинга, а не как исправление известной CVE в данном контексте. ### 4. ABI/API риск Высокий риск. Переход с мажорной версии 31.x на 34.x в библиотеках протоколирования часто влечет за собой изменения в структуре сообщений, именах полей или бинарном формате сериализации. Без анализа конкретных изменений в заголовках C++ и бинарных форматах файлов `.proto` невозможно гарантировать обратную совместимость. ### 5. Риск для RPM-сборки Возможны проблемы с `BuildRequires` из-за обновления зависимостей CMake (`Updated CMake dependencies`). Также могут потребоваться правки в `%check` секции, если тесты зависят от специфичного поведения старой версии. Изменения в скриптах сборки (`release_prep.sh`) указывают на возможные проблемы с генерацией артефактов, но это касается upstream процесса, а не напрямую RPM-спека, хотя может повлиять на исходные коды. ### 6. Проверки мейнтейнера - [ ] Провести сравнение ABI между версиями 31.1 и 34.1 (используя `abi-dumper` или аналогичные инструменты). - [ ] Проверить список зависимых пакетов в дистрибутиве, использующих `protobuf` в качестве runtime-зависимости. - [ ] Внимательно изучить commit `5583d...` (CMake dependencies) на предмет требований новых версий компиляторов или инструментов. - [ ] Проверить наличие патчей в репозитории НАЙС.ОС, которые могут конфликтовать с новыми изменениями upstream. - [ ] Убедиться, что тесты в `%check` проходят на новой версии без модификаций. ### 7. Рекомендация blocked manual review ### 8. Основание рекомендации Автоматическое обновление запрещено политикой (`policy_blocked: True`) из-за статуса пакета как библиотеки/API-зависимости и класса обновления `major`. Требуется ручная оценка влияния на ABI и проверку всех зависимых пакетов перед разрешением обновления. ## Upstream release notes / description # Announcements * [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. # Bazel * Moved `protocopt` flag out of the `cc` dir, since it is not a c++-specific flag. (https://github.com/protocolbuffers/protobuf/commit/3db9fd1be16917f26590eccd6dfb51b8dcad0d15) * Add support for bazel 9.x (#26201) (https://github.com/protocolbuffers/protobuf/commit/763c5da3ff011a49f1c00992cdf9b4924d6b74bb) # C++ * Updated CMake dependencies. (https://github.com/protocolbuffers/protobuf/commit/5583485833ba82a21e15c53d2efcc61720731cb4) * Add cc_proto_library for MessageSet in //src/google/protobuf/bridge (https://github.com/protocolbuffers/protobuf/commit/523a6a4758f5e3cae7f10dad5b08941588946ff3) * Add support for bazel 9.x (#26201) (https://github.com/protocolbuffers/protobuf/commit/763c5da3ff011a49f1c00992cdf9b4924d6b74bb) # Java * Avoid toBigIntegerExact in JsonFormat to avoid degenerate parse behavior in the face of large exponents. (https://github.com/protocolbuffers/protobuf/commit/ab3d7f0041b22af4a61b6184fc2ac25092968840) # Python * Add support for bazel 9.x (#26201) (https://github.com/protocolbuffers/protobuf/commit/763c5da3ff011a49f1c00992cdf9b4924d6b74bb) # Other * Fixed release_prep.sh script `mkdir` command to follow `INTEGRITY_FILE` location. (https://github.com/protocolbuffers/protobuf/commit/e700d7d6478f3a8800fbcf7f156a0675c1c96392) * Second try at fixing the release_prep.sh file path! (#26097) (https://github.com/protocolbuffers/protobuf/commit/f5ccaf3b4e4c5122bacc8d6e4832dd339ec9e81e) ## 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-28T16:00:08Z`
Sign in to join this conversation.
No description provided.