Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'Cargo.toml')
-rw-r--r--Cargo.toml73
1 files changed, 64 insertions, 9 deletions
diff --git a/Cargo.toml b/Cargo.toml
index 35bef15119..2547f1ccb9 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -105,7 +105,7 @@ dissimilar = "1.0.7"
either = "1.9.0"
expect-test = "1.4.0"
hashbrown = { version = "0.14", features = [
- "inline-more",
+ "inline-more",
], default-features = false }
indexmap = "2.1.0"
itertools = "0.12.0"
@@ -118,11 +118,11 @@ semver = "1.0.14"
serde = { version = "1.0.192", features = ["derive"] }
serde_json = "1.0.108"
smallvec = { version = "1.10.0", features = [
- "const_new",
- "union",
- "const_generics",
+ "const_new",
+ "union",
+ "const_generics",
] }
-smol_str = "0.2.0"
+smol_str = "0.2.1"
text-size = "1.1.1"
tracing = "0.1.40"
tracing-tree = "0.3.0"
@@ -138,8 +138,63 @@ xshell = "0.2.5"
# We need to freeze the version of the crate, as the raw-api feature is considered unstable
dashmap = { version = "=5.5.3", features = ["raw-api"] }
+[workspace.lints.rust]
+rust_2018_idioms = "warn"
+unused_lifetimes = "warn"
+semicolon_in_expressions_from_macros = "warn"
+
[workspace.lints.clippy]
-collapsible_if = "allow"
-needless_pass_by_value = "allow"
-nonminimal_bool = "allow"
-redundant_pattern_matching = "allow"
+# FIXME Remove the tidy test once the lint table is stable
+
+## lint groups
+complexity = { level = "warn", priority = -1 }
+correctness = { level = "deny", priority = -1 }
+perf = { level = "deny", priority = -1 }
+restriction = { level = "allow", priority = -1 }
+style = { level = "warn", priority = -1 }
+suspicious = { level = "warn", priority = -1 }
+
+## allow following lints
+# () makes a fine error in most cases
+result_unit_err = "allow"
+# We don't expose public APIs that matter like this
+len_without_is_empty = "allow"
+# We have macros that rely on this currently
+enum_variant_names = "allow"
+# Builder pattern disagrees
+new_ret_no_self = "allow"
+
+## Following lints should be tackled at some point
+borrowed_box = "allow"
+borrow_deref_ref = "allow"
+derivable_impls = "allow"
+derived_hash_with_manual_eq = "allow"
+field_reassign_with_default = "allow"
+forget_non_drop = "allow"
+format_collect = "allow"
+large_enum_variant = "allow"
+needless_doctest_main = "allow"
+new_without_default = "allow"
+non_canonical_clone_impl = "allow"
+non_canonical_partial_ord_impl = "allow"
+self_named_constructors = "allow"
+skip_while_next = "allow"
+too_many_arguments = "allow"
+toplevel_ref_arg = "allow"
+type_complexity = "allow"
+unnecessary_cast = "allow"
+unnecessary_filter_map = "allow"
+unnecessary_lazy_evaluations = "allow"
+unnecessary_mut_passed = "allow"
+useless_conversion = "allow"
+useless_format = "allow"
+wildcard_in_or_patterns = "allow"
+wrong_self_convention = "allow"
+
+## warn at following lints
+dbg_macro = "warn"
+todo = "warn"
+unimplemented = "allow"
+rc_buffer = "warn"
+# FIXME enable this, we use this pattern a lot so its annoying work ...
+# str_to_string = "warn"