[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [RFC]: Make svnlook (pg|pl) output format mimic svn (pg|pl) & add --show-inherited-props option (Was: multiple targets for 'svnlook propget')

From: Paul Burba <ptburba_at_gmail.com>
Date: Mon, 3 Dec 2012 13:57:00 -0500

On Mon, Nov 19, 2012 at 3:04 PM, Paul Burba <ptburba_at_gmail.com> wrote:
> Recently Johan proposed supporting multiple targets for svnlook
> propget: http://svn.haxx.se/dev/archive-2012-11/0439.shtml
>
> One of the ideas that came of this was to make the output of 'svnlook
> (pl|pg)' mimic the output of 'svn (pl|pg)'. This dovetails nicely
> with my desire to add the ''show-inherited-props" option to svnlook
> (pl|pg): http://svn.haxx.se/dev/archive-2012-11/0432.shtml
>
> The question is, how far do we go with the backwards incompatible
> changes to the output of svnlook (pg|pl)? Here's what we have today
> (skip ahead to "PROPOSED CHANGES:" if you already know all this):
>
> ### svn proplist Today: ###
>
>>svn pl A\B
> Properties on 'A\B':
> svn:auto-props
> svn:global-ignores
>
>>svn pl A\B -v
> Properties on 'A\B':
> svn:auto-props
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> svn:global-ignores
> *.pyc
>
>>svn pl A\B --show-inherited-props
> Properties inherited from
> 'C:\SVN\src-trunk-2\Debug\subversion\tests\cmdline\svn-test-work\working_copies\autoprop_tests-30':
> svn:auto-props
> Properties on 'A\B':
> svn:auto-props
> svn:global-ignores
>
>>svn pl A\B --show-inherited-props -v
> Properties inherited from
> 'C:\SVN\src-trunk-2\Debug\subversion\tests\cmdline\svn-test-work\working_copies\autoprop_tests-30':
> svn:auto-props
> *.py=svn:eol-style=native
> *.cpp=svn:eol-style=native
>
> Properties on 'A\B':
> svn:auto-props
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> svn:global-ignores
> *.pyc
>
> ### svnlook proplist Today: ###
>
>>svnlook pl autoprop_tests-30 A/B
> svn:global-ignores
> svn:auto-props
>
>>svnlook pl autoprop_tests-30 A/B -v
> svn:global-ignores : *.pyc
>
> svn:auto-props : *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> ### svn propget Today: ###
>
>>svn pg svn:auto-props ^^/A/B
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
>>svn pg svn:auto-props ^^/A/B -v
> Properties on 'file:///C:/SVN/src-trunk-2/Debug/subversion/tests/cmdline/svn-test-work/repositories/autoprop_tests-30/A/B':
> svn:auto-props
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
>>svn pg svn:auto-props A\B --show-inherited-props
> . - *.py=svn:eol-style=native
> *.cpp=svn:eol-style=native
>
> A\B - *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
>>svn pg svn:auto-props A\B --show-inherited-props -v
> Properties inherited from '.':
> svn:auto-props
> *.py=svn:eol-style=native
> *.cpp=svn:eol-style=native
>
> Properties on 'A\B':
> svn:auto-props
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> ### svnlook propget Today: ###
>
>>svnlook pg autoprop_tests-30 svn:auto-props A/B
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> (svnlook pg -v is not currently supported)
>
> PROPOSED CHANGES:
>
> ### FORMAT CHANGE: 'svnlook pl' outputs results similar to 'svn pl':
>>svnlook pl autoprop_tests-30 A/B
> Properties on '/A/B':
> svn:auto-props
> svn:global-ignores
>
> ### FORMAT CHANGE: 'svnlook pl -v' outputs results like 'svn pl -v'
>>svnlook pl autoprop_tests-30 A/B -v
> Properties on '/A/B':
> svn:auto-props
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
> svn:global-ignores
> *.pyc
>
> ### NEW OPTION: Add support for 'svnlook pl --show-inherited-props'
> with output similar to 'svn pl --show-inherited-props':
>>svnlook pl autoprop_tests-30 A/B --show-inherited-props
> Properties inherited from '/':
> svn:auto-props
> Properties on '/A/B':
> svn:auto-props
> svn:global-ignores
>
> ### NEW OPTION: As above, but with -v:
>>svnlook pl autoprop_tests-30 A/B --show-inherited-props -v
> Properties inherited from '/':
> svn:global-ignores
> *.pyc
> Properties on '/A/B':
> svn:auto-props
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
> Properties on '/A/B':
> svn:auto-props
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> ### NO CHANGE: 'svnlook pg' stays the same:
>>svnlook pg autoprop_tests-30 svn:auto-props A/B
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> ### NEW OPTION: Add support for 'svnlook pg -v' with output similar to
> 'svn pg -v':
>>svnlook pg autoprop_tests-30 svn:auto-props A/B -v
> Properties on '/A/B':
> svn:auto-props
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> ### NEW OPTION: Add support for 'svnlook pg --show-inherited-props'
> with output similar to 'svn pg --show-inherited-props':
>>svnlook pg autoprop_tests-30 svn:auto-props A/B --show-inherited-props
> . - *.py=svn:eol-style=native
> *.cpp=svn:eol-style=native
>
> A\B - *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> ### As above, but with new -v option:
> svnlook pg autoprop_tests-30 svn:auto-props A/B --show-inherited-props -v
> Properties inherited from '/':
> svn:auto-props
> *.py=svn:eol-style=native
> *.cpp=svn:eol-style=native
>
> Properties on '/A/B':
> svn:auto-props
> *.c=svn:eol-style=native
> *.h=svn:eol-style=native
>
> So the only backwards incompatible changes we'd be making compared to
> 1.7 are for 'svnlook pl' and 'svnlook pl -v', everything else proposed
> above is the result of a new option.
>
> Is this acceptable?

Done r1416637. See also http://svn.haxx.se/dev/archive-2012-11/0510.shtml

-- 
Paul T. Burba
CollabNet, Inc. -- www.collab.net -- Enterprise Cloud Development
Skype: ptburba
Received on 2012-12-03 19:57:34 CET

This is an archived mail posted to the Subversion Dev mailing list.