Rust: No apliques snake_case para nombres binarios

Creado en 9 oct. 2017  ·  3Comentarios  ·  Fuente: rust-lang/rust

Actualmente, si tiene un Cargo.toml como este:

[package]
name = "some_package"
version = "0.0.0"

[[bin]]
name = "somePackage"
path = "src/main.rs"

rustc se quejará:

warning: crate `somePackage` should have a snake case name such as `some_package`
  |
  = note: #[warn(non_snake_case)] on by default

Entiendo por qué esto es razonable para las cajas de biblioteca, para hacer cumplir una convención de nomenclatura común para las bibliotecas de óxido y el código fuente. Pero no tiene mucho sentido hacer cumplir esto también para los binarios, ya que no hay una ventaja real al hacerlo (tenga en cuenta que el nombre de la caja no es camelCase, solo lo es el nombre binario).


$ rustc --version
rustc 1.22.0-nightly (05f8ddc46 2017-10-07)
A-lint C-feature-request

Comentario más útil

La política debe aplicarse a los ejecutables y cdylib por igual.

También sería genial si pudiera desactivar #[warn(non_snake_case)] solo para el nombre de la caja. Si uso #![allow(non_snake_case)] en el nivel superior, eso deshabilita la pelusa para toda mi caja.

Todos 3 comentarios

De hecho, he estado investigando este y estaría feliz de asumirlo, si el equipo de Rust está de acuerdo en que debería suceder.

En este momento, construir un binario pasa [[bin]]::name como el argumento --crate-name . He pensado en dos formas de abordar esto.

  1. No haga cumplir la regla snake_case cuando construya un binario
  2. Agregue un indicador opcional --bin-name que se puede usar para nombrar el binario resultante. El valor predeterminado vuelve a ser --crate-name . Esto requeriría coordinación con la carga.

Personalmente, prefiero 2.

La política debe aplicarse a los ejecutables y cdylib por igual.

También sería genial si pudiera desactivar #[warn(non_snake_case)] solo para el nombre de la caja. Si uso #![allow(non_snake_case)] en el nivel superior, eso deshabilita la pelusa para toda mi caja.

La política debe aplicarse a los ejecutables y cdylib por igual.

También sería genial si pudiera desactivar #[warn(non_snake_case)] solo para el nombre de la caja. Si uso #![allow(non_snake_case)] en el nivel superior, eso deshabilita la pelusa para toda mi caja.

De acuerdo, ¿hay alguna forma de desactivar esta advertencia para el nombre de la caja mientras se construye la carga?

¿Fue útil esta página
0 / 5 - 0 calificaciones