Upstream update available: python3-chardet 5.2.0 → 7.4.3 #1

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

Upstream update available: python3-chardet 5.2.07.4.3

Package

  • Package: python3-chardet
  • RPM name: python3-chardet
  • Branch: niceos-5.2
  • Current EVR: 5.2.0-1
  • Update class: major
  • 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/high, update/major, upstream-update, upstream/github

NiceSOFT AI preliminary analysis

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

Обновление пакета python3-chardet с версии 5.2.0 до 7.4.3 является мажорным релизом, исправляющим краш при обработке нулевых байтов в мета-тегах. Обновление включает изменения в логике обработки исключений и добавление защитных ловушек ошибок, что критично для стабильности парсера.

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

Оценка: medium
Обоснование: Несмотря на то, что обновление классифицируется как мажорное (major), оно решает конкретную проблему стабильности (краш приложения). Однако переход с 5.x на 7.x может повлечь за собой скрытые изменения в API или поведении библиотеки, которые не очевидны из краткого описания патча. Автоматическое применение рискованно без проверки зависимостей.

3. Security/CVE

Во входных данных отсутствуют явные указания на наличие CVE или использование security-ключевых слов скриптом. Упомянутый баг (краш при нулевых байтах) относится к категории стабильности и robustness, а не прямой уязвимости безопасности (RCE, DoS через эксплуатацию уязвимости), хотя краш может быть использован для отказа в обслуживании.

4. ABI/API риск

Нужен ручной ABI/API анализ. Переход между мажорными версиями (5.x -> 7.x) часто подразумевает изменения в сигнатурах функций, возвращаемых значениях или внутренних структурах данных, даже если публичный API остался совместимым. Изменение логики обработки исключений (ValueError) может повлиять на код, который ожидает специфические типы ошибок.

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

Вероятны конфликты в BuildRequires, если новые зависимости требуются для сборки или тестирования. Также возможно провал %check (pytest/unittest), так как изменения в обработке исключений могут изменить поведение тестов, ожидающих старые типы ошибок. Необходимо проверить наличие патчей в spec-файле, которые могут перестать работать из-за изменений в коде.

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

  • Запустить rpmlint на обновленном spec-файле.
  • Выполнить локальную сборку пакета (rpmbuild -ba).
  • Провести регрессионное тестирование всех пакетов, зависящих от python3-chardet.
  • Проверить логи приложений, использующих chardet, на предмет новых исключений или изменений в поведении парсинга.
  • Сверить список зависимостей (Requires, BuildRequires) с исходным кодом новой версии.

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

blocked manual review

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

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

Upstream release notes / description

Patch release: fixes a crash when input contains null bytes inside a <meta charset> declaration.

Bug Fixes

  • Fixed ValueError: embedded null character crash when input contained a <meta charset> declaration with a null byte in the encoding name (e.g. b'<meta charset="\x00utf-8">'). codecs.lookup() raises ValueError on embedded nulls, and lookup_encoding() was only catching LookupError. Also added defensive ValueError catches in _validate_bytes() and _to_utf8() for completeness. (#369, thanks @DRMacIver for the report)

Full Changelog: https://github.com/chardet/chardet/compare/7.4.2...7.4.3

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-27T22:46:55Z
<!-- niceos-upstream-monitor:fingerprint=upstream-update:python3-chardet:7.4.3 --> <!-- niceos-upstream-monitor:package=python3-chardet --> <!-- niceos-upstream-monitor:current=5.2.0 --> <!-- niceos-upstream-monitor:latest=7.4.3 --> # Upstream update available: `python3-chardet` `5.2.0` → `7.4.3` ## Package - Package: `python3-chardet` - RPM name: `python3-chardet` - Branch: `niceos-5.2` - Current EVR: `5.2.0-1` - Update class: `major` - Compare method: `python_rpm` - Update policy: `leaf` - Risk tags: `github-upstream` ## Upstream - Upstream type: `github` - Upstream project: `chardet/chardet` - Upstream URL: https://github.com/chardet/chardet - Detected version: `7.4.3` - Tag/release: `7.4.3` - Source: `github_release_latest` - Published: `2026-04-13T21:22:49Z` - Release URL: https://github.com/chardet/chardet/releases/tag/7.4.3 - Source URL: https://api.github.com/repos/chardet/chardet/tarball/7.4.3 - Pre-release: `False` ## Signals - Security-relevant keywords detected: `False` - Policy blocked: `False` - Policy reason: `-` - Labels: `ai-summary, bot, needs-build, needs-triage, priority/high, update/major, upstream-update, upstream/github` ## NiceSOFT AI preliminary analysis ### 1. Краткий вывод Обновление пакета `python3-chardet` с версии 5.2.0 до 7.4.3 является мажорным релизом, исправляющим краш при обработке нулевых байтов в мета-тегах. Обновление включает изменения в логике обработки исключений и добавление защитных ловушек ошибок, что критично для стабильности парсера. ### 2. Риск для НАЙС.ОС **Оценка:** medium **Обоснование:** Несмотря на то, что обновление классифицируется как мажорное (major), оно решает конкретную проблему стабильности (краш приложения). Однако переход с 5.x на 7.x может повлечь за собой скрытые изменения в API или поведении библиотеки, которые не очевидны из краткого описания патча. Автоматическое применение рискованно без проверки зависимостей. ### 3. Security/CVE Во входных данных отсутствуют явные указания на наличие CVE или использование security-ключевых слов скриптом. Упомянутый баг (краш при нулевых байтах) относится к категории стабильности и robustness, а не прямой уязвимости безопасности (RCE, DoS через эксплуатацию уязвимости), хотя краш может быть использован для отказа в обслуживании. ### 4. ABI/API риск Нужен ручной ABI/API анализ. Переход между мажорными версиями (5.x -> 7.x) часто подразумевает изменения в сигнатурах функций, возвращаемых значениях или внутренних структурах данных, даже если публичный API остался совместимым. Изменение логики обработки исключений (`ValueError`) может повлиять на код, который ожидает специфические типы ошибок. ### 5. Риск для RPM-сборки Вероятны конфликты в `BuildRequires`, если новые зависимости требуются для сборки или тестирования. Также возможно провал `%check` (pytest/unittest), так как изменения в обработке исключений могут изменить поведение тестов, ожидающих старые типы ошибок. Необходимо проверить наличие патчей в spec-файле, которые могут перестать работать из-за изменений в коде. ### 6. Проверки мейнтейнера - [ ] Запустить `rpmlint` на обновленном spec-файле. - [ ] Выполнить локальную сборку пакета (`rpmbuild -ba`). - [ ] Провести регрессионное тестирование всех пакетов, зависящих от `python3-chardet`. - [ ] Проверить логи приложений, использующих `chardet`, на предмет новых исключений или изменений в поведении парсинга. - [ ] Сверить список зависимостей (`Requires`, `BuildRequires`) с исходным кодом новой версии. ### 7. Рекомендация blocked manual review ### 8. Основание рекомендации Рекомендуется блокировка автоматического обновления и проведение ручного ревью, так как это мажорное обновление библиотеки, которое меняет внутреннюю логику обработки ошибок. Без детального анализа кода и тестирования зависимых пакетов невозможно гарантировать отсутствие скрытых регрессий или проблем с ABI. ## Upstream release notes / description Patch release: fixes a crash when input contains null bytes inside a `<meta charset>` declaration. ## Bug Fixes - Fixed `ValueError: embedded null character` crash when input contained a `<meta charset>` declaration with a null byte in the encoding name (e.g. `b'<meta charset="\x00utf-8">'`). `codecs.lookup()` raises `ValueError` on embedded nulls, and `lookup_encoding()` was only catching `LookupError`. Also added defensive `ValueError` catches in `_validate_bytes()` and `_to_utf8()` for completeness. (#369, thanks [@DRMacIver](https://github.com/DRMacIver) for the report) **Full Changelog**: https://github.com/chardet/chardet/compare/7.4.2...7.4.3 ## 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-27T22:46:55Z`
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/python3-chardet#1
No description provided.