On 31 May 2013 10:41, James Nord (jnord) <[email protected]> wrote:

> > -----Original Message-----
> > From: Stephen Connolly [mailto:[email protected]]
> > Sent: 31 May 2013 10:29
> > To: Maven Developers List
> > Subject: Re: [VOTE] Should we respin CANCELLED releases with the same
> > version number?
> >
> > On 31 May 2013 10:22, James Nord (jnord) <[email protected]> wrote:
> >
> > > > This discussion about respins is really strange to me. I've been
> > > > cutting releases, with Maven, at Apache, for years now. And all of
> > > > them have
> > > reused
> > > > version numbers for respins. And all of them have carefully used
> > > > staging technology (old: directories, new: Nexus) to ensure that
> > > > artifacts don't escape to the wild until they pass the vote.
> > >
> > > But they have to be in the wild in order to test (especially plugins).
> > >
> > > This adds a barrier to test for external people in a corporate
> > > environment, and can cause mishaps if one library delivered with a
> > > plugin is not cleaned up correctly from a MRM, causing the old failed
> > > version to be served up to clients.
> > >
> > > Basically IMHO reusing version numbers violates maven rule #1 releases
> > > never change.
> > >
> > > Personally I wouldn't care if 3.3.0 is called 3.3.0-7 or 3.3.0-24  so
> > > long as it is the official "3.3.0".
> > >
> > > After all isn't this what the buildnumber is for?
> > >
> > > +1 no reusing version numbers (non binding)  (but I am against
> > > +skipping
> > > x.y.z versions - e.g. there should not be a gap from 3.2.12 to 3.3.6 )
> > >
> >
> > Can you please explain that last bit?
> >
> > If there is an API change (backwards compatible) that necessitates the
> next
> > version after 3.2.12 have a minor version incremented and then it turns
> out
> > that it takes another 7 tries to get a viable release out the door then
> that
> > means that the released versions you would see (with no re-using) would
> be
> > 3.2.12 and then 3.3.6. If you allow for reusing, you would get
> > 3.2.12 followed by 3.3.0... perhaps you could explain what you are
> exactly
> > against and how such a situation could arrise?
>
>
> So what I am for is the following (example) (which does not re-use version
> numbers):
>
> So we have 3.2.12 (released as you currently do).
> New breaking API is encountered
> So you up the minor version - and create a "RC" release
> That version is 3.3.0-1  (the buildnumber is important)
> That fails due to some license not being present, so you release the next
> version
> 3.3.0-2
> ...
> 3.3.0-3
> ...
> 3.3.0-7
> This passes the vote and the announce about apache maven 3.3.0 available
> for download goes onto the website and links to 3.3.0-7
> After release some bugs are found,
> Next version is 3.3.1-nnn
>
>
> What I am against is the following (which **also** does not re-use version
> numbers):
> So we have 3.2.12 (released as you currently do).
> New breaking API is encountered
> So you up the minor version - and create a "RC" release
> That version is 3.3.0
> That fails due to some license not being present, so you release the next
> version
> 3.3.1
> ...
> 3.3.3
> ...
> 3.3.7
> This passes the vote and the announce about apache maven 3.3.7 available
> for download goes onto the website (but there is no mention of 3.3.6 or any
> other prior 3.3.x)
>
> So I would not want to see (in "released version") 3.2.12 -> 3.3.7 ->
> 3.3.16 -> 3.4.7
>
>
FYI,

Tomcat goes with the skipping, e.g.
http://archive.apache.org/dist/tomcat/tomcat-7/ where the first non-beta
7.0.x is 7.0.6 and I don't see a 2.4.0 for HTTPD
http://archive.apache.org/dist/httpd/

So some of the 'older' Apache projects are just fine skipping version
numbers.

I personally don't see what is so offensive about 3.3.7 over 3.3.0-7. I
think you are just as likely to have somebody moan about where were 3.3.0-1
through 3.3.0-6 as they would moan about where are 3.3.0 through 3.3.6...
and the answer would be the exact same... those were not good enough... so
they were not released.

The practical reality is that we should never get that far... assuming we
have enough eyes looking at releases.

Yes 3.1.0-alpha-1 has had/will have at least four respins... primarily
because the volunteers have been slow stepping up and testing...

Part of the issue from my PoV with stepping up and testing is that version
number reuse can lead to worry that you install a pre-release version and
it ends up getting changed and 3 months later you encounter some bug on the
system and think you are using the released version only to find out that
it was the pre-release version you were using... that is bad... that is the
primary driver for preventing reuse.

But if we reboot the community here successfully, we will have more eyes,
we will have more testing of -SNAPSHOTs and more testing of -alpha's and
-beta's so the reality is that we should not be in a case where we end up
as 3.3.7 being the first 3.3.x release... 95% of the time it should be
3.3.0 and the remainder of the time it might be 3.3.1 with maybe 0.01% of
the time ending up at 3.3.2


> Hope that makes it clearer.
>
> /James
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to