Rust: Erzwingen Sie keinen snake_case für binäre Namen

Erstellt am 9. Okt. 2017  ·  3Kommentare  ·  Quelle: rust-lang/rust

Wenn Sie derzeit eine Cargo.toml wie diese haben:

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

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

rustc wird sich beschweren:

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

Ich verstehe, warum dies für Bibliothekskisten sinnvoll ist, um eine gemeinsame Namenskonvention für Rostbibliotheken und Quellcode durchzusetzen. Aber es macht nicht viel Sinn, dies auch für Binärdateien zu erzwingen, da dies keinen wirklichen Vorteil bringt (beachten Sie, dass der Crate-Name nicht camelCase ist, sondern nur der Binärname).


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

Hilfreichster Kommentar

Die Richtlinie sollte für ausführbare Dateien und cdylibs gleichermaßen gelten.

Es wäre auch toll, wenn Sie #[warn(non_snake_case)] nur für den Kistennamen ausschalten könnten. Wenn ich auf der obersten Ebene #![allow(non_snake_case)] verwende, werden die Fusseln für meine gesamte Kiste deaktiviert.

Alle 3 Kommentare

Ich habe mich tatsächlich mit diesem beschäftigt und würde es gerne übernehmen, wenn das Rust-Team zustimmt, dass es passieren sollte.

Im Moment wird beim Erstellen einer Binärdatei [[bin]]::name als --crate-name -Argument übergeben. Ich habe an zwei Möglichkeiten gedacht, dies anzugehen.

  1. Erzwingen Sie beim Erstellen einer Binärdatei nicht die Regel snake_case
  2. Fügen Sie ein optionales --bin-name -Flag hinzu, das zum Benennen der resultierenden Binärdatei verwendet werden kann. Standardmäßig zurück auf --crate-name . Dies würde eine Abstimmung mit der Fracht erfordern.

Ich persönlich bevorzuge 2.

Die Richtlinie sollte für ausführbare Dateien und cdylibs gleichermaßen gelten.

Es wäre auch toll, wenn Sie #[warn(non_snake_case)] nur für den Kistennamen ausschalten könnten. Wenn ich auf der obersten Ebene #![allow(non_snake_case)] verwende, werden die Fusseln für meine gesamte Kiste deaktiviert.

Die Richtlinie sollte für ausführbare Dateien und cdylibs gleichermaßen gelten.

Es wäre auch toll, wenn Sie #[warn(non_snake_case)] nur für den Kistennamen ausschalten könnten. Wenn ich auf der obersten Ebene #![allow(non_snake_case)] verwende, werden die Fusseln für meine gesamte Kiste deaktiviert.

Stimmen Sie zu, gibt es eine Möglichkeit, diese Warnung für den Kistennamen während des Frachtbaus zu deaktivieren?

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen