Skip to content

Add release cadence section to ensure a more predictable release cycle#21971

Open
ahrtr wants to merge 1 commit into
etcd-io:mainfrom
ahrtr:20260616_release
Open

Add release cadence section to ensure a more predictable release cycle#21971
ahrtr wants to merge 1 commit into
etcd-io:mainfrom
ahrtr:20260616_release

Conversation

@ahrtr

@ahrtr ahrtr commented Jun 16, 2026

Copy link
Copy Markdown
Member

As we discussed in one of previous community meetings, also in #21605, we aim to make etcd’s release cycles more predictable. In this PR, I added one more section "Release cadence". PTAL

cc @fuweid @ivanvc @jberkus @serathius @siyuanfoundation @spzala

@k8s-ci-robot

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ahrtr

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


To make etcd's release cycles more predictable, the project targets **one major or minor version release per year**.

This cadence is intentional even in periods with few or no user-facing feature changes. A release may still include:

@serathius serathius Jun 16, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor release without user visible/impacting feature breaks user trust. We push toil to users to read documentation, execute upgrade and for what? Our own satisfaction that we wrote a blogpost and pushed binary.

Let's focus how we can encourage users to upgrade by building a roadmap of interesting features/performance improvement to draw interest of both users and contributors instead of just defining processes for processes sake.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor release without user visible/impacting feature breaks user trust.

I don't agree. Did you read the items below? Also in practice, it is highly unlikely that there isn't any user-facing changes/features in 1 year duration.

building a roadmap

That's a separate topic.

I already see some positive feedback on this predictable release cadence proposal in #21605. Also I haven't never seen any negative feedback before I raised this PR.

Let's see other maintainers' opinion.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with Marek’s concern. A minor release should have clear user value, and we should build and maintain a well-defined roadmap instead of releasing purely for process reasons.

However, we should avoid v3.6 release cycle, where it took several years to publish a new minor release. By that point, main had diverged significantly from v3.5. It made maintaining supported release branches more challenging.

Maybe the schedule should be a regular checkpoint, not an automatic release trigger. We can use it to review the roadmap and the difference between main and supported release branches. If main does not have enough user-visible changes yet, and most fixes or small improvements can still be backported, we can explicitly decide to postpone the minor release, for example to 15 or 18 months.

However, I do not think we should postpone a minor release beyond two years.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thx for the feedback. Updated. PTAL

Again, the motivation is to ensure a predictable release cadence. Nobody likes unpredictability.

Regarding the roadmap, we can discuss it separately.

@codecov

codecov Bot commented Jun 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 69.72%. Comparing base (22d55b5) to head (d746001).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files

see 21 files with indirect coverage changes

@@            Coverage Diff             @@
##             main   #21971      +/-   ##
==========================================
- Coverage   69.75%   69.72%   -0.03%     
==========================================
  Files         449      449              
  Lines       38172    38172              
==========================================
- Hits        26628    26617      -11     
- Misses      10115    10126      +11     
  Partials     1429     1429              

Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 22d55b5...d746001. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
@kubernetes-prow

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ahrtr, fuweid

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

4 participants