Disable 'BINARY file' warning by default (#1441)
* Disable 'BINARY file' warning by default
Currently codespell prints a warning if it finds binary files in the tree.
This is annoying as many projects contain .git/.svn blobs, images, etc.
Disable the warning by default and let users enable it if needed.
Co-authored-by: Waldir Pimenta <waldyrious@gmail.com>
* Improve help message for the --quiet-level option
* Update _codespell.py
Co-authored-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Co-authored-by: Eric Larson <larson.eric.d@gmail.com>
diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py
index 17fc3b9..68a0bb4 100755
--- a/codespell_lib/_codespell.py
+++ b/codespell_lib/_codespell.py
@@ -282,15 +282,20 @@
'is available. 3: both 1 and 2')
parser.add_argument('-q', '--quiet-level',
- action='store', type=int, default=0,
- help='Bitmask that allows codespell to run quietly. '
- '0: the default, in which all messages are '
- 'printed. 1: disable warnings about wrong '
- 'encoding. 2: disable warnings about binary '
- 'file. 4: shut down warnings about automatic '
- 'fixes that were disabled in dictionary. '
+ action='store', type=int, default=2,
+ help='Bitmask that allows suppressing messages. '
+ '0: print all messages. '
+ '1: disable warnings about wrong encoding. '
+ '2: disable warnings about binary files. '
+ '4: omit warnings about automatic fixes that '
+ 'were disabled in the dictionary. '
'8: don\'t print anything for non-automatic '
- 'fixes. 16: don\'t print fixed files.')
+ 'fixes. '
+ '16: don\'t print the list of fixed files. '
+ 'As usual with bitmasks, these levels can be '
+ 'combined; e.g. use 3 for levels 1+2, 7 for '
+ '1+2+4, 23 for 1+2+4+16, etc. '
+ 'The default mask is %(default)s.')
parser.add_argument('-e', '--hard-encoding-detection',
action='store_true', default=False,
diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py
index b766451..4a54fd0 100644
--- a/codespell_lib/tests/test_basic.py
+++ b/codespell_lib/tests/test_basic.py
@@ -242,8 +242,9 @@
f.write(b'\x00\x00naiive\x00\x00')
capsys.readouterr()
assert cs.main(f.name) == 0
+ assert capsys.readouterr() == ('', '')
+ assert cs.main('-q', '0', f.name) == 0
assert 'WARNING: Binary file' in capsys.readouterr()[1]
- assert cs.main('-q', '2', f.name) == 0
assert capsys.readouterr() == ('', '')
finally:
os.remove(f.name)