lints

`rustc` lints.
git clone https://git.philomathiclife.com/repos/lints
Log | Files | Refs | README

Cargo.toml (7962B)


      1 [package]
      2 authors = ["Zack Newman <zack@philomathiclife.com>"]
      3 categories = ["command-line-utilities", "development-tools", "rust-patterns"]
      4 description = "Writes [lints.rust] to stdout such that all lints are denied or allowed."
      5 documentation = "https://crates.io/crates/lints/"
      6 edition = "2024"
      7 keywords = ["lints", "rust"]
      8 license = "MIT OR Apache-2.0"
      9 name = "lints"
     10 readme = "README.md"
     11 repository = "https://git.philomathiclife.com/repos/lints/"
     12 rust-version = "1.93.0"
     13 version = "0.3.0"
     14 
     15 [lints.rust]
     16 deprecated-safe = { level = "deny", priority = -1 }
     17 future-incompatible = { level = "deny", priority = -1 }
     18 keyword-idents = { level = "deny", priority = -1 }
     19 let-underscore = { level = "deny", priority = -1 }
     20 nonstandard-style = { level = "deny", priority = -1 }
     21 refining-impl-trait = { level = "deny", priority = -1 }
     22 rust-2018-compatibility = { level = "deny", priority = -1 }
     23 rust-2018-idioms = { level = "deny", priority = -1 }
     24 rust-2021-compatibility = { level = "deny", priority = -1 }
     25 rust-2024-compatibility = { level = "deny", priority = -1 }
     26 unknown-or-malformed-diagnostic-attributes = { level = "deny", priority = -1 }
     27 unused = { level = "deny", priority = -1 }
     28 warnings = { level = "deny", priority = -1 }
     29 ambiguous-negative-literals = { level = "deny", priority = -1 }
     30 closure-returning-async-block = { level = "deny", priority = -1 }
     31 deprecated-in-future = { level = "deny", priority = -1 }
     32 deref-into-dyn-supertrait = { level = "deny", priority = -1 }
     33 ffi-unwind-calls = { level = "deny", priority = -1 }
     34 #fuzzy-provenance-casts = { level = "deny", priority = -1 }
     35 impl-trait-redundant-captures = { level = "deny", priority = -1 }
     36 linker-messages = { level = "deny", priority = -1 }
     37 #lossy-provenance-casts = { level = "deny", priority = -1 }
     38 macro-use-extern-crate = { level = "deny", priority = -1 }
     39 meta-variable-misuse = { level = "deny", priority = -1 }
     40 missing-copy-implementations = { level = "deny", priority = -1 }
     41 missing-debug-implementations = { level = "deny", priority = -1 }
     42 missing-docs = { level = "deny", priority = -1 }
     43 #multiple-supertrait-upcastable = { level = "deny", priority = -1 }
     44 #must-not-suspend = { level = "deny", priority = -1 }
     45 non-ascii-idents = { level = "deny", priority = -1 }
     46 #non-exhaustive-omitted-patterns = { level = "deny", priority = -1 }
     47 redundant-imports = { level = "deny", priority = -1 }
     48 redundant-lifetimes = { level = "deny", priority = -1 }
     49 #resolving-to-items-shadowing-supertrait-items = { level = "deny", priority = -1 }
     50 #shadowing-supertrait-items = { level = "deny", priority = -1 }
     51 single-use-lifetimes = { level = "deny", priority = -1 }
     52 trivial-casts = { level = "deny", priority = -1 }
     53 trivial-numeric-casts = { level = "deny", priority = -1 }
     54 unit-bindings = { level = "deny", priority = -1 }
     55 unnameable-types = { level = "deny", priority = -1 }
     56 #unqualified-local-imports = { level = "deny", priority = -1 }
     57 unreachable-pub = { level = "deny", priority = -1 }
     58 unsafe-code = { level = "deny", priority = -1 }
     59 unstable-features = { level = "deny", priority = -1 }
     60 unused-crate-dependencies = { level = "deny", priority = -1 }
     61 unused-import-braces = { level = "deny", priority = -1 }
     62 unused-lifetimes = { level = "deny", priority = -1 }
     63 unused-qualifications = { level = "deny", priority = -1 }
     64 unused-results = { level = "deny", priority = -1 }
     65 variant-size-differences = { level = "deny", priority = -1 }
     66 # Before publishing to crates.io, comment above and uncomment below.
     67 #warnings = { level = "allow", priority = -1 }
     68 #ambiguous-associated-items = { level = "allow", priority = -1 }
     69 #ambiguous-glob-imports = { level = "allow", priority = -1 }
     70 #arithmetic-overflow = { level = "allow", priority = -1 }
     71 #binary-asm-labels = { level = "allow", priority = -1 }
     72 #bindings-with-variant-name = { level = "allow", priority = -1 }
     73 #conflicting-repr-hints = { level = "allow", priority = -1 }
     74 #dangerous-implicit-autorefs = { level = "allow", priority = -1 }
     75 #default-overrides-default-fields = { level = "allow", priority = -1 }
     76 #dependency-on-unit-never-type-fallback = { level = "allow", priority = -1 }
     77 #deref-nullptr = { level = "allow", priority = -1 }
     78 #elided-lifetimes-in-associated-constant = { level = "allow", priority = -1 }
     79 #enum-intrinsics-non-enums = { level = "allow", priority = -1 }
     80 #explicit-builtin-cfgs-in-flags = { level = "allow", priority = -1 }
     81 #ill-formed-attribute-input = { level = "allow", priority = -1 }
     82 #incomplete-include = { level = "allow", priority = -1 }
     83 #ineffective-unstable-trait-impl = { level = "allow", priority = -1 }
     84 #invalid-atomic-ordering = { level = "allow", priority = -1 }
     85 #invalid-doc-attributes = { level = "allow", priority = -1 }
     86 #invalid-from-utf8-unchecked = { level = "allow", priority = -1 }
     87 #invalid-macro-export-arguments = { level = "allow", priority = -1 }
     88 #invalid-null-arguments = { level = "allow", priority = -1 }
     89 #invalid-reference-casting = { level = "allow", priority = -1 }
     90 #invalid-type-param-default = { level = "allow", priority = -1 }
     91 #legacy-derive-helpers = { level = "allow", priority = -1 }
     92 #let-underscore-lock = { level = "allow", priority = -1 }
     93 #long-running-const-eval = { level = "allow", priority = -1 }
     94 #macro-expanded-macro-exports-accessed-by-absolute-paths = { level = "allow", priority = -1 }
     95 #mutable-transmutes = { level = "allow", priority = -1 }
     96 #named-asm-labels = { level = "allow", priority = -1 }
     97 #never-type-fallback-flowing-into-unsafe = { level = "allow", priority = -1 }
     98 #no-mangle-const-items = { level = "allow", priority = -1 }
     99 #out-of-scope-macro-calls = { level = "allow", priority = -1 }
    100 #overflowing-literals = { level = "allow", priority = -1 }
    101 #patterns-in-fns-without-body = { level = "allow", priority = -1 }
    102 #proc-macro-derive-resolution-fallback = { level = "allow", priority = -1 }
    103 #pub-use-of-private-extern-crate = { level = "allow", priority = -1 }
    104 #repr-transparent-non-zst-fields = { level = "allow", priority = -1 }
    105 #semicolon-in-expressions-from-macros = { level = "allow", priority = -1 }
    106 #soft-unstable = { level = "allow", priority = -1 }
    107 #test-unstable-lint = { level = "allow", priority = -1 }
    108 #text-direction-codepoint-in-comment = { level = "allow", priority = -1 }
    109 #text-direction-codepoint-in-literal = { level = "allow", priority = -1 }
    110 #unconditional-panic = { level = "allow", priority = -1 }
    111 #undropped-manually-drops = { level = "allow", priority = -1 }
    112 #unknown-crate-types = { level = "allow", priority = -1 }
    113 #useless-deprecated = { level = "allow", priority = -1 }
    114 
    115 # Before publishing to crates.io, comment below.
    116 [lints.clippy]
    117 cargo = { level = "deny", priority = -1 }
    118 complexity = { level = "deny", priority = -1 }
    119 correctness = { level = "deny", priority = -1 }
    120 nursery = { level = "deny", priority = -1 }
    121 pedantic = { level = "deny", priority = -1 }
    122 perf = { level = "deny", priority = -1 }
    123 restriction = { level = "deny", priority = -1 }
    124 style = { level = "deny", priority = -1 }
    125 suspicious = { level = "deny", priority = -1 }
    126 # Noisy, opinionated, and likely don't prevent bugs or improve APIs.
    127 arbitrary_source_item_ordering = "allow"
    128 blanket_clippy_restriction_lints = "allow"
    129 implicit_return = "allow"
    130 min_ident_chars = "allow"
    131 missing_trait_methods = "allow"
    132 pub_with_shorthand = "allow"
    133 redundant_pub_crate = "allow"
    134 return_and_then = "allow"
    135 single_call_fn = "allow"
    136 single_char_lifetime_names = "allow"
    137 unseparated_literal_suffix = "allow"
    138 
    139 [package.metadata.docs.rs]
    140 default-target = "x86_64-unknown-linux-gnu"
    141 targets = [
    142   "aarch64-apple-darwin",
    143   "aarch64-pc-windows-msvc",
    144   "aarch64-unknown-linux-gnu",
    145   "i686-pc-windows-msvc",
    146   "i686-unknown-linux-gnu",
    147   "x86_64-pc-windows-gnu",
    148   "x86_64-pc-windows-msvc",
    149   "x86_64-unknown-freebsd",
    150   "x86_64-unknown-linux-musl",
    151   "x86_64-unknown-netbsd"
    152 ]
    153 
    154 [target.'cfg(target_os = "openbsd")'.dependencies]
    155 priv_sep = { version = "3.0.0-alpha.4.1", default-features = false, features = ["std"] }
    156 
    157 [profile.release]
    158 codegen-units = 1
    159 lto = true
    160 panic = 'abort'
    161 strip = true