Команда Rust с радостью сообщает о выпуске новой версии языка Rust 1.69.0. Rust - это язык программирования, позволяющий всем создавать надежное и эффективное программное обеспечение.

Cargo теперь предлагает автоматически исправлять некоторые предупреждения.

Rust 1.69.0 добавил команду cargo fix, чтобы автоматически исправлять некоторые простые предупреждения компилятора. Кроме того, была добавлена поддержка автоматического исправления некоторых простых предупреждений Clippy. Чтобы привлечь больше внимания к этим возможностям, Cargo теперь будет предлагать запустить cargo fix или cargo clippy --fix при обнаружении автоматически исправляемых предупреждений:

warning: unused import: `std::hash::Hash`
 --> src/main.rs:1:5
  |
1 | use std::hash::Hash;
  |     ^^^^^^^^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default
  
  warning: `foo` (bin "foo") generated 1 warning (run `cargo fix --bin "foo"` to apply 1 suggestion)

Обратите внимание, что полный вызов Cargo, показанный выше, необходим только если вы хотите точно применить исправления к одному крейту. Если вы хотите применить исправления ко всем крейтам из рабочего пространства по умолчанию, тогда достаточно просто использовать команду cargo fix (без дополнительных аргументов).

Отладочная информация больше не включена в сценарии сборки по умолчанию.

Для увеличения скорости компиляции, Cargo теперь по умолчанию не выводит отладочную информацию в скриптах сборки. Это не окажет заметного эффекта, если скрипты сборки успешно выполняются, но трассировки стека в скриптах сборки будут содержать меньше информации.

Если вы хотите отладить скрипт сборки, вы можете добавить фрагмент опций в свой Cargo.toml, чтобы снова выводить отладочную информацию:

[profile.dev.build-override]
debug = true
[profile.release.build-override]
debug = true

API переведённые в разряд стабильных:

  • CStr::from_bytes_until_nul

  • core::ffi::FromBytesUntilNulError

Данные API теперь могут быть использованы в статических контекстах.
API позволяющие использовать как тип данных "const" в любом контексте.

  • SocketAddr::new

  • SocketAddr::ip

  • SocketAddr::port

  • SocketAddr::is_ipv4

  • SocketAddr::is_ipv6

  • SocketAddrV4::new

  • SocketAddrV4::ip

  • SocketAddrV4::port

  • SocketAddrV6::new

  • SocketAddrV6::ip

  • SocketAddrV6::port

  • SocketAddrV6::flowinfo

  • SocketAddrV6::scope_id

Все остальные изменения найдёте тут: RustCargoClippy.

Комментарии (2)


  1. orekh
    21.04.2023 05:08
    +7

    Перевод машинный, либо переводчик не знает Rust.


    1. andreymal
      21.04.2023 05:08
      +5

      Rust 1.29.0 added the cargo fix subcommand
      Rust 1.69.0 добавил команду cargo fix

      Не, машинный перевод не умеет делать такие ошибки)