logging: add new --no-ignore-messages flag

The new --no-ignore-messages flag permits suppressing errors related to
parsing .gitignore or .ignore files. These error messages can be somewhat
annoying since they can surface from repositories that one has no control
over.

Fixes #646
This commit is contained in:
Andrew Gallant
2018-04-23 18:18:44 -04:00
parent b4781e2f91
commit 0ee0b160b5
3 changed files with 36 additions and 3 deletions

View File

@@ -113,6 +113,7 @@ fn run_parallel(args: &Arc<Args>) -> Result<u64> {
args.stdout_handle(),
args.files(),
args.no_messages(),
args.no_ignore_messages(),
) {
None => return Continue,
Some(dent) => dent,
@@ -176,6 +177,7 @@ fn run_one_thread(args: &Arc<Args>) -> Result<u64> {
args.stdout_handle(),
args.files(),
args.no_messages(),
args.no_ignore_messages(),
) {
None => continue,
Some(dent) => dent,
@@ -241,6 +243,7 @@ fn run_files_parallel(args: Arc<Args>) -> Result<u64> {
args.stdout_handle(),
args.files(),
args.no_messages(),
args.no_ignore_messages(),
) {
tx.send(dent).unwrap();
}
@@ -260,6 +263,7 @@ fn run_files_one_thread(args: &Arc<Args>) -> Result<u64> {
args.stdout_handle(),
args.files(),
args.no_messages(),
args.no_ignore_messages(),
) {
None => continue,
Some(dent) => dent,
@@ -288,6 +292,7 @@ fn get_or_log_dir_entry(
stdout_handle: Option<&same_file::Handle>,
files_only: bool,
no_messages: bool,
no_ignore_messages: bool,
) -> Option<ignore::DirEntry> {
match result {
Err(err) => {
@@ -298,7 +303,7 @@ fn get_or_log_dir_entry(
}
Ok(dent) => {
if let Some(err) = dent.error() {
if !no_messages {
if !no_messages && !no_ignore_messages {
eprintln!("{}", err);
}
}