#17449·cargo

non_kebab_case_bins should be allow-by-default

Author: Sherlock-HoloCreated Sep 7, 2026Updated Sep 15, 2026
LabelsC-bugA-lintsS-triage

Problem

after update the cargo

it reports something like

warning: binary `history_clipboard_coordinator` should have a kebab-case name
   |
 1 | /home/sherlock/git/history_clipboard/target/.../history_clipboard_coordinator
   |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: `cargo::non_kebab_case_bins` is set to `warn` by default
help: to change the binary name to `history-clipboard-coordinator`, convert `package.name`
  --> coordinator/Cargo.toml:2:8
   |
 2 - name = "history_clipboard_coordinator"
 2 + name = "history-clipboard-coordinator"
   |
help: to change the binary name to `history-clipboard-coordinator`, specify `bin.name`
  --> coordinator/Cargo.toml:23:39
   |
23 ~ features = ["http1", "json", "tokio"]
24 + [[bin]]
25 + name = "history-clipboard-coordinator"
26 + path = "src/main.rs

that will break many exists projects: the exists codes has no warn/error problems, but after update the cargo, many warn messages appeared

Steps

  1. run cargo in any existing project, when it has a binary and the name is not kebab-case, the cargo will report the warn messages

Possible Solution(s)

disable non_kebab_case_bins lint by default

Notes

No response

Version

cargo 1.100.0-nightly (3c0b53475 2026-09-04)
release: 1.100.0-nightly
commit-hash: 3c0b534756e166d12eb9fd2e1abfe5b42ac6101e
commit-date: 2026-09-04
host: x86_64-unknown-linux-gnu
libgit2: 1.9.6 (sys:0.21.0 vendored)
libcurl: 8.21.0-DEV (sys:0.4.90+curl-8.21.0 vendored ssl:OpenSSL/3.6.3)
ssl: OpenSSL 3.6.3 9 Jun 2026
os: Arch Linux [64-bit]