commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sebb <seb...@gmail.com>
Subject Re: Release hell WAS: [VOTE] Release Apache Commons Codec 1.5-RC1
Date Wed, 30 Mar 2011 18:51:18 GMT
On 30 March 2011 19:23, Mark Thomas <markt@apache.org> wrote:
> On 30/03/2011 18:43, Phil Steitz wrote:
>> I get that, which is why I think some kind of middle ground where we
>> provide simple scripts to move stuff around on the ASF hosts might
>> be a good compromise.  This is essentially what the ibiblio-rysnch
>> stuff does.  The only manual missing piece is correctly updating the
>> maven-metadata (which logically the assembly or other such plugin
>> could do locally) and maybe some kind of check to make sure that
>> things are deployed to the right directories.
>
> You might want to take a look at how Tomcat 7 does this. It is built
> with Ant [1] and has a separate Ant script [2] for uploading stuff to
> the ASF snapshot, staging and release repositories which also handles
> the meta-data.

But the script appears to need quite a lot of configuration that has
to match the release.

> Timing wise:
> - creating the release: 2 mins work + ~15 mins build time
> - uploading for voting: 2 mins work + ~60 mins transfer time
> - moving to dist if vote passes: 2 mins work
> - updating the site: 5 mins work
> - creating maven artifacts: 2 mins work + ~60 mins transfer time
>
> It constantly amazes me how much more complicated the release process
> appears to be in Commons for what should be much simpler components than
> Tomcat (no Windows installer, no native libraries, no fun with different
> NOTICE and LICENSE files for different jars, etc.).

However, Commons has a lot of different components with differing
numbers of release artifacts and diferent source directory layouts.
And at least one component does have native code (Daemon) and one has
special processing for user guide (Math) and another requires multiple
builds and jars (DBCP). And I think some may still use Maven 1.

I think a lot of the (perceived) complication is due to the fact that
the build instructions have not been fully updated since Maven 1.

Also, there are a lot of different RMs (generally one per component)
rather than one per Tomcat version, so the RMs are generally not as
familiar with the process.

If there is a problem with the Tomcat script, you can tweak it and
test it quite easily as there's only one product to test against.
Does the Tomcat 7 script work as is with Tomcat 6 and 5?

I'm not saying that the Commons release process could not be improved,
but I do think that:
- it is not as bad as people make out - though the docs need lots of work
- replacing it will not be a trivial task, because of the number of components

> I assume it shouldn't be too difficult to do a similar thing with a
> couple of Maven scripts.

Unfortunately Maven is much harder to tweak than Ant if one wants to
do anything slightly unusual, and debugging problems is much harder
than with Ant.

> Mark
>
> [1] http://svn.apache.org/viewvc/tomcat/trunk/build.xml?view=annotate
> [2]
> http://svn.apache.org/viewvc/tomcat/trunk/res/maven/mvn-pub.xml?view=annotate
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
>

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


Mime
View raw message