diff options
author | Divy Srivastava <dj.srivastava23@gmail.com> | 2020-08-12 19:17:44 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-12 15:47:44 +0200 |
commit | 6706eb551532ee6c84ad013377ac2cd91681424a (patch) | |
tree | 934d2d003c8ef7868986e136a96589e25299607d /cli/flags.rs | |
parent | fed70c9903e616702241725e82a7d633f2a9b05d (diff) |
feat: add "--ignore" to deno lint (#6934)
Diffstat (limited to 'cli/flags.rs')
-rw-r--r-- | cli/flags.rs | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/cli/flags.rs b/cli/flags.rs index 993f681b5..49b577696 100644 --- a/cli/flags.rs +++ b/cli/flags.rs @@ -55,6 +55,7 @@ pub enum DenoSubcommand { }, Lint { files: Vec<String>, + ignore: Vec<String>, rules: bool, }, Repl, @@ -628,8 +629,16 @@ fn lint_parse(flags: &mut Flags, matches: &clap::ArgMatches) { Some(f) => f.map(String::from).collect(), None => vec![], }; + let ignore = match matches.values_of("ignore") { + Some(f) => f.map(String::from).collect(), + None => vec![], + }; let rules = matches.is_present("rules"); - flags.subcommand = DenoSubcommand::Lint { files, rules }; + flags.subcommand = DenoSubcommand::Lint { + files, + rules, + ignore, + }; } fn types_subcommand<'a, 'b>() -> App<'a, 'b> { @@ -1020,6 +1029,15 @@ Ignore linting a file by adding an ignore comment at the top of the file: .help("List available rules"), ) .arg( + Arg::with_name("ignore") + .long("ignore") + .requires("unstable") + .takes_value(true) + .use_delimiter(true) + .require_equals(true) + .help("Ignore linting particular source files."), + ) + .arg( Arg::with_name("files") .takes_value(true) .multiple(true) @@ -1739,19 +1757,26 @@ mod tests { subcommand: DenoSubcommand::Lint { files: vec!["script_1.ts".to_string(), "script_2.ts".to_string()], rules: false, + ignore: vec![], }, unstable: true, ..Flags::default() } ); - let r = flags_from_vec_safe(svec!["deno", "lint", "--unstable"]); + let r = flags_from_vec_safe(svec![ + "deno", + "lint", + "--unstable", + "--ignore=script_1.ts,script_2.ts" + ]); assert_eq!( r.unwrap(), Flags { subcommand: DenoSubcommand::Lint { files: vec![], rules: false, + ignore: svec!["script_1.ts", "script_2.ts"], }, unstable: true, ..Flags::default() @@ -1764,7 +1789,8 @@ mod tests { Flags { subcommand: DenoSubcommand::Lint { files: vec![], - rules: true + rules: true, + ignore: vec![], }, unstable: true, ..Flags::default() |