Minimize future false positive typos (#12751)

# Description

Make typos config more strict: ignore false positives where they occur.

1. Ignore only files with typos
2. Add regexp-s with context
3. Ignore variable names only in Rust code
4. Ignore only 1 "identifier"
5. Check dot files

🎁 Extra bonus: fix typos!!
This commit is contained in:
Viktor Szépe 2024-05-04 17:00:44 +02:00 committed by GitHub
parent 3ae6fe2114
commit 8eefb7313e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 31 additions and 21 deletions

View File

@ -168,7 +168,7 @@ jobs:
# Using macOS 13 runner because 14 is based on the M1 and has half as much RAM (7 GB, # Using macOS 13 runner because 14 is based on the M1 and has half as much RAM (7 GB,
# instead of 14 GB) which is too little for us right now. # instead of 14 GB) which is too little for us right now.
# #
# Failure occuring with clippy for rust 1.77.2 # Failure occurring with clippy for rust 1.77.2
platform: [windows-latest, macos-13, ubuntu-20.04] platform: [windows-latest, macos-13, ubuntu-20.04]
runs-on: ${{ matrix.platform }} runs-on: ${{ matrix.platform }}

View File

@ -8,7 +8,7 @@ pub(crate) fn parse_date_from_string(
match dtparse::parse(input) { match dtparse::parse(input) {
Ok((native_dt, fixed_offset)) => { Ok((native_dt, fixed_offset)) => {
let offset = match fixed_offset { let offset = match fixed_offset {
Some(fo) => fo, Some(offset) => offset,
None => *(Local::now().offset()), None => *(Local::now().offset()),
}; };
match offset.from_local_datetime(&native_dt) { match offset.from_local_datetime(&native_dt) {

View File

@ -2562,12 +2562,12 @@ fn create_theme_output(theme: &str) -> Vec<String> {
} }
fn theme_cmd(theme: &str, footer: bool, then: &str) -> String { fn theme_cmd(theme: &str, footer: bool, then: &str) -> String {
let mut with_foorter = String::new(); let mut with_footer = String::new();
if footer { if footer {
with_foorter = "$env.config.footer_mode = \"always\"".to_string(); with_footer = "$env.config.footer_mode = \"always\"".to_string();
} }
format!("$env.config.table.mode = {theme}; $env.config.table.header_on_separator = true; {with_foorter}; {then}") format!("$env.config.table.mode = {theme}; $env.config.table.header_on_separator = true; {with_footer}; {then}")
} }
#[test] #[test]

View File

@ -260,8 +260,8 @@ where
} }
_ => { _ => {
if chf == b'-' || chf.is_ascii_digit() { if chf == b'-' || chf.is_ascii_digit() {
let mut pn = ParseNumber::new(self.str_buf.iter().copied()); let mut parser = ParseNumber::new(self.str_buf.iter().copied());
match pn.parse(false) { match parser.parse(false) {
Ok(Number::F64(v)) => { Ok(Number::F64(v)) => {
self.rdr.uneat_char(ch); self.rdr.uneat_char(ch);
return visitor.visit_f64(v); return visitor.visit_f64(v);

View File

@ -13,7 +13,7 @@ You'll generally find the team members on
[Discord `#standard-library` channel][discord#standard-library] and can have [Discord `#standard-library` channel][discord#standard-library] and can have
preliminary discussions there to clarify the issues involved. preliminary discussions there to clarify the issues involved.
You can open a [Github issue][new-issue] to have a more focused discussion of You can open a [GitHub issue][new-issue] to have a more focused discussion of
your idea. your idea.
Generally, we think the standard library should contain items that are relevant Generally, we think the standard library should contain items that are relevant

View File

@ -286,7 +286,7 @@ mod stdin_evaluation {
fn does_not_panic_with_no_newline_in_stream() { fn does_not_panic_with_no_newline_in_stream() {
let actual = nu!(pipeline( let actual = nu!(pipeline(
r#" r#"
nu --testbin nonu "wheres the nuline?" | length nu --testbin nonu "where's the nuline?" | length
"# "#
)); ));

View File

@ -1,17 +1,27 @@
[files] [files]
extend-exclude = ["crates/nu-command/tests/commands/table.rs", "*.tsv", "*.json", "*.txt", "tests/fixtures/formats/*"] extend-exclude = [
".git/",
"crates/nu-cmd-extra/assets/228_themes.json",
"tests/fixtures/formats/",
]
ignore-hidden = false
[default.extend-words] [default]
# Ignore false-positives extend-ignore-re = [
"Plasticos Rival",
"│ in_custom_valu │",
"│ ine │",
":es\\|ful\\(",
"\\\\u\\{e7ba\\}",
"([0-9a-f][0-9a-f] ){4}",
"--find ba\\b",
"0x\\[ba be\\]",
"\\)BaR'",
]
[type.rust.extend-words]
nd = "nd" nd = "nd"
pn = "pn"
fo = "fo"
ful = "ful"
ons = "ons"
ba = "ba"
Plasticos = "Plasticos"
IIF = "IIF"
numer = "numer" numer = "numer"
[default.extend-identifiers]
ratatui = "ratatui" ratatui = "ratatui"
doas = "doas"
wheres = "wheres"