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)
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.
--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?
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.