You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by Stefan Bodewig <bo...@apache.org> on 2005/05/23 09:32:14 UTC

[VOTE] Shut down the 1.6 branch after 1.6.5

Hi,

it's my strong belief that part of the reason the javah and move bugs
made it into 1.6.3 is that our branches are living too long.  The same
happened to 1.5.2 (which required 1.5.3 quickly) because the 1.5
branch lived to long (IMHO).

In my day-to-day Ant usage I use CVS HEAD, all the time, exclusively.
Sometimes I merge changes into the 1.6 branch without merging the unit
tests as well.  Sometimes I don't merge changes at all.  Sometimes I
forget to pull a change from the branch when it has been pulled from
HEAD ...

I bet, other committers have similar experiences.

It's not enough to say users don't beta-test our releases, in all
honesty, after X.Y.1 or maybe X.Y.2 we don't even alpha-test them
sufficiently ourselves.

This leads me to the subject of this vote.  Let's get rid of the
branch, stabelize CVS HEAD and release 1.7.0-beta in a reasonable
time-frame.

Cheers

        Stefan

PS: I also intend to start a vote that branches shouldn't live as long
as the 1.5 and 1.6 branches did but we do new releases from HEAD more
quickly.  This will wait until this vote has been decided.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by jm...@kruithof.xs4all.nl.
+1

Martijn

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Stefan Bodewig <bo...@apache.org>.
On Mon, 23 May 2005, Stefan Bodewig <bo...@apache.org> wrote:

> This leads me to the subject of this vote.  Let's get rid of the
> branch, stabelize CVS HEAD and release 1.7.0-beta in a reasonable
> time-frame.

+1

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Dominique Devienne <dd...@gmail.com>.
+1. Double commits is work and easy to forget. I like Steve's idea of
a quarterly drop and I agree with Jesse that we should be stricter
about what goes into a dot-dot release. I don't have much else to add.
--DD

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Jesse Glick <je...@sun.com>.
Stefan Bodewig wrote:
> Sometimes I merge changes into the 1.6 branch without merging the unit
> tests as well.  Sometimes I don't merge changes at all.  Sometimes I
> forget to pull a change from the branch when it has been pulled from
> HEAD ...
> 
> I bet, other committers have similar experiences.

I'm sure I have, even with my limited experience.

> This leads me to the subject of this vote.  Let's get rid of the
> branch, stabelize CVS HEAD and release 1.7.0-beta in a reasonable
> time-frame.

+1 from me. Maintenance releases are a good thing, but they should 
probably be reserved for the occasional regression or other serious bug.

> PS: I also intend to start a vote that branches shouldn't live as long
> as the 1.5 and 1.6 branches did but we do new releases from HEAD more
> quickly.  This will wait until this vote has been decided.

I think I would be +1 to this as well.

More generally, I think we need a clearer statement of what goes into 
dot-dot releases. A lot of features have been mixed into 1.6.x as well 
as bugfixes - and not just features, but changes to the 
org.apache.tools.ant.* "APIs" (i.e. classes in ant.jar which people 
would in practice refer to when embedding Ant or writing tasks or 
listeners etc.), as well as changes to the syntax permitted for tasks in 
build scripts (e.g. added attributes). Perhaps we should try to limit 
such changes to those required for fixes for serious bugs, under some 
reasonable definition of "serious" and "bug".

Maybe we should also request that any branch bugfix be accompanied by a 
regression test, unless there is some reason why a mechanical test for 
the bug is impractical.

Cheers,
-J.

-- 
jesse.glick@sun.com   x22801   netbeans.org   ant.apache.org
if I had known it was harmless I would have killed it myself


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Stefan Bodewig <bo...@apache.org>.
On Mon, 23 May 2005, Stephane Bailliez <sb...@apache.org> wrote:

> You did not vote, Stefan.

Thanks 8-)

I like to call for a vote and vote myself in two separate mails - and
forgot to send the second.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Stephane Bailliez <sb...@apache.org>.
Stefan Bodewig wrote:

>This leads me to the subject of this vote.  Let's get rid of the
>branch, stabelize CVS HEAD and release 1.7.0-beta in a reasonable
>time-frame.
>  
>
You did not vote, Stefan.

+1 for me.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Conor MacNeill <co...@apache.org>.
Stefan Bodewig wrote:
> Hi,
> 
> This leads me to the subject of this vote.  Let's get rid of the
> branch, stabelize CVS HEAD and release 1.7.0-beta in a reasonable
> time-frame.
> 

+1

Conor

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Alexey Solofnenko <tr...@gmail.com>.
I am also using CVS HEAD and it seems pretty stable for me.

- Alexey.

On 5/23/05, Stefan Bodewig <bo...@apache.org> wrote:
> 
> Hi,
> 
> it's my strong belief that part of the reason the javah and move bugs
> made it into 1.6.3 is that our branches are living too long. The same
> happened to 1.5.2 (which required 1.5.3 quickly) because the 1.5
> branch lived to long (IMHO).
> 
> In my day-to-day Ant usage I use CVS HEAD, all the time, exclusively.
> Sometimes I merge changes into the 1.6 branch without merging the unit
> tests as well. Sometimes I don't merge changes at all. Sometimes I
> forget to pull a change from the branch when it has been pulled from
> HEAD ...
> 
> I bet, other committers have similar experiences.
> 
> It's not enough to say users don't beta-test our releases, in all
> honesty, after X.Y.1 or maybe X.Y.2 we don't even alpha-test them
> sufficiently ourselves.
> 
> This leads me to the subject of this vote. Let's get rid of the
> branch, stabelize CVS HEAD and release 1.7.0-beta in a reasonable
> time-frame.
> 
> Cheers
> 
> Stefan
> 
> PS: I also intend to start a vote that branches shouldn't live as long
> as the 1.5 and 1.6 branches did but we do new releases from HEAD more
> quickly. This will wait until this vote has been decided.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
> For additional commands, e-mail: dev-help@ant.apache.org
> 
> 


-- 
Alexey N. Solofnenko trelony at gmail.com <http://gmail.com>
home: http://trelony.cjb.net/
Pleasant Hill, CA (GMT-8 hours usually)

Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Kev Jackson <ke...@it.fts-vn.com>.
>>Unfortunately there's no simple fix.
>>    
>>
>
>Sure.  Kill branches as soon as possible so we don't need a process
>for dealing with them.
>
>  
>
ok, so then maintaining the branch becomes a trivial exercise "after 2* 
months it's dead and new code is always in HEAD and you don't have to 
migrate it to the branch) *arbitrary figure

>>Obviously Ant doesn't have a full-time SCM manager/release manager
>>and this may be
>>    
>>
>
>Let me take a bit of pressure out of this.
>
>Every committer has taken the responsibility to merge or not merge
>changes into the branch on him/herself.  A process where the
>(volunteer) release manager had to approve each merge simply wouldn't
>scale IMHO.
>
>  
>
Ok I can see why there isn't a "release manager" as such based on the 
amount of effort it would be to track the changes, it would also be a 
thankless task if there was one!

>Also note that the Ant PMC is responible for the releases, not the
>release manager.
>
>I know that you know that and didn't mean to imply anything else 
>
Well actually I didn't know that - so thanks for informing me ;).  Ok 
kidding I knew the PMC was ultimately responsible for the release

>(in
>particular I deliberately took the quote out of context), just wanted
>to stress my POV again.
>
>  
>

No worries - I've got some boring docs to write here, so I'm more than 
willing to discuss something "extra-curricular" than get on with my real 
work...

Kev

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Stefan Bodewig <bo...@apache.org>.
On Mon, 23 May 2005, Kev Jackson <ke...@it.fts-vn.com> wrote:

> process issue then.

process is one of the most difficult things to enforce in an
all-volunteer organization. 8-)

> Unfortunately there's no simple fix.

Sure.  Kill branches as soon as possible so we don't need a process
for dealing with them.

> Obviously Ant doesn't have a full-time SCM manager/release manager
> and this may be

Let me take a bit of pressure out of this.

Every committer has taken the responsibility to merge or not merge
changes into the branch on him/herself.  A process where the
(volunteer) release manager had to approve each merge simply wouldn't
scale IMHO.

Also note that the Ant PMC is responible for the releases, not the
release manager.

I know that you know that and didn't mean to imply anything else (in
particular I deliberately took the quote out of context), just wanted
to stress my POV again.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Kev Jackson <ke...@it.fts-vn.com>.
>Yes.  In particular the number of bugs that are only present in the
>branch but not on CVS head.
>
>Both the <javah> and <move> bugs have been fixed in HEAD for many
>weeks before we released 1.6.3.
>
>  
>
process issue then.  The complexity of keeping the curent branch in a 
predictable state when the development continues on the HEAD is 
difficult to achieve when you can pay someone to work on it full-time.  
Obviously Ant doesn't have a full-time SCM manager/release manager and 
this may be contributing to the problem.  Unfortunately there's no 
simple fix.

Kev

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Stefan Bodewig <bo...@apache.org>.
On Mon, 23 May 2005, Kev Jackson <ke...@it.fts-vn.com> wrote:

> If I read this correctly, you're saying that the number of bugs
> increases when there's a long period of time between branches,
> mainly because it's difficult to test the branch properly as most
> (if not all) of the committers use HEAD.

Yes.  In particular the number of bugs that are only present in the
branch but not on CVS head.

Both the <javah> and <move> bugs have been fixed in HEAD for many
weeks before we released 1.6.3.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Stefan Bodewig <bo...@apache.org>.
On Mon, 23 May 2005, Steve Loughran <st...@apache.org> wrote:

> Was it Ant1.2 that evaluated properties in the order they were
> encountered at parse time, not execution time?

No, everything before Ant 1.2 did.

> Ant1.5 probably marked the change,

Agreed.

> Question is, what was better: early point releases at the price of a
> delayed Ant1.7?

I don't think 1.6.3 and .4, .5 delay Ant 1.7.x since we still have
major new features we wanted to add.  Maybe this time the almost
complete lack of shiny new features was holding back 1.7.

Just think of how much 1.6.0 changed the Ant world.  Compare
<import>/<macrodef>/<subant> with the difference between 1.6.4 and CVS
HEAD.  1.7.0 doesn't look that impressive.

> Especially given that a slow 1.7 release has let us be relaxed about
> many things, discussing them, experimenting with them?

Something that we absolutely need to do.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Steve Loughran <st...@apache.org>.
Kev Jackson wrote:
> Stefan Bodewig wrote:
> 
>> Hi,
>>
>> it's my strong belief that part of the reason the javah and move bugs
>> made it into 1.6.3 is that our branches are living too long.  The same
>> happened to 1.5.2 (which required 1.5.3 quickly) because the 1.5
>> branch lived to long (IMHO).
>>
>> In my day-to-day Ant usage I use CVS HEAD, all the time, exclusively.
>> Sometimes I merge changes into the 1.6 branch without merging the unit
>> tests as well.  Sometimes I don't merge changes at all.  Sometimes I
>> forget to pull a change from the branch when it has been pulled from
>> HEAD ...
>>
>>  
>>
> If I read this correctly, you're saying that the number of bugs 
> increases when there's a long period of time between branches, mainly 
> because it's difficult to test the branch properly as most (if not all) 
> of the committers use HEAD. (sorry if that's pretty obvious, but I want 
> to be sure of what you're saying).  It'd be interesting to see if other 
> open source projects experience the same situation.

This whole thing is an interesting problem.

You could argue that vendors like redhat and suse base much of their 
business plan on providing stable versions of OSS projects, that is, 
backporting bugs to stable OS releases, and effectively managing change 
for their end users. When you subscribe to one of the distros what you 
get is stability, not time-to-market features. That is free :)

Classic legacy shrink-wrapped apps have always charged for upgrades; in 
exchange for a release "4.X", you get a period of time in which your 
branch is the main app line, then a new release comes out, and it is 
still maintained for a bit. All development of the 5.x line is secret 
and not that relevant.  As a vendor of such stuff, supporting old 
versions is cost, but you cannot afford to give the users the 5.x branch 
for free, as that upgrade revenue is your cash flow. We call this the 
"old-microsoft-model", as they are the best at it. A problem they have 
is separating people from their money, hence the current "only dinosaurs 
run Office 97 ad series", which I personally think is wrong. (It's as if 
volvo ran adds going "only dinosaurs run volvo tanks from the eighties. 
They should be proud of the longevity of their product, not criticising 
users happy with the old vehicles)

Real-time deployed services have no releases, have no branches, they 
have "todays release" and "tomorrows release". This simplifies a lot. 
Any defect can be fixed overnight, and WORKSFORME errors are almost 
entirely eliminated. Against that a bad fix takes down your entire 
infrastructure, and there is a lot of pressure to roll out priority 
fixes immediately, without enough QA.

Ant originally released on almost a quarterly basis, with major changes 
between them. Was it Ant1.2 that evaluated properties in the order they 
were encountered at parse time, not execution time? Whatever, big 
changes took place [1]. As it became more broadly used, we went to 
annual releases, 1.3, 1.4, 1.5, with some bug fixes, but not much. All 
the dev effort went primarily into the next release. And it made sense. 
It was a small team, and there was no staff or need for old support. 
Fast and frequent was it.

Ant1.5 probably marked the change, it was when ant went mainstream
  -IDE integration
  -books
  -18-24 month interval between 1.5 and 1.6
Its also notable that Ant1.5.1 added a new feature, not a bug, a few 
months after Ant1.5. Erik's <fileset file> feature, which is invaluable. 
So we've been trickle feeding interesting stuff out for a while

Ant1.6.x was different again: major things have gone in to the point 
releases. Nested conditions in fail, io redirectors, other stuff. All 
excellent, all useful, and all major changes.

Some people were happy maintaining the branch (a lot of effort, I am 
much more lazy and usually only commit to CVS_HEAD), and, and this is 
important, the IDE users -netbeans, eclipse- seemed happy with point 
releases too. Now that ant has moved on from being just a command line 
tool, to something that most people first encounter in an IDE, it is one 
step removed from end users. Our primary customers are now the IDE teams 
[2], with their own wants and needs. One of those wants is releases on 
their schedule, another is more soak-tested stability and IDE integration.

Question is, what was better: early point releases at the price of a 
delayed Ant1.7? Especially given that a slow 1.7 release has let us be 
relaxed about many things, discussing them, experimenting with them?

I think the branching has worked, to the extent that although we get 
reports about problems fixed in CVS_HEAD, we dont get them about fixed 
problems. The end users -via those IDEs- have recent copies of Ant. 
Maybe we should have put
more bug fixes in, rather than less.


[1] I'll post a followup on that in a moment, having just looked through 
my mail archives.

[2] this is like the retail channel is the primary customer for home 
PCs,  not the end user. And the PC vendors are the primary customer for 
Windows OS releases. Its a complex little world out there.


> Based on this...
> 
> +1 (my not quite 2p's worth)

My vote is aso: +1

> 
>> I bet, other committers have similar experiences.
>>
>> It's not enough to say users don't beta-test our releases, in all
>> honesty, after X.Y.1 or maybe X.Y.2 we don't even alpha-test them
>> sufficiently ourselves.

I think the gradual divergence has come to hurt us. Maybe we ought to 
define a more formal policy for the future, such as annual releases, 
point fixes every quarter, no more, no less. That way we offer 
stability, and also get to head off pressure for more releases, putting 
stuff into a branch update instead of the next major drop, etc, etc.

>>
>>  
>>
> Rather we are busy testing the HEAD instead.

Also, when anyone files a bugrep we say "try against CVS_HEAD, close the 
bug if it goes away"

-steve

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Kev Jackson <ke...@it.fts-vn.com>.
Stefan Bodewig wrote:

>Hi,
>
>it's my strong belief that part of the reason the javah and move bugs
>made it into 1.6.3 is that our branches are living too long.  The same
>happened to 1.5.2 (which required 1.5.3 quickly) because the 1.5
>branch lived to long (IMHO).
>
>In my day-to-day Ant usage I use CVS HEAD, all the time, exclusively.
>Sometimes I merge changes into the 1.6 branch without merging the unit
>tests as well.  Sometimes I don't merge changes at all.  Sometimes I
>forget to pull a change from the branch when it has been pulled from
>HEAD ...
>
>  
>
If I read this correctly, you're saying that the number of bugs 
increases when there's a long period of time between branches, mainly 
because it's difficult to test the branch properly as most (if not all) 
of the committers use HEAD. (sorry if that's pretty obvious, but I want 
to be sure of what you're saying).  It'd be interesting to see if other 
open source projects experience the same situation.

Based on this...

+1 (my not quite 2p's worth)

>I bet, other committers have similar experiences.
>
>It's not enough to say users don't beta-test our releases, in all
>honesty, after X.Y.1 or maybe X.Y.2 we don't even alpha-test them
>sufficiently ourselves.
>
>  
>
Rather we are busy testing the HEAD instead.

>This leads me to the subject of this vote.  Let's get rid of the
>branch, stabelize CVS HEAD and release 1.7.0-beta in a reasonable
>time-frame.
>
>Cheers
>
>        Stefan
>
>PS: I also intend to start a vote that branches shouldn't live as long
>as the 1.5 and 1.6 branches did but we do new releases from HEAD more
>quickly.  This will wait until this vote has been decided.
>  
>
Been busy and 1.6.4 - 1.6.5 was a big shock, I remember the vote for 
1.6.3 (last week wasn't it!) ;)

Kev

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Steve Cohen <sc...@javactivity.org>.
Stefan Bodewig wrote:
> Hi,
> 
> it's my strong belief that part of the reason the javah and move bugs
> made it into 1.6.3 is that our branches are living too long.  The same
> happened to 1.5.2 (which required 1.5.3 quickly) because the 1.5
> branch lived to long (IMHO).
> 
> In my day-to-day Ant usage I use CVS HEAD, all the time, exclusively.
> Sometimes I merge changes into the 1.6 branch without merging the unit
> tests as well.  Sometimes I don't merge changes at all.  Sometimes I
> forget to pull a change from the branch when it has been pulled from
> HEAD ...
> 
> I bet, other committers have similar experiences.
> 
> It's not enough to say users don't beta-test our releases, in all
> honesty, after X.Y.1 or maybe X.Y.2 we don't even alpha-test them
> sufficiently ourselves.
> 
> This leads me to the subject of this vote.  Let's get rid of the
> branch, stabelize CVS HEAD and release 1.7.0-beta in a reasonable
> time-frame.
> 
> Cheers
> 
>         Stefan
> 
> PS: I also intend to start a vote that branches shouldn't live as long
> as the 1.5 and 1.6 branches did but we do new releases from HEAD more
> quickly.  This will wait until this vote has been decided.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
> For additional commands, e-mail: dev-help@ant.apache.org
> 
> 
> 
+1

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: [VOTE] Shut down the 1.6 branch after 1.6.5

Posted by Antoine Levy-Lambert <an...@gmx.de>.
> This leads me to the subject of this vote.  Let's get rid of the
> branch, stabelize CVS HEAD and release 1.7.0-beta in a reasonable
> time-frame.
> 
> Cheers
> 
>         Stefan
+1
Antoine
> 
> PS: I also intend to start a vote that branches shouldn't live as long
> as the 1.5 and 1.6 branches did but we do new releases from HEAD more
> quickly.  This will wait until this vote has been decided.
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org