|
From: | Aaron Bentley |
Subject: | Re: [Gnu-arch-users] "tla commit" generates a patch-set even if there are no changes |
Date: | Fri, 21 May 2004 08:11:24 -0400 |
User-agent: | Mozilla Thunderbird 0.5 (X11/20040306) |
Wazow wrote:
Aaron Bentley <address@hidden> writes:I said "the harm comes from changing the default behavior". That's a script-unfriendly policy.Your existing scripts would merely need to be changed to use the option.Yes. In general, that's bad.It has always been an advantage of free software projects that they are legacy free (contrary to many commercial projects). Some free software project took this compatibility breaking to the extreme (gcc and glibc among the greatest).
I don't see how that's true. gcc and glibc are implementations of established standards, as are the Linux kernel, Wine, Samba and Apache. Many gnu tools implement options as specified by POSIX, and they recently changed the meaning of -H in ls for greater standards compliance. Can you imagine what would happen if gcc changed -Wall to -Weverything?
It is nearly always the right thing to introducesuch a small inconsistency for the sake of better next release.
Yes, but what makes a "better next release" is up for debate. I submit that if you're going to break add-on tools, the value of the change must justify it.
If people really hate it then this could be made optional (whether --force is default or not).
It's already available as a non-default behavior.
People should be able to update to the latest version of tla without breaking their existing tools. I've found out just recently that I've been distributing an obsolete script, because tla shifted underneath me. I shouldn't have to test every script in my collection every timeI do a tla update.You should.
That's a tremendous, unjustified burden. So long as tla commands do what they've always done, my scripts won't break. Should I also ensure that ls -l still works every time I apt-get a new version?
In fact at least if you ship your scripts to the public you should have a solid bunch of tests which you run before each release.
I don't have releases. Or did you mean tla releases? Because I don't have control over which version of tla people run, and gratuitous changes just make it harder to stay compatible with all of 'em. Any test suite I did have would be considerably longer than the scripts themselves. One in particular just invokes tla changes --diff address@hidden
Aaron
[Prev in Thread] | Current Thread | [Next in Thread] |