naming_convention
UpdatedA name in a case other than the one [lint.naming] sets for its kind.
Naming. [lint.naming] gives each kind of name a case style, or a list of styles, and a name passes when it fits one of them. The defaults follow Rust. A local, a function, a method, a parameter, a field, an attribute, and a macro take snake_case. A struct, an enum, a variant, a trait, an interface, a type, a namespace, and a remote take PascalCase. A const takes snake_case or SCREAMING_SNAKE_CASE, because Alloy marks any binding that the file never assigns again as const. A local that nothing assigns again takes the const style too, while prefer_const or [fmt] prefer_const is on, since either one makes it a const.
A name that starts with _ does not fire. A local bound to require(...) or :GetService(...) takes the case of its module or service, so local Players does not fire. In an .alx file a function that returns markup, or that a tag names, is a component and takes the component style, PascalCase by default. A method in the impl of a trait takes its name from the trait.
alloy flux --fix and alloy fmt rename the name to the first style of its list, at each place the file reads it. The rename stays in the scope of a local or a parameter, and skips a scope that shadows it. It writes nothing when another file or saved data reads the name, so an export, a field, a variant, a method, a remote, an attribute, a macro, and a namespace member keep the lint alone. So does a declaration under an attribute other than @allow, such as @test, because the runtime may read its name. It also writes nothing when the new name is already in the file, or is a keyword or a Luau global. [fmt] fix_naming = false stops the renames of alloy fmt.
The lint answers to its old names, camel_case_name, type_case, and pascal_case_function, and to rustc's non_snake_case, non_camel_case_types, and non_upper_case_globals. So @allow(non_snake_case) quiets it. alloy doc naming-conventions lists the keys of [lint.naming].
Set its level in the [lint] table of alloy.toml, or for one file with --@alloy-lint.
