Emissio systematis programmandi linguae Rust 1.52, a Mozilla projecto fundata, nunc sub auspiciis organizationis Rust Fundationis independentis non lucri, divulgatum est. Lingua ad salutem memoriae intendit, administrationem automaticam memoriam praebet et instrumenta praebet ut parallelismum perficiat sine purgamento collectoris vel runtime adhibito (runtime ad initializationem et sustentationem bibliothecae vexillum fundamentalis redactus est).
Rubigo latae memoriae administratio errores excludit cum abusionibus indicibusque et quaestionibus ab humili gradu memoriae manipulationis ortis protegit, ut accessu memoriae regionis, postquam liberata est, nullum indicium dereferences, quiddam eliminatum, etc. Bibliothecas distribuere, conventum curare ac clientelas regere, consilium sarcina oneraria administrare. Crates.io repositorium ad bibliothecas hospites sustentatur.
Innovationes principales:
- Π£Π±ΡΠ°Π½Π° ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ ΠΏΠΎΡΡΠ΄ΠΊΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Β«cargo checkΒ» ΠΈ Β«cargo clippyΒ». Π Π°Π½ΡΡΠ΅ Π²ΡΠ·ΠΎΠ² Β«cargo clippyΒ» ΠΏΠΎΡΠ»Π΅ Β«cargo checkΒ» Π½Π΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ» ΠΊ Π·Π°ΠΏΡΡΠΊΡ ΡΡΠΈΠ»ΠΈΡΡ clippy (linter) ΠΈΠ·-Π·Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΡΡΠ΅ΠΉ Π΄Π»Ρ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠ² ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ. Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ΅ΡΠ΅Π½Π° ΠΈ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π²ΡΠ·ΠΎΠ²Π° Β«cargo clippyΒ» ΠΈ Β«cargo checkΒ» ΠΏΠ΅ΡΠ΅ΡΡΠ°Π» ΠΈΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
- Nova portio API categoriae stabilium translata est, additis modis sequentibus confirmatae:
- Arguments::as_str
- char::MAX
- char::REPLACEMENT_CHARACTER
- char::UNICODE_VERSION
- char::decode_utf16
- char :: from_digit
- char::from_u32_unchecked
- char :: from_u32
- slice::partition_point
- str::rsplit_once
- str::split_once
- Attributum "const", quod facultatem utendi in quovis contextu loco constantium determinat, in modis adhibetur:
- char::len_utf8
- char::len_utf16
- char::to_ascii_uppercase
- char::to_ascii_lowercase
- char::eq_ignore_ascii_case
- u8::to_ascii_uppercase
- u8::to_ascii_lowercase
- u8::eq_ignore_ascii_case
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° lint-ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° unsafe_op_in_unsafe_fn Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ°ΠΌΠ»Π΅Π½ΠΈΡ unsafe-Π±Π»ΠΎΠΊΠ°ΠΌΠΈ unsafe-ΠΊΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ Π² unsafe-ΡΡΠ½ΠΊΡΠΈΡΡ .
- Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ mutable-ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° ΠΌΠ°ΡΡΠΈΠ²Ρ Π² ΡΠΎΡΠΌΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° ΡΠΈΠΏ, ΡΡΠΎ ΠΈ Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°. let mut x: [usize; 2] = [0, 0]; let p = &mut x as *mut usize; let p = &mut x as *const usize;
- Π clippy (linter) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 9 Π½ΠΎΠ²ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΎΠΊ.
- Π ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ΅ cargo Π΄Π»Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠΎΠ»Ρ Β«manifest_pathΒ» Π² JSON. Π ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ crates.io Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ SPDX 3.11.
- Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΈΠ»ΡΡΡΠΎΠ² ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΠ΅ΡΡΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΡΡΠΊ Β«cargo test β foo barΒ» Π·Π°ΠΏΡΡΡΠΈΡ Π²ΡΠ΅ ΡΠ΅ΡΡΡ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΌΠ°ΡΠΊΠ°ΠΌ Β«fooΒ» ΠΈ Β«barΒ».
- ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ LLVM ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½ Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ LLVM 12.
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΡΠ΅ΡΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌ s390x-unknown-linux-musl, riscv32gc-unknown-linux-musl, riscv64gc-unknown-linux-musl ΠΈ powerpc-unknown-openbsd. Π’ΡΠ΅ΡΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ Π±Π°Π·ΠΎΠ²ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ, Π½ΠΎ Π±Π΅Π· Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ±ΠΎΡΠΎΠΊ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ±ΠΎΡΠΊΠΈ ΠΊΠΎΠ΄Π°.
Source: opennet.ru