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

Re: Ignore patterns should not be case sensitive (usability)

From: Karl Fogel <kfogel_at_red-bean.com>
Date: Wed, 26 Mar 2008 00:14:18 -0400

Ryan Schmidt <subversion-2008a_at_ryandesign.com> writes:
> On Mar 24, 2008, at 15:18, Erik Huelsmann wrote:
>> I'd like to point out all this discussion is moot: the current
>> interface for svn:ignore doesn't allow for case-insensitive patterns
>> other than the glob ones already provided.
>>
>> The svn:ignore property is a public interface, meaning that we can't
>> change it until 2.0. Adding more properties which 'do almost the same'
>> is definitely out of line with anything the Subversion developers have
>> done so far and probably only serves to confuse.
>
> Not *all* this discussion is moot... There have been several
> suggestions in this thread which could be implemented without
> breaking backward compatibility.

What Ryan said.

Plus a strategy that hasn't been discussed yet: using "/" as an escape
hatch, since "/" is meaningless in filename patterns (given that
Subversion and most platforms already reserve it as a path separator).

> For example, the suggestion of introducing a mode for ignores, which
> is set to case-sensitive by default, but which can be changed to case-
> insensitive by writing a line like "option: caseinsensitive" or
> "option: -casesensitive" or "option: casesensitive=no".
>
> http://svn.haxx.se/users/archive-2008-03/0780.shtml
>
> I agree with Karl that such a line is highly unlikely to be used in
> existing ignore rules such that it should not affect backward
> compatibility in practice.
>
> http://svn.haxx.se/users/archive-2008-03/0781.shtml

Agreed, and if we were still worried about compatibility, we'd just
start such meta-syntactic lines with "/", like

   / option: case-insensitive
   *.txt
   *.obj
   / option: case-sensitive
   readme

...or something along those lines.

> Or maybe global-ignores could be changed into a section by itself,
> just like auto-props is:
>
> [global-ignores]
> *.bak
> *.o
> *.lo
>
> I like this best, as this would have the advantage that it could then
> use exactly the same syntax as svn:ignore for setting the case
> sensitivity mode. Specifying global-ignores the "old" way would still
> be supported for backwards compatibility but would remain case-
> sensitive.

Yup.

Erik, I don't think this discussion is moot. There *are* things we can
do here. It may be that for some reason we decide to do nothing, but
compatibility concerns need not force the decision, fortunately.

-Karl

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-03-26 05:14:47 CET

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.