@Robert: I really like this. +1 to implement this after 1.2.0 is released. 
Small note about your release dates: you started with 1.3.0 but probably meant 
1.2.0 right?

On 18 January 2017 at 09:57:31, Tzu-Li (Gordon) Tai (tzuli...@apache.org) wrote:
> Hi Robert,
>  
> Thanks for bringing up the discussion. I like the proposal.
>  
> Regarding some of the downsides mentioned in the wiki:
>  
> 1. Features that don’t make it in time with the feature freeze:
> I think that’s ok, as long as we’re consistent with the schedules for the 
> next release.  
> This way users waiting for that particular features will still be able to 
> rely on the fact  
> that the feature will be included in 4 months.
>  
> 2. Frequent releases mean bug fix releases for older branches:
> You mentioned in the email that “old releases are supported for 6 months by 
> the community”,  
> but not in the wiki. If this is strictly followed, that means we’ll at most 
> be supporting  
> 2 previous major release versions (ex. as soon as 1.4.0 comes out, we’ll 
> still be supporting  
> bugfixes for 1.3.0, as well as 1.2.0 for another 2 months).
> This might seem a bit odd, so perhaps we can stick to something like “support 
> bugfixes  
> for the previous 2 major releases”? Ex. Once 1.4.0 comes out, we’ll continue 
> to support  
> only 1.4.0 and 1.3.0.
> Supporting bugfixes for 2 major versions seems workable, and this way users 
> can also  
> have a “buffer” that they should not fall behind releases for more than 2 
> major versions  
> (8 months) and preplan upgrades.
>  
> - Gordon
>  
> On January 18, 2017 at 9:19:41 AM, Robert Metzger (rmetz...@apache.org) wrote:
>  
> Hi all!
>  
> Since the 1.2.0 release is about to come out, I would like to propose a
> change in the way we do releases in the Flink community.
>  
> In my opinion, the current model leads to dissatisfaction among users and
> contributors, because releases are really not predictable. A recent example
> for the issues with our current model are the FLIP-6 changes we wanted to
> merge to master, a few weeks before the first RC for 1.2.0. Also, there
> were some emails on the mailing lists asking for a release date.
>  
> In order to change that, I’m proposing to follow a strictly time-based
> release model. Other open source projects like Ubuntu, Cassandra, Spark or
> Kafka are following that model as well, and I think we should try it out as
> an experiment for the 1.3.0 release.
>  
> I’m proposing to:
>  
> -
>  
> Do a Flink release every 4 months
> -
>  
> Cycle:
> -
>  
> 3 months development
> -
>  
> 1 month before the release: Feature freeze. Create release branch
> with RC0, start testing. Only fixes, tests and minor improvements are
> allowed in.
> -
>  
> 2 weeks before the release: Code freeze. Start voting. Only fixes for
> blockers are allowed in.
> -
>  
> Forbid blocking a release because a feature is not done yet.
> -
>  
> Features are merged to master, when they are tested and documented, to
> have an always stable master
> -
>  
> Bugfix releases are done as needed.
> -
>  
> Old releases are supported for 6 months by the Flink community with
> critical bug fixes
>  
>  
> This means, that we would have the following release dates:
>  
> (Flink 1.3.0 by end of January 2017)
>  
> Flink 1.4.0 by end of May 2017
>  
> Flink 1.5.0 by end of September 2017
>  
> Flink 1.6.0 by end of January 2018
>  
> I’ve put some more details including some pro’s and con’s into our wiki.
> The page is based on Kafka’s time-based release wiki page (Kafka also
> recently started following a strictly time-based model)
>  
> https://cwiki.apache.org/confluence/display/FLINK/Time-based+releases
>  
>  
> Once we’ve agreed on following that model, I’ll update the release plan
> page accordingly:
> https://cwiki.apache.org/confluence/display/FLINK/Flink+Release+and+Feature+Plan
>   
>  
>  
> Please let me know what you think about this idea!
>  
> Regards,
>  
> Robert
>  

Reply via email to