You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Riccardo Murri <rm...@cscs.ch> on 2008/09/12 14:22:09 UTC

[PATCH] Various little improvements for contrib/client-side/asvn

Hello,

I've hacked the contributed "asvn" script, mainly to make it run on
Solaris with the default /bin/sh.  Since the patch is
quite large, I attach both the patch and the patched asvn.

Kind regards,
Riccardo Murri

[[[

asvn: Solaris compatibility and other little improvements.

* contrib/client-side/asvn: 
  * Solaris compatibility (/bin/sh syntax + don't assume core
    utilities are GNU versions).
  * Allow setting paths to the 'svn' and 'find' utilities via
    SVN and FIND environment variables.
  * Removed symlink support, since it's now in SVN itself.
  * Check that 'find' supports the "-printf" switch.
  * Suppress SVN error messages when checking files/dirs that are
    not registered in the repository.
  * Command word can come after options.
  * Honor "-q/--quiet" option.
  * Exit with svn's exitcode.
  * Use 'mktemp' for creating temporary files.
  * No hardcoded paths to common binaries.
  * Check that required UNIX system tools can be found in PATH.

]]]

-- 
Riccardo Murri
CSCS - Swiss National Centre for Supercomputing
Galleria 2, via Cantonale
CH-6928 Manno (Switzerland)

tel.: +41 91 610 8234
Fax: +41 91 610 8282

Re: [PATCH] Various little improvements for contrib/client-side/asvn

Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
Riccardo,

Thanks for updating your patches.  Can anyone (Ross?) review them,
please?

(Even if they are not reviewed, I'm not intending to file an issue for
this, since asvn is a contrib/ project.)

Thanks,

Daniel

Riccardo Murri wrote on Fri, 19 Sep 2008 at 17:20 +0200:
> Hello,
> 
> Daniel Shahaf wrote:
> > With my patch manager hat on...
> > 
> > Ross Mark wrote on Tue, 16 Sep 2008 at 11:38 +1000:
> > > From the description given I'm happy to accept these changes so long as they
> > > actually work :-)
> > 
> > ... I need to know whether this is a "yes" or a "no" -- it seems to be
> > neither. :)  If you can find the time to review Riccardo's changes
> > (which, before review, should probably be split into "one patch per one
> > logical change") and commit them, it would be great  :)
> > 
> 
> Please find attached three smaller patch bunches, for easier
> reviewing.  Patch grouping is historical rather than logical, though.
> (It's the three revisions that I did commit to our local repository.)
> 
> Note that patch bundle asvn.3.diff fixes a couple of bugs introduced
> by asvn.2.diff, but also removes symlink support from asvn.
> 
> Regards,
> Riccardo
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Various little improvements for contrib/client-side/asvn

Posted by Riccardo Murri <rm...@cscs.ch>.
Hello,

Daniel Shahaf wrote:
> With my patch manager hat on...
> 
> Ross Mark wrote on Tue, 16 Sep 2008 at 11:38 +1000:
> > From the description given I'm happy to accept these changes so long as they
> > actually work :-)
> 
> ... I need to know whether this is a "yes" or a "no" -- it seems to be
> neither. :)  If you can find the time to review Riccardo's changes
> (which, before review, should probably be split into "one patch per one
> logical change") and commit them, it would be great  :)
> 

Please find attached three smaller patch bunches, for easier
reviewing.  Patch grouping is historical rather than logical, though.
(It's the three revisions that I did commit to our local repository.)

Note that patch bundle asvn.3.diff fixes a couple of bugs introduced
by asvn.2.diff, but also removes symlink support from asvn.

Regards,
Riccardo

-- 
Riccardo Murri
CSCS - Swiss National Centre for Supercomputing
Galleria 2, via Cantonale
CH-6928 Manno (Switzerland)

tel.: +41 91 610 8234
Fax: +41 91 610 8282

Re: [PATCH] Various little improvements for contrib/client-side/asvn

Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
With my patch manager hat on...

Ross Mark wrote on Tue, 16 Sep 2008 at 11:38 +1000:
> From the description given I'm happy to accept these changes so long as they
> actually work :-)

... I need to know whether this is a "yes" or a "no" -- it seems to be
neither. :)  If you can find the time to review Riccardo's changes
(which, before review, should probably be split into "one patch per one
logical change") and commit them, it would be great  :)

> Some of the changes mentioned have been suggested for quite
> some time and I'm glad that someone took the effort to do them. Work and
> family commitments (3 yr old and 6 mth old) have prevented me from following
> subversion developments. I'm just happy that there is obviously at least one
> other person who is still using the script.
> 

Check the logs of #svn some time.  The 'asvn' factoid is invoked
relatively often. :)

> Personally I would need to keep with my original asvn script as I still need
> to support symlinks. My company wrote our own svn client application for
> upgrading our embedded device file systems in the field, which doesn't need a
> working copy, this program hasn't been upgraded to understand symlinks from
> subversion.
> 
> I'm not sure if anyone is interested in our application, we called it
> svndelta. If people are let me know and I'll see if I can get it released. In
> summary it only supports update, checkout and switch operations. By not
> allowing mixed revisions, keyword expansion or eol modifications we are able

Does it allow local text mods?

Daniel

> to remove the need for a base copy of the files being checked out. We keep a
> single version identifier for the entire filesystem. When an update is
> performed the working files are used as reference for the deltas which get
> applied into a holding directory. Once all the files are downloaded to the
> holding directory they are then applied to the working filesystem so the
> changes are only applied once the entire revision is available. Obviously it
> also understands the asvn properties for symlinks, devices and ownership. We
> have been running this program for a few years now and after performing around
> 1000 upgrades we have yet to have a corrupted system.
> 
> 
> Thanks for the interest
> 
> Ross
> 
> 
> Daniel Shahaf wrote:
> > Ping, CCing the script's author.  (Apparently Ross doesn't have partial
> > commit access yet?)
> > 
> > Riccardo Murri wrote on Fri, 12 Sep 2008 at 16:22 +0200:
> >   
> > > Hello,
> > > 
> > > I've hacked the contributed "asvn" script, mainly to make it run on
> > > Solaris with the default /bin/sh.  Since the patch is
> > > quite large, I attach both the patch and the patched asvn.
> > > 
> > > Kind regards,
> > > Riccardo Murri
> > > 
> > > [[[
> > > 
> > > asvn: Solaris compatibility and other little improvements.
> > > 
> > > * contrib/client-side/asvn:   * Solaris compatibility (/bin/sh syntax +
> > > don't assume core
> > >     utilities are GNU versions).
> > >   * Allow setting paths to the 'svn' and 'find' utilities via
> > >     SVN and FIND environment variables.
> > >   * Removed symlink support, since it's now in SVN itself.
> > >   * Check that 'find' supports the "-printf" switch.
> > >   * Suppress SVN error messages when checking files/dirs that are
> > >     not registered in the repository.
> > >   * Command word can come after options.
> > >   * Honor "-q/--quiet" option.
> > >   * Exit with svn's exitcode.
> > >   * Use 'mktemp' for creating temporary files.
> > >   * No hardcoded paths to common binaries.
> > >   * Check that required UNIX system tools can be found in PATH.
> > > 
> > > ]]]
> > > 
> > > 
> > >     
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Various little improvements for contrib/client-side/asvn

Posted by km...@rockwellcollins.com.
Ross Mark <ro...@controllingedge.com.au> wrote on 09/15/2008 08:38:41 PM:

...

> I'm not sure if anyone is interested in our application, we called it 
> svndelta. If people are let me know and I'll see if I can get it 
> released. In summary it only supports update, checkout and switch 
> operations. By not allowing mixed revisions, keyword expansion or eol 
> modifications we are able to remove the need for a base copy of the 
> files being checked out. We keep a single version identifier for the 
> entire filesystem. When an update is performed the working files are 
> used as reference for the deltas which get applied into a holding 
> directory. Once all the files are downloaded to the holding directory 
> they are then applied to the working filesystem so the changes are only 
> applied once the entire revision is available. Obviously it also 
> understands the asvn properties for symlinks, devices and ownership. We 
> have been running this program for a few years now and after performing 
> around 1000 upgrades we have yet to have a corrupted system.

Sorta like a "smart" svn export?  Or a "lightweight" client that
stores minimal data and needs to contact the server for most info?

I think many would find this useful functionality.  (I know
I would have a few uses for it.)

Depending upon what happens with the working copy
redesign, it my become less needed.  Not sure I've seen any
requirements or suggestions to allow a mode for minimization
of the client side meta data though...

Kevin R.

Re: [PATCH] Various little improvements for contrib/client-side/asvn

Posted by Ross Mark <ro...@controllingedge.com.au>.
From the description given I'm happy to accept these changes so long as 
they actually work :-) Some of the changes mentioned have been suggested 
for quite some time and I'm glad that someone took the effort to do 
them. Work and family commitments (3 yr old and 6 mth old) have 
prevented me from following subversion developments. I'm just happy that 
there is obviously at least one other person who is still using the script.

Personally I would need to keep with my original asvn script as I still 
need to support symlinks. My company wrote our own svn client 
application for upgrading our embedded device file systems in the field, 
which doesn't need a working copy, this program hasn't been upgraded to 
understand symlinks from subversion.

I'm not sure if anyone is interested in our application, we called it 
svndelta. If people are let me know and I'll see if I can get it 
released. In summary it only supports update, checkout and switch 
operations. By not allowing mixed revisions, keyword expansion or eol 
modifications we are able to remove the need for a base copy of the 
files being checked out. We keep a single version identifier for the 
entire filesystem. When an update is performed the working files are 
used as reference for the deltas which get applied into a holding 
directory. Once all the files are downloaded to the holding directory 
they are then applied to the working filesystem so the changes are only 
applied once the entire revision is available. Obviously it also 
understands the asvn properties for symlinks, devices and ownership. We 
have been running this program for a few years now and after performing 
around 1000 upgrades we have yet to have a corrupted system.


Thanks for the interest

Ross


Daniel Shahaf wrote:
> Ping, CCing the script's author.  (Apparently Ross doesn't have partial 
> commit access yet?)
>
> Riccardo Murri wrote on Fri, 12 Sep 2008 at 16:22 +0200:
>   
>> Hello,
>>
>> I've hacked the contributed "asvn" script, mainly to make it run on
>> Solaris with the default /bin/sh.  Since the patch is
>> quite large, I attach both the patch and the patched asvn.
>>
>> Kind regards,
>> Riccardo Murri
>>
>> [[[
>>
>> asvn: Solaris compatibility and other little improvements.
>>
>> * contrib/client-side/asvn: 
>>   * Solaris compatibility (/bin/sh syntax + don't assume core
>>     utilities are GNU versions).
>>   * Allow setting paths to the 'svn' and 'find' utilities via
>>     SVN and FIND environment variables.
>>   * Removed symlink support, since it's now in SVN itself.
>>   * Check that 'find' supports the "-printf" switch.
>>   * Suppress SVN error messages when checking files/dirs that are
>>     not registered in the repository.
>>   * Command word can come after options.
>>   * Honor "-q/--quiet" option.
>>   * Exit with svn's exitcode.
>>   * Use 'mktemp' for creating temporary files.
>>   * No hardcoded paths to common binaries.
>>   * Check that required UNIX system tools can be found in PATH.
>>
>> ]]]
>>
>>
>>     


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] Various little improvements for contrib/client-side/asvn

Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
Ping, CCing the script's author.  (Apparently Ross doesn't have partial 
commit access yet?)

Riccardo Murri wrote on Fri, 12 Sep 2008 at 16:22 +0200:
> Hello,
> 
> I've hacked the contributed "asvn" script, mainly to make it run on
> Solaris with the default /bin/sh.  Since the patch is
> quite large, I attach both the patch and the patched asvn.
> 
> Kind regards,
> Riccardo Murri
> 
> [[[
> 
> asvn: Solaris compatibility and other little improvements.
> 
> * contrib/client-side/asvn: 
>   * Solaris compatibility (/bin/sh syntax + don't assume core
>     utilities are GNU versions).
>   * Allow setting paths to the 'svn' and 'find' utilities via
>     SVN and FIND environment variables.
>   * Removed symlink support, since it's now in SVN itself.
>   * Check that 'find' supports the "-printf" switch.
>   * Suppress SVN error messages when checking files/dirs that are
>     not registered in the repository.
>   * Command word can come after options.
>   * Honor "-q/--quiet" option.
>   * Exit with svn's exitcode.
>   * Use 'mktemp' for creating temporary files.
>   * No hardcoded paths to common binaries.
>   * Check that required UNIX system tools can be found in PATH.
> 
> ]]]
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org