Rust: Não imponha snake_case para nomes binários

Criado em 9 out. 2017  ·  3Comentários  ·  Fonte: rust-lang/rust

Atualmente, se você tiver um Cargo.toml como este:

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

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

rustc irá reclamar:

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

Eu entendo por que isso é razoável para caixas de biblioteca, para impor uma convenção de nomenclatura comum para bibliotecas de ferrugem e código-fonte. Mas não faz muito sentido impor isso também para binários, pois não há nenhuma vantagem real em fazê-lo (observe que o nome da caixa não é camelCase, apenas o nome binário é).


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

Comentários muito úteis

A política deve ser aplicada a executáveis ​​e CDylib's.

Também seria ótimo se você pudesse desativar #[warn(non_snake_case)] apenas para o nome da caixa. Se eu usar #![allow(non_snake_case)] no nível superior, isso desativará o fiapo de toda a minha caixa.

Todos 3 comentários

Na verdade, tenho pesquisado sobre isso e ficaria feliz em aceitar, se a equipe da Rust concordar que isso deve acontecer.

Agora, construir um binário passa [[bin]]::name como o argumento --crate-name . Eu pensei em duas maneiras de lidar com isso.

  1. Não aplique a regra snake_case ao construir um binário
  2. Adicione um sinalizador opcional --bin-name que pode ser usado para nomear o binário resultante. O padrão volta para --crate-name . Isso exigiria coordenação com a carga.

Pessoalmente, prefiro 2.

A política deve ser aplicada a executáveis ​​e CDylib's.

Também seria ótimo se você pudesse desativar #[warn(non_snake_case)] apenas para o nome da caixa. Se eu usar #![allow(non_snake_case)] no nível superior, isso desativará o fiapo de toda a minha caixa.

A política deve ser aplicada a executáveis ​​e CDylib's.

Também seria ótimo se você pudesse desativar #[warn(non_snake_case)] apenas para o nome da caixa. Se eu usar #![allow(non_snake_case)] no nível superior, isso desativará o fiapo de toda a minha caixa.

Concordo, existe uma maneira de desativar este aviso para o nome da caixa enquanto a carga é construída?

Esta página foi útil?
0 / 5 - 0 avaliações