]> git.phdru.name Git - ppu.git/commitdiff
Feat(cmp): Add option -s --silent --quiet
authorOleg Broytman <phd@phdru.name>
Wed, 13 Dec 2017 12:53:00 +0000 (15:53 +0300)
committerOleg Broytman <phd@phdru.name>
Wed, 13 Dec 2017 13:01:20 +0000 (16:01 +0300)
TODO
docs/index.rst
docs/news.rst
scripts/cmp.py
tests/test_cmp.py

diff --git a/TODO b/TODO
index 4553922210adc83198a0ca060b00e8fa0c933014..b6e728a9d44adbf0f5533677a56716e5c41de0f5 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,6 +1,3 @@
-Add option -s --quiet --silent for cmp.py.
-
-
 Extend remove-old-files.py: add option -v/--verbose to report every removed file.
 
 
index 014ff629f9241aa62379539fd3b10ee646ffce4e..8e4112a9690de53f00290bd67261f6577eb9bc6c 100644 (file)
@@ -25,7 +25,15 @@ Compare two files.
 
 Usage::
 
-    cmp.py file1 file2
+    cmp.py [-i] [-s --silent --quiet] file1 file2
+
+Options::
+
+    -i, --inhibit-progress-bar
+                                 inhibit progress bar
+    -s, --silent, --quiet
+                                 be silent (implied -i)
+
 
 remove-old-files.py
 ~~~~~~~~~~~~~~~~~~~
index 2489f64ddcb1ed4f3da16351d72d7a565c567af7..516d88e9365cde14abc7060dff536ea82702156b 100644 (file)
@@ -1,11 +1,13 @@
 News
 ====
 
-Version 0.6.0 (2017-10-??)
+Version 0.6.0 (2017-12-??)
 --------------------------
 
 * rm.py ask interactively to remove read-only files or directories.
 
+* Add options -s --silent --quiet for cmp.py.
+
 * Add option -f for rm.py.
 
 * PyPy.
index 9fac08c9ae1a941525aed4e5cd697cffd4ca8511..00ad28d99ca45f59e6e847817cf96733eaa5b853 100755 (executable)
@@ -6,11 +6,12 @@ import os
 import sys
 
 
-def report():
+def report(silent):
     if show_pbar:
         global pbar
         del pbar
-    sys.stderr.write("Files differ at %d megabayte block\n" % count)
+    if not silent:
+        sys.stderr.write("Files differ at %d megabayte block\n" % count)
     global diff
     diff = True
 
@@ -19,11 +20,14 @@ if __name__ == '__main__':
     parser = argparse.ArgumentParser(description='Remove old files')
     parser.add_argument('-i', '--inhibit-progress-bar', action='store_true',
                         help='inhibit progress bar')
+    parser.add_argument('-s', '--silent', '--quiet', action='store_true',
+                        help='be silent (implied -i)')
     parser.add_argument('fname1', help='the first file name')
     parser.add_argument('fname2', help='the second file name')
     args = parser.parse_args()
 
-    show_pbar = not args.inhibit_progress_bar and sys.stderr.isatty()
+    show_pbar = not args.inhibit_progress_bar and not args.silent \
+        and sys.stderr.isatty()
 
     if show_pbar:
         try:
@@ -57,19 +61,19 @@ if __name__ == '__main__':
 
         if block1 and block2:
             if len(block1) != len(block2):
-                report()
+                report(args.silent)
                 break
         elif block1:
-            report()
+            report(args.silent)
             break
         elif block2:
-            report()
+            report(args.silent)
             break
         else:
             break
 
         if block1 != block2:
-            report()
+            report(args.silent)
             break
 
         count += 1
index efdd43ae6dc24af4a4200f815f074bd1b8ead49c..a461aac97799c2899e8a1fe473e3c11ec4c6922f 100755 (executable)
@@ -22,4 +22,4 @@ def test_cmp_equal():
     create_file('test3', 'test3')
     create_file('test4', 'test4')
     assert subprocess.call(
-        [sys.executable, test_prog_path, "-i", "test3", "test4"]) == 1
+        [sys.executable, test_prog_path, "-s", "test3", "test4"]) == 1