|
2 | 2 | //! - the number of entries in each directory must be less than `ENTRY_LIMIT`
|
3 | 3 | //! - there are no stray `.stderr` files
|
4 | 4 |
|
5 |
| -use std::collections::{BTreeSet, HashMap}; |
| 5 | +use std::collections::BTreeSet; |
6 | 6 | use std::ffi::OsStr;
|
7 | 7 | use std::fs;
|
8 | 8 | use std::io::Write;
|
9 |
| -use std::path::{Path, PathBuf}; |
10 |
| - |
11 |
| -use ignore::Walk; |
| 9 | +use std::path::Path; |
12 | 10 |
|
13 | 11 | // FIXME: GitHub's UI truncates file lists that exceed 1000 entries, so these
|
14 | 12 | // should all be 1000 or lower. Limits significantly smaller than 1000 are also
|
15 | 13 | // desirable, because large numbers of files are unwieldy in general. See issue
|
16 | 14 | // #73494.
|
17 |
| -const ENTRY_LIMIT: u32 = 901; |
18 |
| -// FIXME: The following limits should be reduced eventually. |
19 | 15 |
|
20 |
| -const ISSUES_ENTRY_LIMIT: u32 = 1616; |
| 16 | +// FIXME: The following limits should be reduced eventually. |
21 | 17 |
|
22 | 18 | const EXPECTED_TEST_FILE_EXTENSIONS: &[&str] = &[
|
23 | 19 | "rs", // test source files
|
@@ -54,50 +50,13 @@ const EXTENSION_EXCEPTION_PATHS: &[&str] = &[
|
54 | 50 | "tests/ui/std/windows-bat-args3.bat", // tests escaping arguments through batch files
|
55 | 51 | ];
|
56 | 52 |
|
57 |
| -fn check_entries(tests_path: &Path, bad: &mut bool) { |
58 |
| - let mut directories: HashMap<PathBuf, u32> = HashMap::new(); |
59 |
| - |
60 |
| - for entry in Walk::new(tests_path.join("ui")).flatten() { |
61 |
| - let parent = entry.path().parent().unwrap().to_path_buf(); |
62 |
| - *directories.entry(parent).or_default() += 1; |
63 |
| - } |
64 |
| - |
65 |
| - let (mut max, mut max_issues) = (0, 0); |
66 |
| - for (dir_path, count) in directories { |
67 |
| - let is_issues_dir = tests_path.join("ui/issues") == dir_path; |
68 |
| - let (limit, maxcnt) = if is_issues_dir { |
69 |
| - (ISSUES_ENTRY_LIMIT, &mut max_issues) |
70 |
| - } else { |
71 |
| - (ENTRY_LIMIT, &mut max) |
72 |
| - }; |
73 |
| - *maxcnt = (*maxcnt).max(count); |
74 |
| - if count > limit { |
75 |
| - tidy_error!( |
76 |
| - bad, |
77 |
| - "following path contains more than {} entries, \ |
78 |
| - you should move the test to some relevant subdirectory (current: {}): {}", |
79 |
| - limit, |
80 |
| - count, |
81 |
| - dir_path.display() |
82 |
| - ); |
83 |
| - } |
84 |
| - } |
85 |
| - if ISSUES_ENTRY_LIMIT > max_issues { |
86 |
| - tidy_error!( |
87 |
| - bad, |
88 |
| - "`ISSUES_ENTRY_LIMIT` is too high (is {ISSUES_ENTRY_LIMIT}, should be {max_issues})" |
89 |
| - ); |
90 |
| - } |
91 |
| -} |
92 |
| - |
93 | 53 | pub fn check(root_path: &Path, bless: bool, bad: &mut bool) {
|
94 | 54 | let issues_txt_header = r#"============================================================
|
95 | 55 | ⚠️⚠️⚠️NOTHING SHOULD EVER BE ADDED TO THIS LIST⚠️⚠️⚠️
|
96 | 56 | ============================================================
|
97 | 57 | "#;
|
98 | 58 |
|
99 | 59 | let path = &root_path.join("tests");
|
100 |
| - check_entries(path, bad); |
101 | 60 |
|
102 | 61 | // the list of files in ui tests that are allowed to start with `issue-XXXX`
|
103 | 62 | // BTreeSet because we would like a stable ordering so --bless works
|
@@ -207,15 +166,5 @@ pub fn check(root_path: &Path, bless: bool, bad: &mut bool) {
|
207 | 166 | }
|
208 | 167 | let old_issues_path = tidy_src.join("issues.txt");
|
209 | 168 | fs::rename(blessed_issues_path, old_issues_path).unwrap();
|
210 |
| - } else { |
211 |
| - for file_name in remaining_issue_names { |
212 |
| - let mut p = PathBuf::from(path); |
213 |
| - p.push(file_name); |
214 |
| - tidy_error!( |
215 |
| - bad, |
216 |
| - "file `{}` no longer exists and should be removed from the exclusions in `src/tools/tidy/src/issues.txt`", |
217 |
| - p.display() |
218 |
| - ); |
219 |
| - } |
220 | 169 | }
|
221 | 170 | }
|
0 commit comments