tidy: fire less "ignoring file length unneccessarily" warnings

This avoids a situation where a file is at the border of the limit,
and alternates between hitting the limit and not hitting it, causing
a back and forth of addition of the ignore-tidy-linelength directive.

As an example, consider the ignore-tidy-filelength of compiler/rustc_typeck/src/collect.rs.

It was added in 2ca4964db5, removed in
37354ebc97, added again in 448d07683a,
removed in 3171bd5bf5, added in 438826fd1a,
and #94142 is going to remove it again.

To avoid this back and forth, we exempt files from the unneccessary
ignoring warning that have length of at least 70% of the limit.
This commit is contained in:
est31 2022-02-20 03:17:44 +01:00
parent b8c56fa8c3
commit 49a5456606

View File

@ -395,6 +395,9 @@ pub fn check(path: &Path, bad: &mut bool) {
); );
}; };
suppressible_tidy_err!(err, skip_file_length, ""); suppressible_tidy_err!(err, skip_file_length, "");
} else if lines > (LINES * 7) / 10 {
// Just set it to something that doesn't trigger the "unneccessarily ignored" warning.
skip_file_length = Directive::Ignore(true);
} }
if let Directive::Ignore(false) = skip_cr { if let Directive::Ignore(false) = skip_cr {