From 0f32028170174e8b148f4d254a071f10d9e3ae80 Mon Sep 17 00:00:00 2001 From: rchaser53 Date: Sat, 30 Mar 2019 14:35:25 +0900 Subject: [PATCH 1/3] add feature to skip verify_config_used check --- src/test/mod.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/test/mod.rs b/src/test/mod.rs index fc25d27b531..357e25330b4 100644 --- a/src/test/mod.rs +++ b/src/test/mod.rs @@ -97,7 +97,11 @@ fn verify_config_used(path: &Path, config_name: &str) { .lines() .map(|l| l.unwrap()) .take_while(|l| l.starts_with("//")) - .any(|l| l.starts_with(&format!("// rustfmt-{}", config_name))), + .any(|l| { + let option_name = format!("// rustfmt-{}", config_name); + let skip_name = "// skip-option-check"; + l.starts_with(&option_name) || l.starts_with(&skip_name) + }), format!( "config option file {} does not contain expected config name", path.display() From 4f52d13176e55bdcf45eb0ce3f15c5910e1b39ee Mon Sep 17 00:00:00 2001 From: rchaser53 Date: Sat, 30 Mar 2019 14:36:28 +0900 Subject: [PATCH 2/3] add tests for disable_all_formatting --- src/test/mod.rs | 4 ++++ tests/source/configs/disable_all_formatting/false.rs | 2 ++ .../configs/disable_all_formatting/false_mod/mod.rs | 4 ++++ .../configs/disable_all_formatting/no_entry_false.rs | 4 ++++ .../configs/disable_all_formatting/no_entry_true.rs | 4 ++++ tests/source/configs/disable_all_formatting/true.rs | 2 ++ .../source/configs/disable_all_formatting/true_mod/mod.rs | 4 ++++ tests/target/configs/disable_all_formatting/false.rs | 2 ++ .../configs/disable_all_formatting/false_mod/mod.rs | 8 ++++++++ .../configs/disable_all_formatting/no_entry_false.rs | 8 ++++++++ .../configs/disable_all_formatting/no_entry_true.rs | 4 ++++ tests/target/configs/disable_all_formatting/true.rs | 2 ++ .../target/configs/disable_all_formatting/true_mod/mod.rs | 4 ++++ 13 files changed, 52 insertions(+) create mode 100644 tests/source/configs/disable_all_formatting/false_mod/mod.rs create mode 100644 tests/source/configs/disable_all_formatting/no_entry_false.rs create mode 100644 tests/source/configs/disable_all_formatting/no_entry_true.rs create mode 100644 tests/source/configs/disable_all_formatting/true_mod/mod.rs create mode 100644 tests/target/configs/disable_all_formatting/false_mod/mod.rs create mode 100644 tests/target/configs/disable_all_formatting/no_entry_false.rs create mode 100644 tests/target/configs/disable_all_formatting/no_entry_true.rs create mode 100644 tests/target/configs/disable_all_formatting/true_mod/mod.rs diff --git a/src/test/mod.rs b/src/test/mod.rs index 357e25330b4..b026c354dda 100644 --- a/src/test/mod.rs +++ b/src/test/mod.rs @@ -23,6 +23,10 @@ const SKIP_FILE_WHITE_LIST: &[&str] = &[ // We want to make sure that the `skip_children` is correctly working, // so we do not want to test this file directly. "configs/skip_children/foo/mod.rs", + "configs/disable_all_formatting/true_mod/mod.rs", + "configs/disable_all_formatting/false_mod/mod.rs", + "configs/disable_all_formatting/no_entry_false.rs", + "configs/disable_all_formatting/no_entry_true.rs", "issue-3434/no_entry.rs", ]; diff --git a/tests/source/configs/disable_all_formatting/false.rs b/tests/source/configs/disable_all_formatting/false.rs index 834ca7a3c89..25bedd44286 100644 --- a/tests/source/configs/disable_all_formatting/false.rs +++ b/tests/source/configs/disable_all_formatting/false.rs @@ -1,6 +1,8 @@ // rustfmt-disable_all_formatting: false // Disable all formatting +mod no_entry_false; +mod false_mod; fn main() { if lorem{println!("ipsum!");}else{println!("dolor!");} } diff --git a/tests/source/configs/disable_all_formatting/false_mod/mod.rs b/tests/source/configs/disable_all_formatting/false_mod/mod.rs new file mode 100644 index 00000000000..7b620146b01 --- /dev/null +++ b/tests/source/configs/disable_all_formatting/false_mod/mod.rs @@ -0,0 +1,4 @@ +// skip-option-check +fn bar() { + if lorem{println!("ipsum!");}else{println!("dolor!");} +} \ No newline at end of file diff --git a/tests/source/configs/disable_all_formatting/no_entry_false.rs b/tests/source/configs/disable_all_formatting/no_entry_false.rs new file mode 100644 index 00000000000..9bd82a0c0c9 --- /dev/null +++ b/tests/source/configs/disable_all_formatting/no_entry_false.rs @@ -0,0 +1,4 @@ +// skip-option-check +fn foo() { + if lorem{println!("ipsum!");}else{println!("dolor!");} +} \ No newline at end of file diff --git a/tests/source/configs/disable_all_formatting/no_entry_true.rs b/tests/source/configs/disable_all_formatting/no_entry_true.rs new file mode 100644 index 00000000000..30ec2535251 --- /dev/null +++ b/tests/source/configs/disable_all_formatting/no_entry_true.rs @@ -0,0 +1,4 @@ +// skip-option-check +fn foo() { + iflorem{println!("ipsum!");}else{println!("dolor!");} +} diff --git a/tests/source/configs/disable_all_formatting/true.rs b/tests/source/configs/disable_all_formatting/true.rs index 56955bf384d..805e35e3b72 100644 --- a/tests/source/configs/disable_all_formatting/true.rs +++ b/tests/source/configs/disable_all_formatting/true.rs @@ -1,6 +1,8 @@ // rustfmt-disable_all_formatting: true // Disable all formatting +mod true_mod; +mod no_entry_true; fn main() { iflorem{println!("ipsum!");}else{println!("dolor!");} } diff --git a/tests/source/configs/disable_all_formatting/true_mod/mod.rs b/tests/source/configs/disable_all_formatting/true_mod/mod.rs new file mode 100644 index 00000000000..c65fc996bc4 --- /dev/null +++ b/tests/source/configs/disable_all_formatting/true_mod/mod.rs @@ -0,0 +1,4 @@ +// skip-option-check +fn bar() { + iflorem{println!("ipsum!");}else{println!("dolor!");} +} diff --git a/tests/target/configs/disable_all_formatting/false.rs b/tests/target/configs/disable_all_formatting/false.rs index 1a0477ddb39..001c291ede8 100644 --- a/tests/target/configs/disable_all_formatting/false.rs +++ b/tests/target/configs/disable_all_formatting/false.rs @@ -1,6 +1,8 @@ // rustfmt-disable_all_formatting: false // Disable all formatting +mod false_mod; +mod no_entry_false; fn main() { if lorem { println!("ipsum!"); diff --git a/tests/target/configs/disable_all_formatting/false_mod/mod.rs b/tests/target/configs/disable_all_formatting/false_mod/mod.rs new file mode 100644 index 00000000000..3740c812865 --- /dev/null +++ b/tests/target/configs/disable_all_formatting/false_mod/mod.rs @@ -0,0 +1,8 @@ +// skip-option-check +fn bar() { + if lorem { + println!("ipsum!"); + } else { + println!("dolor!"); + } +} diff --git a/tests/target/configs/disable_all_formatting/no_entry_false.rs b/tests/target/configs/disable_all_formatting/no_entry_false.rs new file mode 100644 index 00000000000..0d3f89c3c0d --- /dev/null +++ b/tests/target/configs/disable_all_formatting/no_entry_false.rs @@ -0,0 +1,8 @@ +// skip-option-check +fn foo() { + if lorem { + println!("ipsum!"); + } else { + println!("dolor!"); + } +} diff --git a/tests/target/configs/disable_all_formatting/no_entry_true.rs b/tests/target/configs/disable_all_formatting/no_entry_true.rs new file mode 100644 index 00000000000..4a95329f6b6 --- /dev/null +++ b/tests/target/configs/disable_all_formatting/no_entry_true.rs @@ -0,0 +1,4 @@ +// skip-option-check +fn foo() { + if lorem{println!("ipsum!");}else{println!("dolor!");} +} diff --git a/tests/target/configs/disable_all_formatting/true.rs b/tests/target/configs/disable_all_formatting/true.rs index 736ccf56942..4ddb69085f4 100644 --- a/tests/target/configs/disable_all_formatting/true.rs +++ b/tests/target/configs/disable_all_formatting/true.rs @@ -1,6 +1,8 @@ // rustfmt-disable_all_formatting: true // Disable all formatting +mod no_entry_true; +mod true_mod; fn main() { if lorem{println!("ipsum!");}else{println!("dolor!");} } diff --git a/tests/target/configs/disable_all_formatting/true_mod/mod.rs b/tests/target/configs/disable_all_formatting/true_mod/mod.rs new file mode 100644 index 00000000000..c65fc996bc4 --- /dev/null +++ b/tests/target/configs/disable_all_formatting/true_mod/mod.rs @@ -0,0 +1,4 @@ +// skip-option-check +fn bar() { + iflorem{println!("ipsum!");}else{println!("dolor!");} +} From 94b037bb2db4b8dea45ee07ba6431778bfaa7aa6 Mon Sep 17 00:00:00 2001 From: rchaser53 Date: Sat, 30 Mar 2019 14:39:11 +0900 Subject: [PATCH 3/3] disable_all_formatting Stable No => True --- Configurations.md | 2 +- src/config/mod.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Configurations.md b/Configurations.md index 7557b3637f1..f5b84ea4626 100644 --- a/Configurations.md +++ b/Configurations.md @@ -605,7 +605,7 @@ Don't reformat anything - **Default value**: `false` - **Possible values**: `true`, `false` -- **Stable**: No (tracking issue: #3388) +- **Stable**: Yes ## `error_on_line_overflow` diff --git a/src/config/mod.rs b/src/config/mod.rs index 0790a3be2a6..336616880e8 100644 --- a/src/config/mod.rs +++ b/src/config/mod.rs @@ -124,7 +124,7 @@ create_config! { "Require a specific version of rustfmt"; unstable_features: bool, false, false, "Enables unstable features. Only available on nightly channel"; - disable_all_formatting: bool, false, false, "Don't reformat anything"; + disable_all_formatting: bool, false, true, "Don't reformat anything"; skip_children: bool, false, false, "Don't reformat out of line modules"; hide_parse_errors: bool, false, false, "Hide errors from the parser"; error_on_line_overflow: bool, false, false, "Error if unable to get all lines within max_width";