Upstream update available: rust 1.88.0 → 1.95.0 #1
Labels
No labels
ai-summary
bot
needs-build
needs-triage
priority/high
security-release
update/minor
upstream-update
upstream/github
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
rpms/rust#1
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Upstream update available:
rust1.88.0→1.95.0Package
rustrustniceos-5.21.88.0-1minorpython_rpmleafgithub-upstreamUpstream
githubrust-lang/rust1.95.01.95.0github_release_latest2026-04-16T18:19:31ZFalseSignals
TrueFalse-ai-summary, bot, needs-build, needs-triage, priority/high, security-release, update/minor, upstream-update, upstream/githubNiceSOFT AI preliminary analysis
1. Краткий вывод
Обновление Rust с 1.88.0 до 1.95.0 включает стабилизацию новых API, изменение семантики компиляции констант и обновление внутренней зависимости LLVM до версии 22. В релиз включены патчи для уязвимостей CVE-2026-6042 и CVE-2026-40200 в заимствованной библиотеке musl. Обновление классифицировано как minor, однако содержит изменения в поведении компилятора и совместимости, требующие внимания.
2. Риск для НАЙС.ОС
medium.
Несмотря на статус minor, обновление затрагивает критически важные компоненты: компилятор (изменение логики const-eval и паттернов), стандартную библиотеку (новые методы атомарных типов и векторов) и инструмент сборки (LLVM 22). Наличие флагов безопасности (
security_keywords_detected_by_script: True) и исправлений CVE повышает значимость обновления, но требует проверки бинарных артефактов на предмет изменений ABI.3. Security/CVE
Во входных данных явно указаны исправления для CVE-2026-6042 и CVE-2026-40200, примененные к заимствованной библиотеке musl через PR #155171. Это прямое указание на наличие уязвимостей в предыдущих версиях, которые устраняются в текущем обновлении.
4. ABI/API риск
Высокий потенциал для изменений ABI и API:
updateиtry_updateдля атомарных типов (AtomicPtr,AtomicBool,AtomicIsize,AtomicUsize). Код, использующий эти методы, теперь будет компилироваться без флага нестабильности, что может изменить поведение или требования к зависимостям.const-eval(PR #148997) могут привести к ошибкам компиляции в редких случаях, если байты указателей попадают в области заполнения (padding) констант.#[non_exhaustive]enum) могут повлиять на захват значений в замыканиях.5. Риск для RPM-сборки
const-eval, могут начать проваливаться из-за ужесточения проверок видимости и жизненных циклов.6. Проверки мейнтейнера
%checkдля всех пакетов, зависящих отrustиrust-std, особенно тех, что используютconst fnили сложные паттерны.update,try_update).muslкорректно интегрирован и не нарушает работу системных библиотек.7. Рекомендация
blocked manual review
8. Основание рекомендации
Наличие исправлений критических уязвимостей (CVE) диктует необходимость обновления, однако статус
minorв сочетании с изменениями в семантике компилятора (const-eval), обновлением LLVM и новыми стабилизированными API требует ручного анализа. Автоматическое обновление рискованно из-за потенциальных ошибок компиляции у зависимых пакетов и изменений в бинарном интерфейсе, которые необходимо верифицировать перед массовым разворачиванием.Upstream release notes / description
Language
if letguards on match armsirrefutable_let_patternslint no longer lints on let chainsCompiler
--remap-path-scopefor controlling the scoping of how paths get remapped in the resulting binaryPlatform Support
powerpc64-unknown-linux-muslto Tier 2 with host toolsaarch64-apple-tvosto Tier 2aarch64-apple-tvos-simto Tier 2aarch64-apple-watchosto Tier 2aarch64-apple-watchos-simto Tier 2aarch64-apple-visionosto Tier 2aarch64-apple-visionos-simto Tier 2Refer to Rust's platform support page for more information on Rust's tiered platform support.
Libraries
thread::scope: document how join interacts with TLS destructorsstr::containson aarch64 targets withneontarget feature enabled by defaultStabilized APIs
MaybeUninit<[T; N]>: From<[MaybeUninit<T>; N]>MaybeUninit<[T; N]>: AsRef<[MaybeUninit<T>; N]>MaybeUninit<[T; N]>: AsRef<[MaybeUninit<T>]>MaybeUninit<[T; N]>: AsMut<[MaybeUninit<T>; N]>MaybeUninit<[T; N]>: AsMut<[MaybeUninit<T>]>[MaybeUninit<T>; N]: From<MaybeUninit<[T; N]>>Cell<[T; N]>: AsRef<[Cell<T>; N]>Cell<[T; N]>: AsRef<[Cell<T>]>Cell<[T]>: AsRef<[Cell<T>]>bool: TryFrom<{integer}>AtomicPtr::updateAtomicPtr::try_updateAtomicBool::updateAtomicBool::try_updateAtomicIn::updateAtomicIn::try_updateAtomicUn::updateAtomicUn::try_updatecfg_select!mod core::rangecore::range::RangeInclusivecore::range::RangeInclusiveItercore::hint::cold_path<*const T>::as_ref_unchecked<*mut T>::as_ref_unchecked<*mut T>::as_mut_unchecked](ht...[truncated 5105 chars]
NiceOS maintainer checklist
Versionand related fields inSPECS/*.speconly if policy allows it.SOURCES/sources.lock.json, manifests, metadata and SBOM.Bot metadata
niceos_upstream_monitor.py 1.42026-04-27T23:13:43Z