On Mon, Apr 27, 2015 at 10:45AM, Andrew Wang wrote: > I think Karthik correctly identified the two reasons we might want to > denote a release as "unstable": > > a) Compatibility. Whether we have freedom to break compatibility before the > final release, i.e. what "alpha" typically means.
Breaking compatibility within minor releases is a very novel idea, introduced to the world by Scala, if I am not mistaken. In general though, it is a pretty bad practice to have 2.8.0 be incompatible with 2.8.1 - this isn't what normally is expected from a subminor update. > b) Quality. As Konst says, a release can be allowed to break compatibility > ("alpha") but itself still be a high quality release. I don't think Konst has advocated to make subminors incopatible ;) As for the original question, I'd really go with a normal versioning and just documenting any stability concerns. Cos > We could try and separate out these two concerns when it comes to > versioning, but I think in reality users only care about prod vs. non-prod, > which is why many other projects (Linux, HBase, etc) just have two release > lines: "stable" (compatible/good-quality) vs. "unstable" > (unknown-compatible/unknown-quality). > > To this end, I don't mind what we choose, as long as the difference between > stable and unstable is denoted by the version number. I don't like the idea > of tagging a release as good after the fact (1). The other projects we've > used as examples make strong statements about their stable release lines, > and we should too. Our downstreams and end users will appreciate clarity > from the version number. > > Best, > Andrew > > On Sun, Apr 26, 2015 at 9:51 AM, Hitesh Shah <hit...@apache.org> wrote: > > > There are a couple of different approaches we could take. > > > > How about publishing/releasing bits such as “2.8.0-RC0”. Downstream > > projects can depend on these and use them normally similar to the approach > > that they would have taken with release 2.8.0 or 2.8.0-alpha. After some > > baking ( or more RC suffixed releases), at some point, a proper 2.8.0 > > release could be made? The RC tag clearly indicates to downstream layers > > that things will be in flux slightly. Trying to distinguish > > incompatibilities between 2.8.0 and 2.8.1/2.8.2 ( just because 2.8.0 was > > tagged alpha in documentation ) are likely to be a nightmare to deal with > > especially for new features introduced in the 2.8 release ( which might get > > changed slightly based on usage feedback ). > > > > Furthermore, considering the release history of hadoop, the likelihood > > that 2.9.0 will show up before 2.8.2 seems to be very high. > > > > With respect to the proposed choice (1), I thought that HBase applied a > > different approach. The odd-number releases were always unstable and the > > even number releases were the stable ones. This “could" make things a bit > > more clear for downstream users without needing to resort to modified > > versioned numbers ( with alpha/beta tags ) or requiring users to go look up > > the website to find out which particular version of 2.8.x was the first > > stable release. > > > > thanks > > — Hitesh > > > > > > > > > > > > On Apr 22, 2015, at 2:17 PM, Vinod Kumar Vavilapalli < > > vino...@hortonworks.com> wrote: > > > > > Forking the thread. > > > > > > In the previous 2.7.1 thread [1], there were enough yays to my proposal > > to wait for a bug-fix release or two before calling a 2.x release stable. > > There were some concerns about the naming. > > > > > > We have two options, taking 2.8 as an example > > > (1) Release 2.8.0, call it as an alpha in documentation and release > > notes, wait for a 2.8.1/2.8.2 reasonably stable enough to be called as the > > first stable release of 2.8. > > > (2) Release 2.8.0-alpha, 2.8.0-beta etc before culminating in a 2.8.0 > > stable release. > > > > > > (1) is what I preferred first up. This is what HBase used to do, and far > > beyond, in the linux kernel releases. It helps in scenarios where we are > > forced to downgrade a release, say due to major issues. We can simply > > announce it as not stable retroactively, change the pointers on our website > > and move on. > > > > > > Thoughts? > > > > > > Thanks, > > > +Vinod > > > > > > [1] http://markmail.org/thread/ogzk4phj6wsdpssu > > > > > > On Apr 21, 2015, at 4:59 PM, Vinod Kumar Vavilapalli < > > vino...@hortonworks.com> wrote: > > > > > >> > > >> Sure, I agree it's better to have clear guidelines and scheme. Let me > > fork this thread about that. > > >> > > >> Re 2.7.0, I just forgot about the naming initially though I was clear > > in the discussion/voting. I so had to end up calling it alpha outside of > > the release artifact naming. > > >> > > >> Thanks > > >> +Vinod > > >> > > >> On Apr 21, 2015, at 4:26 PM, Andrew Wang <andrew.w...@cloudera.com> > > wrote: > > >> > > >>> I would also like to support Karthik's proposal on the release thread > > about > > >>> version numbering. 2.7.0 being "alpha" is pretty confusing since all > > of the > > >>> other 2.x releases since GA have been stable. I think users would > > prefer a > > >>> version like "2.8.0-alpha1" instead, which is very clear and similar to > > >>> what we did for 2.0 and 2.1. Then we release 2.8.0 when we're actually > > >>> stable. > > >>> > > >>> I don't know if it's retroactively possible to do this for 2.7.0, but > > it's > > >>> something to consider for the next 2.7 alpha or beta or whatever. > > >>> > > > > > > >
signature.asc
Description: Digital signature