Merge nucleic/sleek-thistle-egret-fyej into dev
This commit is contained in:
+119
@@ -0,0 +1,119 @@
|
||||
[workspace]
|
||||
resolver = "3"
|
||||
members = [
|
||||
"brush",
|
||||
"brush-shell",
|
||||
"brush-parser",
|
||||
"brush-core",
|
||||
"brush-builtins",
|
||||
"brush-coreutils-builtins",
|
||||
"brush-experimental-builtins",
|
||||
"brush-interactive",
|
||||
"brush-test-harness",
|
||||
"fuzz",
|
||||
"xtask",
|
||||
]
|
||||
default-members = ["brush-shell"]
|
||||
|
||||
[workspace.package]
|
||||
authors = ["reuben olinsky"]
|
||||
categories = ["command-line-utilities", "development-tools"]
|
||||
edition = "2024"
|
||||
keywords = ["cli", "shell", "sh", "bash", "script"]
|
||||
license = "MIT"
|
||||
readme = "README.md"
|
||||
repository = "https://github.com/reubeno/brush"
|
||||
rust-version = "1.88.0"
|
||||
|
||||
[workspace.lints.rust]
|
||||
warnings = { level = "deny" }
|
||||
future_incompatible = { level = "deny" }
|
||||
missing_docs = { level = "deny" }
|
||||
nonstandard_style = { level = "deny" }
|
||||
rust_2018_idioms = { level = "deny", priority = -1 }
|
||||
unnameable_types = "deny"
|
||||
unsafe_op_in_unsafe_fn = "deny"
|
||||
unused_attributes = "deny"
|
||||
unused_lifetimes = "deny"
|
||||
unused_macro_rules = "deny"
|
||||
# For now we allow unknown lints so we can opt into warnings that don't exist on the
|
||||
# oldest toolchain we need to support.
|
||||
unknown_lints = { level = "allow", priority = -100 }
|
||||
|
||||
[workspace.lints.rustdoc]
|
||||
all = { level = "deny", priority = -1 }
|
||||
|
||||
[workspace.lints.clippy]
|
||||
all = { level = "deny", priority = -1 }
|
||||
pedantic = { level = "deny", priority = -1 }
|
||||
cargo = { level = "deny", priority = -1 }
|
||||
nursery = { level = "deny", priority = -1 }
|
||||
perf = { level = "deny", priority = -1 }
|
||||
|
||||
# Denied rules
|
||||
expect_used = "deny"
|
||||
format_push_string = "deny"
|
||||
multiple_unsafe_ops_per_block = "deny"
|
||||
panic = "deny"
|
||||
panic_in_result_fn = "deny"
|
||||
string_lit_chars_any = "deny"
|
||||
string_slice = "deny"
|
||||
tests_outside_test_module = "deny"
|
||||
todo = "deny"
|
||||
unwrap_in_result = "deny"
|
||||
unwrap_used = "deny"
|
||||
undocumented_unsafe_blocks = "deny"
|
||||
|
||||
# Allowed rules
|
||||
bool_to_int_with_if = "allow"
|
||||
cognitive_complexity = "allow"
|
||||
collapsible_else_if = "allow"
|
||||
collapsible_if = "allow"
|
||||
if_not_else = "allow"
|
||||
if_same_then_else = "allow"
|
||||
match_same_arms = "allow"
|
||||
missing_errors_doc = "allow"
|
||||
must_use_candidate = "allow"
|
||||
multiple_crate_versions = "allow"
|
||||
option_if_let_else = "allow"
|
||||
redundant_closure_for_method_calls = "allow"
|
||||
redundant_else = "allow"
|
||||
redundant_pub_crate = "allow"
|
||||
result_large_err = "allow"
|
||||
similar_names = "allow"
|
||||
struct_excessive_bools = "allow"
|
||||
|
||||
[workspace.metadata.typos]
|
||||
files.extend-exclude = [
|
||||
# Exclude the changelog because it's dynamically generated.
|
||||
"/CHANGELOG.md",
|
||||
# Remove this once impending mapfile updates are merged.
|
||||
"/brush-core/src/builtins/mapfile.rs",
|
||||
]
|
||||
|
||||
[workspace.metadata.typos.default]
|
||||
extend-ignore-re = [
|
||||
# -ot is a valid binary operator
|
||||
"-ot",
|
||||
# Ignore 2-letter string literals, which show up in testing a fair bit.
|
||||
'"[a-zA-Z]{2}"',
|
||||
]
|
||||
|
||||
[workspace.metadata.typos.default.extend-words]
|
||||
# These show up in tests.
|
||||
"abd" = "abd"
|
||||
"hel" = "hel"
|
||||
"ba" = "ba"
|
||||
|
||||
# This is a specific technical name.
|
||||
"iterm" = "iterm"
|
||||
|
||||
[profile.release]
|
||||
strip = true
|
||||
lto = "fat"
|
||||
codegen-units = 1
|
||||
panic = "abort"
|
||||
|
||||
[profile.bench]
|
||||
inherits = "release"
|
||||
strip = "debuginfo"
|
||||
Reference in New Issue
Block a user