[PATCH V2] purge: avoid duplicate output for --print (issue4092)

Matt Mackall mpm at selenic.com
Tue Feb 25 11:09:59 CST 2014


On Tue, 2014-02-25 at 06:33 +0530, Anurag Goel wrote:
> # HG changeset patch
> # User anuraggoel <anurag.dsps at gmail.com>
> # Date 1393290021 -19800
> #      Tue Feb 25 06:30:21 2014 +0530
> # Node ID 6f3220a878ae0610ac44728bbbd3e3617eb3c0bf
> # Parent  aa021ece4506f5e962c8d87ab58ab594a0105ced
> purge: avoid duplicate output for --print (issue4092)
> 
> Now "hg purge -p" commands avoids printiing duplication of filenames.
> 
> Second patch is the test coverage of first patch which tells that '-p'
> does not depend on whether ui.verbose is configured or not,that means it
> is independent of '-v'.

Queued for stable, thanks, but see below.

Here is the test I was hoping to see:

> diff -r aa021ece4506 -r 6f3220a878ae tests/test-purge.t
> --- a/tests/test-purge.t	Thu Feb 20 00:46:13 2014 -0600
> +++ b/tests/test-purge.t	Tue Feb 25 06:30:21 2014 +0530
> @@ -21,7 +21,7 @@
>  delete an empty directory
>  
>    $ mkdir empty_dir
> -  $ hg purge -p
> +  $ hg purge -p -v
>    empty_dir
>    $ hg purge -v
>    removing directory empty_dir

(It can in fact be reduced to the single character change I hinted at by
writing it as 'hg purge -pv')

But I have no idea why you're testing the same behavior 16 more times?
Not only is that pointless, it's actually bad, because it means we're
now _not_ testing -p without -v. Dropping the rest of this patch.

> @@ -34,7 +34,7 @@
>    $ mkdir untracked_dir
>    $ touch untracked_dir/untracked_file1
>    $ touch untracked_dir/untracked_file2
> -  $ hg purge -p
> +  $ hg purge -p -v
>    untracked_dir/untracked_file1
>    untracked_dir/untracked_file2
>    $ hg purge -v
> @@ -54,7 +54,7 @@
>    > f= 'untracked_file_readonly'
>    > os.chmod(f, stat.S_IMODE(os.stat(f).st_mode) & ~stat.S_IWRITE)
>    > EOF
> -  $ hg purge -p
> +  $ hg purge -p -v
>    untracked_file
>    untracked_file_readonly
>    $ hg purge -v
> @@ -67,7 +67,7 @@
>  delete an untracked file in a tracked directory
>  
>    $ touch directory/untracked_file
> -  $ hg purge -p
> +  $ hg purge -p -v
>    directory/untracked_file
>    $ hg purge -v
>    removing file directory/untracked_file
> @@ -78,7 +78,7 @@
>  delete nested directories
>  
>    $ mkdir -p untracked_directory/nested_directory
> -  $ hg purge -p
> +  $ hg purge -p -v
>    untracked_directory/nested_directory
>    $ hg purge -v
>    removing directory untracked_directory/nested_directory
> @@ -91,7 +91,7 @@
>  
>    $ mkdir -p untracked_directory/nested_directory
>    $ cd directory
> -  $ hg purge -p
> +  $ hg purge -p -v
>    untracked_directory/nested_directory
>    $ hg purge -v
>    removing directory untracked_directory/nested_directory
> @@ -106,7 +106,7 @@
>    $ mkdir -p untracked_directory/nested_directory
>    $ touch directory/untracked_file
>    $ cd directory
> -  $ hg purge -p ../untracked_directory
> +  $ hg purge -p -v ../untracked_directory
>    untracked_directory/nested_directory
>    $ hg purge -v ../untracked_directory
>    removing directory untracked_directory/nested_directory
> @@ -122,13 +122,13 @@
>  skip ignored files if --all not specified
>  
>    $ touch ignored
> -  $ hg purge -p
> +  $ hg purge -p -v
>    $ hg purge -v
>    $ ls
>    directory
>    ignored
>    r1
> -  $ hg purge -p --all
> +  $ hg purge -p -v --all
>    ignored
>    $ hg purge -v --all
>    removing file ignored
> @@ -143,13 +143,13 @@
>  
>  hide error messages to avoid changing the output when the text changes
>  
> -  $ hg purge -p 2> /dev/null
> +  $ hg purge -p -v 2> /dev/null
>    untracked_file
>    $ hg st
>    ! r1
>    ? untracked_file
>  
> -  $ hg purge -p
> +  $ hg purge -p -v
>    untracked_file
>    $ hg purge -v 2> /dev/null
>    removing file untracked_file
> @@ -165,7 +165,7 @@
>    $ echo directory >> .hgignore
>    $ hg ci -m 'ignore directory'
>    $ touch untracked_file
> -  $ hg purge -p
> +  $ hg purge -p -v
>    untracked_file
>    $ hg purge -v
>    removing file untracked_file
> @@ -173,7 +173,7 @@
>  skip excluded files
>  
>    $ touch excluded_file
> -  $ hg purge -p -X excluded_file
> +  $ hg purge -p -v -X excluded_file
>    $ hg purge -v -X excluded_file
>    $ ls
>    directory
> @@ -185,7 +185,7 @@
>  
>    $ mkdir excluded_dir
>    $ touch excluded_dir/file
> -  $ hg purge -p -X excluded_dir
> +  $ hg purge -p -v -X excluded_dir
>    $ hg purge -v -X excluded_dir
>    $ ls
>    directory
> @@ -198,7 +198,7 @@
>  skip excluded empty dirs
>  
>    $ mkdir excluded_dir
> -  $ hg purge -p -X excluded_dir
> +  $ hg purge -p -v -X excluded_dir
>    $ hg purge -v -X excluded_dir
>    $ ls
>    directory
> @@ -212,7 +212,7 @@
>    $ touch .svn/foo
>    $ mkdir directory/.svn
>    $ touch directory/.svn/foo
> -  $ hg purge -p -X .svn -X '*/.svn'
> -  $ hg purge -p -X re:.*.svn
> +  $ hg purge -p -v -X .svn -X '*/.svn'
> +  $ hg purge -p -v -X re:.*.svn
>  
>    $ cd ..
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at selenic.com
> http://selenic.com/mailman/listinfo/mercurial-devel

-- 
Mathematics is the supreme nostalgia of our time.




More information about the Mercurial-devel mailing list