> Typically Apache projects who use 
> release:stage use it *instead* of release:perform.


100% agree with the :stage instead of :perform! 


> We can't do it quite like that, because release:perform creates a new binary; 
> we 
> have to vote on the final binary.  

Also a _very_ philosophic topic :) Currently there is a lot of discussion about 
that. Better ask Brett or Brian for the current state, but as far as I 
understood, the ASF board sees the 'distribution' of Apache projects as _only_ 
the sources! They explicitely say that the vote is not on the created binary 
but only on the sources. That's why the currently force maven to change the 
release process to mandatorily create a source package.

So there is currently a lot of discussion/rethinking of mavens way to do a 
release. Maybe we should ask the actual question on the maven list and then 
come back with the answer.

LieGrue,
strub


----- Ursprüngliche Mail ----
> Von: Dan Fabulich <d...@fabulich.com>
> An: Commons Developers List <dev@commons.apache.org>
> Gesendet: Donnerstag, den 14. Mai 2009, 01:17:41 Uhr
> Betreff: Re: AW: AW: [releasing] SVN Tag creeated by maven
> 
> Mark Struberg wrote:
> 
> > 
> > You are right, but maybe we mix up two things:
> > 
> > a) In almost all other SCMs (except SVN) a tag is a 'reference' to a 
> > specific 
> version. In SVN it's a copy (virtually a readonly branch) so you cannot have 
> multiple tags on the same revision. -> the rettagging isn't valid because 
> it's 
> _not_ physically the same.
> 
> This is a philosophical question of source code identity.  Is a copy of 
> source 
> code "the same" as the original?  What about a symlink?  SVN copies are 
> "lightweight;" they're more like symlinks than true copies.  Questions like 
> these have no right answer IMO.
> 
> > b) for SVN it's imho perfectly ok to delete a copy which is erronous, 
> > because 
> you don't touch trunk here. So a RC which never got deployed to another area 
> than staging may imho safely be deleted/rollbacked.
> 
> It's not "unsafe" to delete/recreate a tag, but it does violate the 
> convention 
> that tags are read-only copies.  It's certainly not ideal.
> 
> > Maybe a mixed scenario would work. Doing development, calling a X-RC-[1-n] 
> > if 
> all is ok, do a X release:prepare release:stage, call a vote on that stage, 
> if 
> it passes do a release:perform. That should combine the best parts of both 
> processes, wdyt?
> 
> We can't do it quite like that, because release:perform creates a new binary; 
> we 
> have to vote on the final binary.  Typically Apache projects who use 
> release:stage use it *instead* of release:perform.
> 
> (The way we use it, release:perform is run with a -Prc profile, so it 
> basically 
> is release:stage for all intents and purposes.)
> 
> But let's suppose we did what you said, except don't do the final 
> release:perform, just release:prepare, then release:stage, vote, and then 
> manually release the staged RC (perhaps using maven-stage-plugin).
> 
> Even then, the tag riddle is in release:prepare.  release:prepare is the one 
> that creates the tag, unfortunately.  If you need to do multiple RCs, you 
> have 
> to run release:prepare multiple times, and that means deleting/recreating the 
> tag every time like we do today.
> 
> If you think deleting/recreating the tag is totally fine, then this won't 
> bother 
> you; we'll just stick with the release process we have today.
> 
> But if it bothers you that our tags are mutable, then you'll yearn for some 
> better solution; arguably, Maven is unwilling/unable to provide that solution 
> right now.
> 
> -Dan




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

Reply via email to