Rust: Ne pas appliquer snake_case pour les noms binaires

Créé le 9 oct. 2017  ·  3Commentaires  ·  Source: rust-lang/rust

Actuellement, si vous avez un Cargo.toml comme celui-ci :

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

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

rustc se plaindra :

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

Je comprends pourquoi cela est raisonnable pour les caisses de bibliothèques, pour appliquer une convention de dénomination commune pour les bibliothèques de rouille et le code source. Mais cela n'a pas beaucoup de sens de l'appliquer également aux binaires, car il n'y a aucun avantage réel à le faire (notez que le nom de la caisse n'est pas camelCase, seul le nom binaire l'est).


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

Commentaire le plus utile

La politique doit s'appliquer aux exécutables et aux cdylib.

Ce serait également formidable si vous pouviez désactiver #[warn(non_snake_case)] pour le nom de la caisse uniquement. Si j'utilise #![allow(non_snake_case)] au niveau supérieur, cela désactive la charpie pour l'ensemble de ma caisse.

Tous les 3 commentaires

J'ai en fait creusé celui-ci et je serais heureux de le prendre en charge, si l'équipe Rust est d'accord pour que cela se produise.

À l'heure actuelle, la construction d'un binaire passe [[bin]]::name comme argument --crate-name . J'ai pensé à deux façons d'aborder cela.

  1. Ne pas appliquer la règle snake_case lors de la construction d'un binaire
  2. Ajoutez un drapeau facultatif --bin-name qui peut être utilisé pour nommer le binaire résultant. Revient par défaut à --crate-name . Cela nécessiterait une coordination avec la cargaison.

Personnellement, je préfère les 2.

La politique doit s'appliquer aux exécutables et aux cdylib.

Ce serait également formidable si vous pouviez désactiver #[warn(non_snake_case)] pour le nom de la caisse uniquement. Si j'utilise #![allow(non_snake_case)] au niveau supérieur, cela désactive la charpie pour l'ensemble de ma caisse.

La politique doit s'appliquer aux exécutables et aux cdylib.

Ce serait également formidable si vous pouviez désactiver #[warn(non_snake_case)] pour le nom de la caisse uniquement. Si j'utilise #![allow(non_snake_case)] au niveau supérieur, cela désactive la charpie pour l'ensemble de ma caisse.

D'accord, existe-t-il un moyen de désactiver cet avertissement pour le nom de la caisse pendant la construction de la cargaison ?

Cette page vous a été utile?
0 / 5 - 0 notes