Rust 1.60 рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдкреНрд░рдХрд╛рд╢рди

Mozilla рдкреНрд░рдХрд▓реНрдкрд╛рджреНрд╡рд╛рд░реЗ рд╕реНрдерд╛рдкрд┐рдд, рдкрд░рдВрддреБ рдЖрддрд╛ рд╕реНрд╡рддрдВрддреНрд░ рдирд╛-рдирдлрд╛ рд╕рдВрд╕реНрдерд╛ Rust Foundation рдЪреНрдпрд╛ рд╕рдВрд░рдХреНрд╖рдгрд╛рдЦрд╛рд▓реА рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗрд▓реА Rust 1.60 рд╕рд╛рдорд╛рдиреНрдп-рдЙрджреНрджреЗрд╢реАрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдгреНрдпрд╛рдд рдЖрд▓реА рдЖрд╣реЗ. рднрд╛рд╖рд╛ рдореЗрдорд░реА рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрд╡рд░ рд▓рдХреНрд╖ рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рдЖрдгрд┐ рдХрдЪрд░рд╛ рдЧреЛрд│рд╛ рдХрд░рдгрд╛рд░реЗ рдЖрдгрд┐ рд░рдирдЯрд╛рдЗрдордЪрд╛ рд╡рд╛рдкрд░ рдЯрд╛рд│реВрди рдЙрдЪреНрдЪ рдЬреЙрдм рд╕рдорд╛рдВрддрд░рддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рдЪреЗ рд╕рд╛рдзрди рдкреНрд░рджрд╛рди рдХрд░рддреЗ (рд░рдирдЯрд╛рдЗрдо рдореВрд▓рднреВрдд рдкреНрд░рд╛рд░рдВрдн рдЖрдгрд┐ рдорд╛рдирдХ рд▓рд╛рдпрдмреНрд░рд░реАрдЪреА рджреЗрдЦрднрд╛рд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХрдореА рдХреЗрд▓рд╛ рдЬрд╛рддреЛ).

рд░рд╕реНрдЯрдЪреНрдпрд╛ рдореЗрдорд░реА рд╣рд╛рддрд╛рд│рдгреНрдпрд╛рдЪреНрдпрд╛ рдкрджреНрдзрддреА рдкреЙрдЗрдВрдЯрд░ рд╣рд╛рддрд╛рд│рддрд╛рдирд╛ рд╡рд┐рдХрд╛рд╕рдХрд╛рд▓рд╛ рддреНрд░реБрдЯреАрдВрдкрд╛рд╕реВрди рд╡рд╛рдЪрд╡рддрд╛рдд рдЖрдгрд┐ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдореЗрдорд░реА рд╣рд╛рддрд╛рд│рдгреАрдореБрд│реЗ рдЙрджреНрднрд╡рдгрд╛рд▒реНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдВрдкрд╛рд╕реВрди рд╕рдВрд░рдХреНрд╖рдг рдХрд░рддрд╛рдд, рдЬрд╕реЗ рдХреА рдореЗрдорд░реА рдПрд░рд┐рдпрд╛ рдореЛрдХрд│рд╛ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рддреНрдпрд╛рдд рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреЗ, рдирд▓ рдкреЙрдЗрдВрдЯрд░реНрд╕рдЪрд╛ рд╕рдВрджрд░реНрдн рдШреЗрдгреЗ, рдмрдлрд░ рдУрд╡реНрд╣рд░рд░рдиреНрд╕ рдЗ. рд▓рд╛рдпрдмреНрд░рд░реА рд╡рд┐рддрд░реАрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдмрд┐рд▓реНрдб рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдкреНрд░рдХрд▓реНрдк рдХрд╛рд░реНрдЧреЛ рдкреЕрдХреЗрдЬ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЛ. crates.io рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рд▓рд╛рдпрдмреНрд░рд░реАрд╕рд╛рдареА рд╕рдорд░реНрдерд┐рдд рдЖрд╣реЗ.

рд╕рдВрджрд░реНрдн рддрдкрд╛рд╕рдгреА, рдСрдмреНрдЬреЗрдХреНрдЯрдЪреНрдпрд╛ рдорд╛рд▓рдХреАрдЪрд╛ рдорд╛рдЧреЛрд╡рд╛ рдареЗрд╡рдгреЗ, рдСрдмреНрдЬреЗрдХреНрдЯ рд▓рд╛рдЗрдлрдЯрд╛рдЗрдо (рд╕реНрдХреЛрдк) рдЪрд╛ рдорд╛рдЧреЛрд╡рд╛ рдареЗрд╡рдгреЗ рдЖрдгрд┐ рдХреЛрдб рдПрдХреНрдЭрд┐рдХреНрдпреВрд╢рди рджрд░рдореНрдпрд╛рди рдореЗрдорд░реА рдНрдХреНрд╕реЗрд╕рдЪреНрдпрд╛ рдЕрдЪреВрдХрддреЗрдЪреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдгреЗ рдпрд╛рджреНрд╡рд╛рд░реЗ рдореЗрдорд░реА рд╕реБрд░рдХреНрд╖рд┐рддрддрд╛ рд░рд╕реНрдЯрдордзреНрдпреЗ рдХрдВрдкрд╛рдЗрд▓ рд╡реЗрд│реА рдкреНрд░рджрд╛рди рдХреЗрд▓реА рдЬрд╛рддреЗ. рд░рд╕реНрдЯ рдкреВрд░реНрдгрд╛рдВрдХ рдУрд╡реНрд╣рд░рдлреНрд▓реЛрдкрд╛рд╕реВрди рд╕рдВрд░рдХреНрд╖рдг рджреЗрдЦреАрд▓ рдкреНрд░рджрд╛рди рдХрд░рддреЗ, рд╡рд╛рдкрд░рдгреНрдпрд╛рдкреВрд░реНрд╡реА рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рд╡реНрд╣реЕрд▓реНрдпреВрдЬрдЪреЗ рдЕрдирд┐рд╡рд╛рд░реНрдп рдЖрд░рдВрдн рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдорд╛рдирдХ рд▓рд╛рдпрдмреНрд░рд░реАрдордзреНрдпреЗ рддреНрд░реБрдЯреА рдЪрд╛рдВрдЧрд▓реНрдпрд╛ рдкреНрд░рдХрд╛рд░реЗ рд╣рд╛рддрд╛рд│рддреЗ, рдбрд┐рдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╕рдВрджрд░реНрдн рдЖрдгрд┐ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕рдЪреА рд╕рдВрдХрд▓реНрдкрдирд╛ рд▓рд╛рдЧреВ рдХрд░рддреЗ, рддрд╛рд░реНрдХрд┐рдХ рддреНрд░реБрдЯреА рдХрдореА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдордЬрдмреВрдд рд╕реНрдерд┐рд░ рдЯрд╛рдпрдкрд┐рдВрдЧ рдСрдлрд░ рдХрд░рддреЗ.

рдореБрдЦреНрдп рдирд╡рдХрд▓реНрдкрдирд╛:

  • rustc рдХрдВрдкрд╛рдЗрд▓рд░рдордзреНрдпреЗ рдЪрд╛рдЪрдгреА рджрд░рдореНрдпрд╛рди рдХреЛрдб рдХрд╡реНрд╣рд░реЗрдЬрдЪреЗ рдореВрд▓реНрдпрдорд╛рдкрди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ рдХрд╡реНрд╣рд░реЗрдЬ рдбреЗрдЯрд╛ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ рд╕реНрдерд┐рд░ LLVM-рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдгрд╛рд▓реА рдЖрд╣реЗ. рдЕрд╕реЗрдВрдмреНрд▓реА рджрд░рдореНрдпрд╛рди рдХрд╡реНрд╣рд░реЗрдЬ рдбреЗрдЯрд╛ рд╕рдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣реА тАЬ-рд╕рд┐рдВрд╕реНрдЯреНрд░реБрдореЗрдВрдЯ-рдХрд╡реНрд╣рд░реЗрдЬтАЭ рдзреНрд╡рдЬ рд╡рд╛рдкрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, тАЬRUSTFLAGS=тАЭ-C instrument-coverageтАЭ cargo buildтАЭ рдХрдорд╛рдВрдбрд╕рд╣ рдЕрд╕реЗрдВрдмреНрд▓реА рд╕реБрд░реВ рдХрд░рдгреЗ. рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ рд╕рдВрдХрд▓рд┐рдд рдХреЗрд▓реЗрд▓реА рдПрдХреНрдЭрд┐рдХреНрдпреВрдЯреЗрдмрд▓ рдлрд╛рдЗрд▓ рдЪрд╛рд▓рд╡рд▓реНрдпрд╛рдирдВрддрд░, default.profraw рдлрд╛рдЗрд▓ рд╕рдзреНрдпрд╛рдЪреНрдпрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХреЗрдд рд╕реЗрд╡реНрд╣ рдХреЗрд▓реА рдЬрд╛рдИрд▓, рдЬреНрдпрд╛рдЪреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпреЗрд╕рд╛рдареА рддреБрдореНрд╣реА llvm-tools-preview рдШрдЯрдХрд╛рддреАрд▓ llvm-profdata рдпреБрдЯрд┐рд▓рд┐рдЯреА рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛. llvm-profdata рджреНрд╡рд╛рд░реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реЗрд▓реЗ рдЖрдКрдЯрдкреБрдЯ рдирдВрддрд░ llvm-cov рд▓рд╛ рдПрдиреЛрдЯреЗрдЯреЗрдб рдХреЛрдб рдХрд╡реНрд╣рд░реЗрдЬ рдЕрд╣рд╡рд╛рд▓ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкрд╛рд╕ рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ. рд╕реНрддреНрд░реЛрдд рдХреЛрдбрдЪреНрдпрд╛ рджреБрд╡реНрдпрд╛рдмрджреНрджрд▓ рдорд╛рд╣рд┐рддреА рддрдкрд╛рд╕рд▓реНрдпрд╛ рдЬрд╛рдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдПрдХреНрдЭрд┐рдХреНрдпреБрдЯреЗрдмрд▓ рдлрд╛рдЗрд▓рдордзреВрди рдШреЗрддрд▓реА рдЬрд╛рддреЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ рдХрд╡реНрд╣рд░реЗрдЬ рдХрд╛рдЙрдВрдЯрд░ рдЖрдгрд┐ рдХреЛрдб рдпрд╛рдВрдЪреНрдпрд╛рддреАрд▓ рдХрдиреЗрдХреНрд╢рдирдмрджреНрджрд▓ рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЕрд╕рддреЛ. 1| 1|fn рдореБрдЦреНрдп() { 2| 1| println!("рд╣реЕрд▓реЛ, рд╡рд░реНрд▓реНрдб!"); рей| 3|}
  • рдХрд╛рд░реНрдЧреЛ рдкреЕрдХреЗрдЬ рдореЕрдиреЗрдЬрд░рдордзреНрдпреЗ, "-timings" рдзреНрд╡рдЬрд╛рд╕рд╛рдареА рд╕рдорд░реНрдерди рд╕реНрдерд┐рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ рдмрд┐рд▓реНрдбрдЪреНрдпрд╛ рдкреНрд░рдЧрддреАрд╡рд░ рддрдкрд╢реАрд▓рд╡рд╛рд░ рдЕрд╣рд╡рд╛рд▓ рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрдгрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкрд╛рдпрд░реАрдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдЪреА рд╡реЗрд│ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ. рдЕрд╕реЗрдВрдмрд▓реА рдкреНрд░рдХреНрд░рд┐рдпреЗрдЪреНрдпрд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрд╕ рдЕрдиреБрдХреВрд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЕрд╣рд╡рд╛рд▓ рдЙрдкрдпреБрдХреНрдд рдард░реВ рд╢рдХрддреЛ.
  • рдХрд╛рд░реНрдЧреЛ рдкреЕрдХреЗрдЬ рдореЕрдиреЗрдЬрд░ рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдЖрдгрд┐ рдкрд░реНрдпрд╛рдпреА рдЕрд╡рд▓рдВрдмрдирд╛рдВрдЪреНрдпрд╛ рдирд┐рд╡рдбреАрдЪреНрдпрд╛ рдпрдВрддреНрд░рдгреЗрд╕рд╛рдареА рдПрдХ рдирд╡реАрди рд╡рд╛рдХреНрдпрд░рдЪрдирд╛ рдСрдлрд░ рдХрд░рддреЛ, [рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ] рд╡рд┐рднрд╛рдЧрд╛рдд рдирд╛рдорд╛рдВрдХрд┐рдд рдЧреБрдгрдзрд░реНрдорд╛рдВрдЪреА рд╕реВрдЪреА рд╕реВрдЪреАрдмрджреНрдз рдХрд░реВрди рдЖрдгрд┐ рдкреЕрдХреЗрдЬ рдмрд┐рд▓реНрдб рджрд░рдореНрдпрд╛рди рдЧреБрдгрдзрд░реНрдо рд╕рдХреНрд╖рдо рдХрд░реВрди рд╕рдХреНрд░рд┐рдп рдХрд░реВрди Cargo.toml рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХреЗрд▓реЗ рдЬрд╛рддреЗ. тАЬ--featuresтАЭ рдзреНрд╡рдЬ рд╡рд╛рдкрд░реВрди. рдирд╡реАрди рдЖрд╡реГрддреНрддреА рд╕реНрд╡рддрдВрддреНрд░ рдиреЗрдорд╕реНрдкреЗрд╕реЗрд╕ рдЖрдгрд┐ рдХрдордХреБрд╡рдд рдЕрд╡рд▓рдВрдмрдирд╛рдВрд╕рд╛рдареА рдЖрдзрд╛рд░ рдЬреЛрдбрддреЗ.

    рдкрд╣рд┐рд▓реНрдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рдореНрд╣рдгреВрди рдпрд╛ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡рд╛рдЪреЗ рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рди рдХрд░рддрд╛ рдкрд░реНрдпрд╛рдпреА рдЕрд╡рд▓рдВрдмрдирд╛рд╢реА рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рд▓рд┐рдВрдХ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА тАЬ[рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ]тАЭ рд╡рд┐рднрд╛рдЧрд╛рдордзреНрдпреЗ тАЬdep:тАЭ рдЙрдкрд╕рд░реНрдЧ рдЕрд╕рд▓реЗрд▓реЗ рдШрдЯрдХ рд╡рд╛рдкрд░рдгреЗ рд╢рдХреНрдп рдЖрд╣реЗ. рджреБрд╕рд▒реНрдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, тАЬ?тАЭ рдЪрд┐рдиреНрд╣рд╛рд╕рд╣ рдЪрд┐рдиреНрд╣рд╛рдВрдХрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ. ("package-name?/feature-name") рдкрд░реНрдпрд╛рдпреА рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рдЬреНрдпрд╛рдд рдлрдХреНрдд рдХрд╛рд╣реА рдЗрддрд░ рдорд╛рд▓рдорддреНрддреЗрдордзреНрдпреЗ рджрд┐рд▓реЗрд▓реЗ рдкрд░реНрдпрд╛рдпреА рдЕрд╡рд▓рдВрдмрди рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЕрд╕реЗрд▓ рддрд░рдЪ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХреЗрд▓реЗ рдЬрд╛рд╡реЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЦрд╛рд▓реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рдд, serde рдЧреБрдгрдзрд░реНрдо рд╕рдХреНрд╖рдо рдХреЗрд▓реНрдпрд╛рдиреЗ "serde" рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡, рддрд╕реЗрдЪ "rgb" рдЕрд╡рд▓рдВрдмрдирд╛рд╕рд╛рдареА "serde" рдЧреБрдгрдзрд░реНрдо рд╕рдХреНрд╖рдо рд╣реЛрдИрд▓, рдкрд░рдВрддреБ "rgb" рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рдЗрддрд░рддреНрд░ рд╕рдХреНрд╖рдо рдХреЗрд▓реЗ рдЕрд╕рд▓реНрдпрд╛рд╕: [рдЕрд╡рд▓рдВрдмрди] serde = { рдЖрд╡реГрддреНрддреА = " 1.0.133", рдкрд░реНрдпрд╛рдпреА = рд╕рддреНрдп } rgb = { рдЖрд╡реГрддреНрддреА = "0.8.25", рдкрд░реНрдпрд╛рдпреА = рд╕рддреНрдп } [рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ] serde = ["dep:serde", "rgb?/serde"]

  • рд╡рд╛рдвреАрд╡ рд╕рдВрдХрд▓рдирд╛рд╕рд╛рдареА рд╕рдорд░реНрдерди, рдЬреЗ рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рдкреНрд░рдХрд╛рд╢рдирд╛рдд рдЕрдХреНрд╖рдо рдХреЗрд▓реЗ рд╣реЛрддреЗ, рдкрд░рдд рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ. рдХрдВрдкрд╛рдЗрд▓рд░ рдмрдЧ рдЬреНрдпрд╛рдореБрд│реЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рдЕрдХреНрд╖рдо рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ рддреНрдпрд╛рдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ.
  • рдореЛрдиреЛрдЯреЛрдирд┐рдХ рд╡реЗрд│реЗрдЪреНрдпрд╛ рд╣рдореАрд╕рд╣ рдЭрдЯрдкрдЯ рдЯрд╛рдпрдорд░ рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдХрд╛рд╣реА рд╕рдорд╕реНрдпрд╛рдВрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХреЗрд▓реЗ, рдЬреЗ рд╕рд┐рд╕реНрдЯрдорджреНрд╡рд╛рд░реЗ рд╕реНрд▓реАрдк рдореЛрдбрдордзреНрдпреЗ рдШрд╛рд▓рд╡рд▓реЗрд▓рд╛ рд╡реЗрд│ рд╡рд┐рдЪрд╛рд░рд╛рдд рдШреЗрддреЗ. рдкреВрд░реНрд╡реА, рдЯрд╛рдпрдорд░ рдСрдкрд░реЗрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЬреЗрд╡реНрд╣рд╛ рд╢рдХреНрдп рдЕрд╕реЗрд▓ рддреЗрд╡реНрд╣рд╛ OS API рдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓рд╛ рдЬрд╛рдд рдЕрд╕реЗ, рдЬреНрдпрд╛рдиреЗ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рд╕рдорд╕реНрдпрд╛, рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓рд╛рдпрдЭреЗрд╢рдирдЪрд╛ рд╡рд╛рдкрд░ рдХрд┐рдВрд╡рд╛ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдордордзреАрд▓ рддреНрд░реБрдЯреА рдпрд╛рд╕рд╛рд░рдЦреНрдпрд╛ рд╡реЗрд│реЗрдЪреА рдПрдХрд╕рдВрдзрддрд╛ рдореЛрдбрдгрд╛рд░реА рд╕рдорд╕реНрдпрд╛рдкреНрд░рдзрд╛рди рдкрд░рд┐рд╕реНрдерд┐рддреА рд╡рд┐рдЪрд╛рд░рд╛рдд рдШреЗрддрд▓реА рдирд╛рд╣реА.
  • API рдЪрд╛ рдПрдХ рдирд╡реАрди рднрд╛рдЧ рд╕реНрдерд┐рд░ рд╢реНрд░реЗрдгреАрдордзреНрдпреЗ рд╣рд▓рд╡рд┐рд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ рдкрджреНрдзрддреА рдЖрдгрд┐ рдЧреБрдгрдзрд░реНрдорд╛рдВрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рд╕реНрдерд┐рд░ рдХреЗрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ:
    • рдЖрд░реНрдХ::рдиреНрдпреВ_рд╕рд╛рдпрдХреНрд▓рд┐рдХ
    • Rc::new_cyclic
    • рд╕реНрд▓рд╛рдЗрд╕::EscapeAscii
    • ::escape_ascii
    • u8::escape_ascii
    • Vec::spare_capacity_mut
    • рдХрджрд╛рдЪрд┐рддUninit::assume_init_drop
    • рдХрджрд╛рдЪрд┐рддUninit::assume_init_read
    • i8::abs_diff
    • i16::abs_diff
    • i32::abs_diff
    • i64::abs_diff
    • i128::abs_diff
    • isize::abs_diff
    • u8::abs_diff
    • u16::abs_diff
    • u32::abs_diff
    • u64::abs_diff
    • u128::abs_diff
    • рд╡рд╛рдкрд░рд╛::abs_diff
    • io::ErrorKind рд╕рд╛рдареА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рд╛
    • ExitCode рд╕рд╛рдареА рдкрд╛рд╕реВрди
    • рд╕рд╛рдареА рдирд╛рд╣реА! ("рдХрдзреАрд╣реА рдирд╛рд╣реА" рдЯрд╛рдЗрдк рдХрд░рд╛)
    • _Op_Asign
    • arch::is_aarch64_feature_detected!
  • mips64-openwrt-linux-musl* рдЖрдгрд┐ armv7-unknown-linux-uclibceabi (рд╕реЙрдлреНрдЯрдлреНрд▓реЛрдЯ) рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╕рд╛рдареА рд╕рдорд░реНрдердирд╛рдЪрд╛ рддрд┐рд╕рд░рд╛ рд╕реНрддрд░ рд▓рд╛рдЧреВ рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ. рддрд┐рд╕рд▒реНрдпрд╛ рд╕реНрддрд░рд╛рдордзреНрдпреЗ рдореВрд▓рднреВрдд рд╕рдорд░реНрдерди рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ, рдкрд░рдВрддреБ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреАрд╢рд┐рд╡рд╛рдп, рдЕрдзрд┐рдХреГрдд рдмрд┐рд▓реНрдб рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдгреЗ рдХрд┐рдВрд╡рд╛ рдХреЛрдб рддрдпрд╛рд░ рдХреЗрд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ рдХреА рдирд╛рд╣реА рд╣реЗ рддрдкрд╛рд╕рдгреЗ.
  • рдХрдВрдкрд╛рдЗрд▓рд░рд▓рд╛ LLVM 14 рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрд╡рд┐рдЪ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ.

рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рдЖрдкрдг рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрдК рд╢рдХрддрд╛:

  • rustc_codegen_gcc рдмреЕрдХрдПрдВрдбрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди rustc рдХрдВрдкрд╛рдЗрд▓рд░ рдмреВрдЯрд╕реНрдЯреНрд░реЕрдкрд┐рдВрдЧрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЖрд╣реЗ, рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ GCC рдкреНрд░рдХрд▓реНрдкрд╛рддреАрд▓ libgccjit рд▓рд╛рдпрдмреНрд░рд░реАрдЪрд╛ рд╡рд╛рдкрд░ rustc рдордзреНрдпреЗ рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рдореНрд╣рдгреВрди рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ, рдЬреЗ rustc рд▓рд╛ GCC рдордзреНрдпреЗ рдЙрдкрд▓рдмреНрдз рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░реНрд╕ рдЖрдгрд┐ рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рдирд╕рд╛рдареА рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ. рдХрдВрдкрд╛рдЗрд▓рд░ рдкреНрд░рдореЛрд╢рди рдореНрд╣рдгрдЬреЗ rustc рдордзреНрдпреЗ GCC-рдЖрдзрд╛рд░рд┐рдд рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ rustc рдХрдВрдкрд╛рдЗрд▓рд░ рд╕реНрд╡рддрдГ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА. рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдмрд╛рдЬреВрдиреЗ, рд╣реЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рддреБрдореНрд╣рд╛рд▓рд╛ рдкреВрд░реНрд╡реА rustc рдордзреНрдпреЗ рд╕рдорд░реНрдерд┐рдд рдирд╕рд▓реЗрд▓реНрдпрд╛ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╕рд╛рдареА рд░рд╕реНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдо рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ.
  • uutils coreutils 0.0.13 рдЯреВрд▓рдХрд┐рдЯрдЪреЗ рдкреНрд░рдХрд╛рд╢рди рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ GNU Coreutils рдкреЕрдХреЗрдЬрдЪреЗ рдПрдирд╛рд▓реЙрдЧ, рд░рд╕реНрдЯ рднрд╛рд╖реЗрдд рдкреБрдиреНрд╣рд╛ рд▓рд┐рд╣рд┐рд▓реЗрд▓реЗ, рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдд рдЖрд╣реЗ. Coreutils рд╕реЙрд░реНрдЯ, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, рдЖрдгрд┐ ls рдпрд╛рд╕рд╣ рд╢рдВрднрд░рд╣реВрди рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрддрддрд╛рдВрд╕рд╣ рдпреЗрддрд╛рдд. GPL рдХреЙрдкреАрд▓рд┐рдлреНрдЯ рдкрд░рд╡рд╛рдиреНрдпрд╛рдРрд╡рдЬреА, Windows, Redox рдЖрдгрд┐ Fuchsia рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╡рд░ рдЪрд╛рд▓рдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо, рддрд╕реЗрдЪ рдЕрдиреБрдЬреНрдЮреЗрдп MIT рд▓рд╛рдпрд╕рдиреНрд╕ рдЕрдВрддрд░реНрдЧрдд рд╡рд┐рддрд░рдг, Coreutils рдЪреЗ рдХреНрд░реЙрд╕-рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рдкрд░реНрдпрд╛рдпреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рддрдпрд╛рд░ рдХрд░рдгреЗ рд╣реЗ рдкреНрд░рдХрд▓реНрдкрд╛рдЪреЗ рдзреНрдпреЗрдп рдЖрд╣реЗ.

    рдирд╡реАрди рдЖрд╡реГрддреНрддреАрдиреЗ рдЕрдиреЗрдХ рдЙрдкрдпреБрдХреНрддрддрд╛рдВрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рд╕реБрдзрд╛рд░рд▓реА рдЖрд╣реЗ, рдЬреНрдпрд╛рдд Cp, dd, df, рд╕реНрдкреНрд▓рд┐рдЯ рдЖрдгрд┐ tr рдпреБрдЯрд┐рд▓рд┐рдЯрд┐рдЬрдЪреНрдпрд╛ GNU рдкреНрд░рдХрд▓реНрдкрд╛рддреАрд▓ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╕рдордХрдХреНрд╖рд╛рдВрд╕рд╣ рд▓рдХреНрд╖рдгреАрдп рд╕реБрдзрд╛рд░рд┐рдд рд╕реБрд╕рдВрдЧрддрддрд╛ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ. рдСрдирд▓рд╛рдЗрди рдХрд╛рдЧрджрдкрддреНрд░реЗ рдкреНрд░рджрд╛рди рдХреЗрд▓реА. рдХреНрд▓реЕрдк рдкрд╛рд░реНрд╕рд░рдЪрд╛ рд╡рд╛рдкрд░ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЖрд░реНрдЧреНрдпреБрдореЗрдВрдЯреНрд╕ рдкрд╛рд░реНрд╕ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЗрд▓рд╛ рдЬрд╛рддреЛ, рдЬреНрдпрд╛рдиреЗ тАЬ--helpтАЭ рдлреНрд▓реЕрдЧрд╕рд╛рдареА рдЖрдЙрдЯрдкреБрдЯ рд╕реБрдзрд╛рд░рд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ рд▓рд╛рдВрдм рдХрдорд╛рдВрдбреНрд╕рдЪреНрдпрд╛ рд╕рдВрдХреНрд╖реЗрдкрд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЖрд╣реЗ (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рддреБрдореНрд╣реА тАЬls -colorтАЭ рдРрд╡рдЬреА тАЬls -colтАЭ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВ рд╢рдХрддрд╛. тАЭ).

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛