# HG changeset patch # User pavanpc@fb.com # Date 1510959160 0 # Node ID 7a58608281dde4c72e6cf43ba442e76459cde70e # Parent ff80efc8f3e469c90376603af4fa39012f328918 remove: print message for each file in verbose mode only while using `-A` (BC) hg rm -A option prints the message of every file in the repo. This is not very user friendly for a big repository with thousands of files. So enabling this feature only when run in --verbose mode (hg rm -Av) Differential Revision: https://phab.mercurial-scm.org/D1336 diff -r ff80efc8f3e4 -r 7a58608281dd mercurial/cmdutil.py --- a/mercurial/cmdutil.py Fri Nov 03 17:19:56 2017 -0400 +++ b/mercurial/cmdutil.py Fri Nov 17 22:52:40 2017 +0000 @@ -2982,8 +2982,9 @@ for f in remaining: count += 1 ui.progress(_('skipping'), count, total=total, unit=_('files')) - warnings.append(_('not removing %s: file still exists\n') - % m.rel(f)) + if ui.verbose or (f in files): + warnings.append(_('not removing %s: file still exists\n') + % m.rel(f)) ret = 1 ui.progress(_('skipping'), None) else: diff -r ff80efc8f3e4 -r 7a58608281dd tests/test-remove.t --- a/tests/test-remove.t Fri Nov 03 17:19:56 2017 -0400 +++ b/tests/test-remove.t Fri Nov 17 22:52:40 2017 +0000 @@ -189,9 +189,9 @@ \r (no-eol) (esc) 0 files updated, 0 files merged, 0 files removed, 0 files unresolved -21 state clean, options -A +21 state clean, options -Av - $ remove -A foo + $ remove -Av foo \r (no-eol) (esc) deleting [===========================================>] 1/1\r (no-eol) (esc) \r (no-eol) (esc) @@ -205,10 +205,10 @@ ./foo 0 files updated, 0 files merged, 0 files removed, 0 files unresolved -22 state modified, options -A +22 state modified, options -Av $ echo b >> foo - $ remove -A foo + $ remove -Av foo \r (no-eol) (esc) deleting [===========================================>] 1/1\r (no-eol) (esc) \r (no-eol) (esc) @@ -357,9 +357,32 @@ \r (no-eol) (esc) 2 files updated, 0 files merged, 0 files removed, 0 files unresolved -dir, options -A +dir, options -Av $ rm test/bar + $ remove -Av test + \r (no-eol) (esc) + deleting [===========================================>] 1/1\r (no-eol) (esc) + \r (no-eol) (esc) + \r (no-eol) (esc) + skipping [===========================================>] 1/1\r (no-eol) (esc) + \r (no-eol) (esc) + \r (no-eol) (esc) + deleting [===========================================>] 1/1\r (no-eol) (esc) + \r (no-eol) (esc) + removing test/bar (glob) + not removing test/foo: file still exists (glob) + exit code: 1 + R test/bar + ./foo + ./test/foo + \r (no-eol) (esc) + updating [===========================================>] 1/1\r (no-eol) (esc) + \r (no-eol) (esc) + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + +dir, options -A + $ rm test/bar $ remove -A test \r (no-eol) (esc) deleting [===========================================>] 1/1\r (no-eol) (esc) @@ -371,7 +394,26 @@ deleting [===========================================>] 1/1\r (no-eol) (esc) \r (no-eol) (esc) removing test/bar (glob) - not removing test/foo: file still exists (glob) + exit code: 1 + R test/bar + ./foo + ./test/foo + \r (no-eol) (esc) + updating [===========================================>] 1/1\r (no-eol) (esc) + \r (no-eol) (esc) + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + +without any files/dirs, options -A + $ rm test/bar + $ remove -A + \r (no-eol) (esc) + skipping [=====================> ] 1/2\r (no-eol) (esc) + skipping [===========================================>] 2/2\r (no-eol) (esc) + \r (no-eol) (esc) + \r (no-eol) (esc) + deleting [===========================================>] 1/1\r (no-eol) (esc) + \r (no-eol) (esc) + removing test/bar (glob) exit code: 1 R test/bar ./foo