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

Re: [Issue 4124] New - Give servers sufficient means to disallow commits from clients based on version numbers

From: Cedric JP. Brasey <cedric.brasey_at_planet-side.co.uk>
Date: Thu, 16 Aug 2012 15:46:34 +0100


Just my two pence worth...


From a hooking point; I would have to say that i would only really care about what the client level is. For example. On pre-commit i would like to know if the client is at least 1.7, so that I can then reject the commit. I can't imagine, for the mo anyways, any scenario where i would care if this is a windows client, svn kit, etc.


From a server point; I would imagine that this would be like the preverbal pot 'o gold. You could introduce new functions with the assurance that the client is of the correct spec. Backwards compatibility would also be easier with the introduction of a 'minimum level' for the methods...


Food for thought really. _____

  From: Mark Phippard [mailto:markphip_at_gmail.com]
To: C. Michael Pilato [mailto:cmpilato_at_collab.net]
Cc: Subversion Development [mailto:dev_at_subversion.apache.org]
Sent: Thu, 16 Aug 2012 15:18:13 +0000
Subject: Re: [Issue 4124] New - Give servers sufficient means to disallow commits from clients based on version numbers

On Thu, Aug 16, 2012 at 10:10 AM, C. Michael Pilato <cmpilato_at_collab.net> wrote:

> So, incorporating some of the great suggestions on this thread so far, but
> adding some of my own, I'd like to reset this design discussion with the
> following proposal:
> # Reports the general name of the client.
> #
> # Examples: "svn", "tortoisesvn", "svnkit"
> #
> # Default value: "svn".
> #
> client-name=[-_a-zA-Z0-9]+
> # Reports the specific version of the client.
> #
> # Examples: "1.6.0a2", "1.5.4dfsg1-1ubuntu2.1"
> #
> # Default value: ${SVN_VER_NUMBER}
> #
> client-version=[-_a-zA-Z0-9\.\+]+
> # Reports the version of the Apache Subversion libraries with which
> # this client is most compatible.
> #
> # Examples: "1.6.0", "1.8.0-dev", "1.7.0-alpha1"
> #
> # Default value: ${SVN_VER_NUMBER}
> #
> client-compat-version=[0-9]+\.[0-9]+\.[0-9]+(-[a-z0-9]+)?
> Here are some examples:
> client-name=svn
> client=version=1.8.0-dev
> client-compat-version=1.8.0-dev
> client-name=svnkit
> client-version=1.7.5-v1
> client-compat-version=1.7.5
> client-name=tortoisesvn
> client-version=1.7.8
> client-compat-version=1.7.6
> client-name=svn
> client=version=1.5.4dfsg1-1ubuntu2.1
> client-compat-version=1.5.4
> I think this will allow the best of both worlds for hook authors: the
> deeper insight needed to rule in/rule out specific clients and client
> versions, plus a way to make more general rulings based on the set of
> features expected to be present in a given Apache Subversion release.
> Thoughts?

It probably does not hurt anything to "do more" as your proposal does.
But personally, I think that your "client-compat-version" value is
the only one that is needed and I would be fine if that was the only
thing we added.

Mark Phippard
This e-mail and any attached files are confidential and may also be legally privileged.
They are intended solely for the intended addressee. If you are not the addressee 
please e-mail it back to the sender and then immediately, permanently delete it. Do 
not read, print, re-transmit, store or act in reliance on it. This e-mail may be monitored
 by Planet Side Limited in accordance with current regulations. This footnote also 
confirms that this e-mail message has been swept for the presence of computer viruses 
currently known to Planet Side Limited. However, the recipient is responsible for virus-checking 
before opening this message and any attachment. Unless expressly stated to the contrary,
 any views expressed in this message are those of the individual sender and may not 
necessarily reflect the views of Planet Side Limited. 
Received on 2012-08-16 16:47:18 CEST

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