rust-lang/rust
Rust 1.95.0 출시, let 패턴 가드 안정화
원제 rust-lang/rust 1.95.0
1.95.0
Key Point
데이터 처리와 메모리 조작을 더 효율적으로 하는 다수의 API가 안정화되고, 주요 임베디드·모바일 플랫폼의 공식 지원 범위가 크게 확대됐다.
핵심 요약
- if let 가드를 match 암에서 정식 기능으로 안정화하고, PowerPC/PowerPC64 인라인 어셈블리도 안정화했다.
- const 블록 평가 방식을 일관되게 정리해 패턴 매칭의 의미를 크레이트·모듈과 독립적으로 만들었다.
- powerpc64-unknown-linux-musl을 Tier 2 지원 플랫폼으로 승격하고, Apple TV/Watch/Vision 기기의 aarch64 타겟 6개도 Tier 2로 올렸다.
- MaybeUninit, Cell, Atomic 계열 API들의 from/as_ref/as_mut/update/try_update 메서드를 표준 라이브러리에 추가했다.
- Vec/VecDeque/LinkedList에 push_mut, insert_mut 등 가변 참조를 반환하는 새 메서드를 안정화했다.
- Layout::dangling_ptr, Layout::repeat, Layout::repeat_packed, cfg_select!, <*const T>::as_ref_unchecked 등 포인터·메모리 조작 함수들을 추가했다.
- bool 타입에서 정수로의 TryFrom 변환을 지원하고, fmt::from_fn과 ControlFlow 메서드들을 const 컨텍스트에서도 쓸 수 있게 했다.
- str::contains가 aarch64 NEON 기능 활성화 시 자동으로 더 빠르게 동작하도록 최적화했다.
- rustdoc 검색에서 불안정 항목을 낮춰 순위하고, 사용 중단 항목을 숨길 수 있는 설정을 추가했다.
- use $crate::{self}; 형식 import가 금지되었고, 비소진 열거형 매칭 시 판별자를 무조건 읽게 해 클로저 캡처 범위가 바뀔 수 있다.
- JSON 타겟 spec은 이제 -Z unstable-options 플래그가 필수이며, Cargo에서 자동으로 전달하는 -Z json-target-spec 플래그가 추가됐다.
- LLVM을 22 버전으로 업데이트했고, 내부 성능 최적화와 CVE-2026-6042, CVE-2026-40200 보안 패치를 적용했다.
릴리스 노트 보기 ↗github.com