Currently, we anticipate CEP-21 being in a mergeable state around late 
July/August. We're intending to push a feature branch with an implementation 
covering much of the core functionality to the ASF repo this week. Doing so 
will obviously help us get a better idea of the remaining work as we 
incorporate feedback from the community and to document that outstanding effort 
more clearly. 


> On 6 Mar 2023, at 09:24, Benjamin Lerer <b.le...@gmail.com> wrote:
> 
> Sorry, I realized that when I started the discussion I probably did not frame 
> it enough as I see that it is now going into different directions.
> The concerns I am seeing are:
> 1) A too small amount of time between releases  is inefficient from a 
> development perspective and from a user perspective. From a development point 
> of view because we are missing time to deliver some features. From a user 
> perspective because they cannot follow with the upgrade.
> 2) Some features are so anticipated (Accord being the one mentioned) that 
> people would prefer to delay the release to make sure that it is available as 
> soon as possible.
> 3) We do not know how long we need to go from the freeze to GA. We hope for 2 
> months but our last experience was 6 months. So delaying the release could 
> mean not releasing this year.
> 4) For people doing marketing it is really hard to promote a product when you 
> do not know when the release will come and what features might be there.
> 
> All those concerns are probably even made worse by the fact that we do not 
> have a clear visibility on where we are.
> 
> Should we clarify that part first by getting an idea of the status of the 
> different CEPs and other big pieces of work? From there we could agree on 
> some timeline for the freeze. We could then discuss how to make predictable 
> the time from freeze to GA.  
> 
> 
> 
> Le sam. 4 mars 2023 à 18:14, Josh McKenzie <jmcken...@apache.org 
> <mailto:jmcken...@apache.org>> a écrit :
>> (for convenience sake, I'm referring to both Major and Minor semver releases 
>> as "major" in this email)
>> 
>>> The big feature from our perspective for 5.0 is ACCORD (CEP-15) and I would 
>>> advocate to delay until this has sufficient quality to be in production. 
>> This approach can be pretty unpredictable in this domain; often unforeseen 
>> things come up in implementation that can give you a long tail on something 
>> being production ready. For the record - I don't intend to single Accord out 
>> at all on this front, quite the opposite given how much rigor's gone into 
>> the design and implementation. I'm just thinking from my personal 
>> experience: everything I've worked on, overseen, or followed closely on this 
>> codebase always has a few tricks up its sleeve along the way to having 
>> edge-cases stabilized.
>> 
>> Much like on some other recent topics, I think there's a nuanced middle 
>> ground where we take things on a case-by-case basis. Some factors that have 
>> come up in this thread that resonated with me:
>> 
>> For a given potential release date 'X':
>> 1. How long has it been since the last release?
>> 2. How long do we expect qualification to take from a "freeze" (i.e. no new 
>> improvement or features, branch) point?
>> 3. What body of merged production ready work is available?
>> 4. What body of new work do we have high confidence will be ready within Y 
>> time?
>> 
>> I think it's worth defining a loose "minimum bound and upper bound" on 
>> release cycles we want to try and stick with barring extenuating 
>> circumstances. For instance: try not to release sooner than maybe 10 months 
>> out from a prior major, and try not to release later than 18 months out from 
>> a prior major. Make exceptions if truly exceptional things land, are about 
>> to land, or bugs are discovered around those boundaries.
>> 
>> Applying the above framework to what we have in flight, our last release 
>> date, expectations on CI, etc - targeting an early fall freeze (pending CEP 
>> status) and mid to late fall or December release "feels right" to me.
>> 
>> With the exception, of course, that if something merges earlier, is stable, 
>> and we feel is valuable enough to cut a major based on that, we do it.
>> 
>> ~Josh
>> 
>> On Fri, Mar 3, 2023, at 7:37 PM, German Eichberger via dev wrote:
>>> Hi,
>>> 
>>> We shouldn't release just for releases sake. Are there enough new features 
>>> and are they working well enough (quality!).
>>> 
>>> The big feature from our perspective for 5.0 is ACCORD (CEP-15) and I would 
>>> advocate to delay until this has sufficient quality to be in production. 
>>> 
>>> Just because something is released doesn't mean anyone is gonna use it. To 
>>> add some operator perspective: Every time there is a new release we need to 
>>> decide 
>>> 1) are we supporting it 
>>> 2) which other release can we deprecate 
>>> 
>>> and potentially migrate people - which is also a tough sell if there are no 
>>> significant features and/or breaking changes.  So from my perspective less 
>>> frequent releases are better - after all we haven't gotten around to 
>>> support 4.1 🙂
>>> 
>>> The 5.0 release is also coupled with deprecating  3.11 which is what a 
>>> significant amount of people are using - given 4.1 took longer I am not 
>>> sure how many people are assuming that 5 will be delayed and haven't made 
>>> plans (OpenJDK support for 8 is longer than Java 17 🙂) . So being a bit 
>>> more deliberate with releasing 5.0 and having a longer beta phase are all 
>>> things we should consider.
>>> 
>>> My 2cts,
>>> German
>>> 
>>> From: Benedict <bened...@apache.org <mailto:bened...@apache.org>>
>>> Sent: Wednesday, March 1, 2023 5:59 AM
>>> To: dev@cassandra.apache.org <mailto:dev@cassandra.apache.org> 
>>> <dev@cassandra.apache.org <mailto:dev@cassandra.apache.org>>
>>> Subject: [EXTERNAL] Re: [DISCUSS] Next release date
>>>  
>>> 
>>> It doesn’t look like we agreed to a policy of annual branch dates, only 
>>> annual releases and that we would schedule this for 4.1 based on 4.0’s 
>>> branch date. Given this was the reasoning proposed I can see why folk would 
>>> expect this would happen for the next release. I don’t think there was a 
>>> strong enough commitment here to be bound by, it if we think different 
>>> maths would work better.
>>> 
>>> I recall the goal for an annual cadence was to ensure we don’t have lengthy 
>>> periods between releases like 3.x to 4.0, and to try to reduce the pressure 
>>> certain contributors might feel to hit a specific release with a given 
>>> feature.
>>> 
>>> I think it’s better to revisit these underlying reasons and check how they 
>>> apply than to pick a mechanism and stick to it too closely. 
>>> 
>>> The last release was quite recent, so we aren’t at risk of slow releases 
>>> here. Similarly, there are some features that the *project* would probably 
>>> benefit from landing prior to release, if this doesn’t push release back 
>>> too far.
>>> 
>>> 
>>> 
>>> 
>>> 
>>>> On 1 Mar 2023, at 13:38, Mick Semb Wever <m...@apache.org 
>>>> <mailto:m...@apache.org>> wrote:
>>>> 
>>>> My thoughts don't touch on CEPs inflight. 
>>>> 
>>>> 
>>>> 
>>>> For the sake of broadening the discussion, additional questions I think 
>>>> worthwhile to raise are…
>>>> 
>>>> 1. What third parties, or other initiatives, are invested and/or working 
>>>> against the May deadline? and what are their views on changing it?
>>>>   1a. If we push branching back to September, how confident are we that 
>>>> we'll get to GA before the December Summit?
>>>> 2. What CEPs look like not landing by May that we consider a must-have 
>>>> this year?
>>>>   2a. Is it just tail-end commits in those CEPs that won't make it? Can 
>>>> these land (with or without a waiver) during the alpha phase?
>>>>   2b. If the final components to specified CEPs are not 
>>>> approved/appropriate to land during alpha, would it be better if the 
>>>> project commits to a one-off half-year release later in the year?
>> 

Reply via email to