Rust 1.69 ์๊ฐ: ์์คํ ์์ค ์ํํธ์จ์ด ๊ฐ๋ฐ์ ๋ฐ์
Rust 1.69๋ cargo fix ํ์ ๋ช ๋ น ๊ฐ์ ๋ฐ ๋น๋ ์คํฌ๋ฆฝํธ์ ๋๋ฒ๊ทธ ์ ๋ณด ์ ์ธ๋ฅผ ํฌํจํ์ฌ ๋ช ๊ฐ์ง ํฅ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ด์ ๋ฒ์ ์์๋ ์คํ์ค ๋ ์ง์คํธ๋ฆฌ ํ๋กํ ์ฝ ์ต์ ํ, ์คํ ํผ๋, ํฅ์๋ ๋ค์ค ์์ฐ์ ์ฑ๋๊ณผ ๊ฐ์ ์๋ก์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์์์ต๋๋ค.

์์คํ ์์ค์ ์ํํธ์จ์ด ๊ฐ๋ฐ์ ๋จ์ํํ๋๋ก ์ค๊ณ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ธ Rust๋ ์ต์ ์ ๋ฐ์ดํธ์ธ Rust 1.69๋ก ํค๋๋ผ์ธ์ ์ฅ์ํ์ต๋๋ค. ์ด ์ต์ฒจ๋จ ์ธ์ด๋ C, C++, Go์ ๊ฐ์ ๋์ ์ธ์ด์ ๋นํด ์ฅ๋จ์ ์ด ์ ์ ํฅ์๋ ์ฝ๋ ํ์ง์ ์ ๊ณตํ๋ฉฐ ์ ๊ธฐ์ ์ธ ์ ๋ฐ์ดํธ ๋ฐ ๊ฐ์ ์ฌํญ์ ์ ๊ณตํฉ๋๋ค.
Rust 1.69๋ก ์ ๋ฐ์ดํธํ๋ ค๋ฉด rustup์ ํตํด ์ด์ ๋ฒ์ ์ Rust๋ฅผ ์ค์นํ ์ฌ์ฉ์๋ ๋ค์ ๋ช ๋ น์ ์ ๋ ฅํด์ผ ํฉ๋๋ค.
์ด ์ฃผ๋ชฉํ ๋งํ ์ ๋ฐ์ดํธ์๋ ์ฃผ์ ๊ธฐ๋ฅ์ด ํฌํจ๋์ด ์์ง ์์ง๋ง ์๋ง์ ์์ ๊ฐ์ ์ฌํญ์ด ํฌํจ๋์ด ์์ต๋๋ค. Rust 1.69๋ 500๋ช ์ด ๋๋ ๊ธฐ์ฌ์์ 3,000๊ฐ ์ด์์ ์ปค๋ฐ์ผ๋ก ๊ตฌ์ฑ๋์ด Rust ๋ฆด๋ฆฌ์ค ํ์ ์ง์์ ์ธ ๋ ธ๋ ฅ์ ๋ณด์ฌ์ค๋๋ค.
Rust 1.69์ ๊ฐ์ ์ฌํญ์๋ Rust 1.29์ ๋์
๋ ๋จ์ ์ปดํ์ผ๋ฌ ๊ฒฝ๊ณ ๋ฅผ ์๋ ์์ ํ๋ cargo fix ํ์ ๋ช
๋ น์ด ํฌํจ๋ฉ๋๋ค. ์์ ํ ์ ์๋ ๊ฒฝ๊ณ ์ ์๊ฐ ์ฆ๊ฐํ์ผ๋ฉฐ ์์ ํ๊ธฐ ์ฌ์ด ๋ช ๊ฐ์ง Clippy ๊ฒฝ๊ณ ๋ฅผ ์๋์ผ๋ก ์์ ํ๊ธฐ ์ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. ๋ํ Cargo๋ ์์ ๊ฐ๋ฅํ ๊ฒฝ๊ณ ๋ฅผ ๊ฐ์งํ ๋ cargo fix ๋๋ cargo clippy --fix ์คํ์ ์ ์ํฉ๋๋ค. ์ ์ฒด Cargo ํธ์ถ์ ์์ ์ฌํญ์ ๋จ์ผ ํฌ๋ ์ดํธ์ ์ ํํ๊ฒ ์ ์ฉํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ํ Rust 1.69๋ ์ปดํ์ผ ์๋๋ฅผ ํฅ์์ํค๊ธฐ ์ํด ๊ธฐ๋ณธ์ ์ผ๋ก ๋น๋ ์คํฌ๋ฆฝํธ์ ๋๋ฒ๊ทธ ์ ๋ณด๋ฅผ ๋ ์ด์ ํฌํจํ์ง ์์ต๋๋ค. ์ด์ Cargo๋ ๋น๋ ์คํฌ๋ฆฝํธ์์ ๋๋ฒ๊ทธ ์ ๋ณด๋ฅผ ๋ฐฉ์ถํ์ง ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ๋น๋ ์คํฌ๋ฆฝํธ๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ์คํ๋ ๋ ์ด๋ ํ ์ํฅ๋ ๋๋ผ์ง ๋ชปํ ๊ฒ์
๋๋ค. cstr::from_bytes_until_nul ๋ฐ core::ffi::FromBytesUntilNulError ํฌํจํ์ฌ ์ฌ๋ฌ API๋ ์์ ํ๋์์ต๋๋ค.
์ด์ Rust 1.68 ๋ฆด๋ฆฌ์ค์์ ํต์ฌ ๊ธฐ๋ฅ์ Cargo ํจํค์ง ๊ด๋ฆฌ์๋ฅผ ์ํ ์คํ์ค ๋ ์ง์คํธ๋ฆฌ ํ๋กํ ์ฝ์ ์์ ์ฑ์ด์์ต๋๋ค. ์ด ์๋ก์ด ํ๋กํ ์ฝ์ Git ํ๋กํ ์ฝ์์ ๊ฒฝํํ ํ์ฅ ์ ํ ๋ฐ ์ง์ฐ์ ํด๊ฒฐํ์ฌ crates.io์ ์ก์ธ์คํ ๋ ์ฑ๋ฅ์ ํฅ์์ํฌ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. Sparse ํ๋กํ ์ฝ์ Rust 1.70.0์์ crates.io์ ๊ธฐ๋ณธ๊ฐ์ด ๋๋๋ก ์ค์ ๋์ด ์์ต๋๋ค.
Rust 1.68์ ๋์
๋ ๋ค๋ฅธ ๊ฐ์ ์ฌํญ์๋ ์๋ก์ด pin! T ํํ์์์ Pin<&mut T> ๊ตฌ์ฑํ๊ณ {core, std}::pin::pin! ๋ฐ impl DerefMut for PathBuf .
Rust 1.67์ #[must_use] ๋ฐ async fn์ ๋ํ ์ปดํ์ผ๋ฌ ๊ฒฝ๊ณ ๋ฅผ ์ถ๊ฐํ๋ ๋ฐ ์ค์ ์ ๋์์ต๋๋ค. ๋ํ ๋ค์ค ์์ฐ์, ๋จ์ผ ์๋น์ ์ฑ๋์ ๊ตฌํ์ ์
๋ฐ์ดํธํ๊ณ {integer}::checked_ilog , {integer}::ilog ๋ฐ NonZero*::BITS ์ ๊ฐ์ ์๋ง์ API๋ฅผ ์์ ํํ์ต๋๋ค.
2022๋
12์์ ์ถ์๋ Rust 1.66์ ์ ์ ํํ์ด ์๋ ์ด๊ฑฐํ์ ํ์ฑํํ์ฌ ํ๋์ ํจ๊ป ๋ช
์์ ํ๋ณ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ ๋์
ํ์ต๋๋ค. ์ด ๋ฒ์ ์ ๋ํ ์๋ก์ด ์์ ํ๋ black_box ๊ธฐ๋ฅ, cargo remove , ํจํด์ ..=x ๋ฒ์ ๋ฐ API ์์ ํ๋ก ์ข
์์ฑ์ ์ ๊ฑฐํ๋ ์ต์
์ ์ถ๊ฐํ์ต๋๋ค.
์๋ง์ ๋ง์ถคํ ์ํํธ์จ์ด ๊ฐ๋ฐ ํ๋ก์ ํธ๋ Rust์ ์์คํ ์์ค ์ํํธ์จ์ด ๊ฐ๋ฐ ์ต์ ํ์ ์ด์ ์ ๋๋ฆฌ๊ณ ์์ต๋๋ค. ๋ํ no-code ํ๋ซํผ์ธ AppMaster ์ฌ์ฉ์๋ฅผ ์ํ ๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ์ ๊ฐ์ํํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.


