Rust 1.94.0 출시! array_windows, Cargo config, TOML 1.1 지원!

by DD
3개월 전
조회수 22

Rust 1.94.0 버전이 출시되었으며, array_windows 메서드 추가로 슬라이스(slice) 반복 처리 기능이 향상됨

Cargo config 파일에서 include 키워드 지원으로 설정 관리 및 공유가 용이해짐

Cargo가 TOML v1.1을 지원하여 매니페스트(manifest) 및 설정 파일 파싱(parsing) 기능 개선

<[T]>::array_windows, LazyCell, LazyLock 등 다양한 API가 안정화(Stabilized)되어 활용성 증대

array_windows 메서드 도입과 성능 개선

Rust 1.94.0에 추가된 array_windows 메서드는 슬라이스(slice)를 고정 길이 윈도우로 반복 처리하는 기능을 제공한다. 기존의 .windows(4)를 사용할 때 발생할 수 있는 런타임(Runtime) 경계 검사(Bounds-checking) 문제를 해결하여 성능을 향상시킬 수 있다. 특히, Advent of Code와 같은 문제 해결에 유용하게 활용될 수 있으며, 코드 가독성 또한 높일 수 있다.

Cargo config 파일의 include 기능

Cargo config 파일에서 include 키워드 지원은 프로젝트 및 환경 전반에 걸쳐 Cargo 설정(Configuration)을 더 효율적으로 관리할 수 있게 한다. 여러 설정 파일을 공유하고, 선택적으로 포함할 수 있도록 하여 개발 환경의 유연성을 높였다. 이는 대규모 프로젝트에서 설정 중복(Configuration Duplication)을 줄이고, 일관성을 유지하는 데 기여한다.

TOML v1.1 지원과 매니페스트 관리

Cargo는 이제 TOML v1.1을 지원하여 매니페스트(manifest) 및 설정 파일 파싱(parsing) 기능을 개선했다. 특히, 여러 줄에 걸친 인라인 테이블(Inline Tables)과 후행 쉼표(Trailing Commas)를 지원하여 가독성을 높였다. 하지만, 이 기능을 사용하면 개발 환경의 MSRV(Minimum Supported Rust Version)가 높아질 수 있으며, 이전 버전과의 호환성을 위해 Cargo가 자동으로 매니페스트를 다시 작성한다.

API 안정화 및 활용성 증대

Rust 1.94.0에서는 <[T]>::array_windows, LazyCell, LazyLock 등 다양한 API가 안정화되었다. 이러한 API 안정화는 개발자가 더 안정적이고 예측 가능한 방식으로 코드를 작성할 수 있도록 돕는다. 또한, const context에서 안정화된 API를 통해 컴파일 타임(Compile Time)에 더 많은 작업을 수행할 수 있게 되어, 런타임 성능을 최적화할 수 있다.

Announcing Rust 1.94.0