---
title: "Release Plan for Gerrit 3.12"
tags: news
keywords: news
permalink: 2024-10-03-gerrit-3.12-release-plan.html
summary: "Release Plan for Gerrit 3.12"
hide_sidebar: true
hide_navtoggle: true
toc: true
---

## High Level Release Plan

| Date       | Activity                                          |
|------------|---------------------------------------------------|
| Mar 31     | Create `stable-3.12` branch, Release `3.12.0-rc0` |
| Apr  7     | Release `3.12.0-rc1`                              |
| Apr 14     | Release `3.12.0-rc2`                              |
| Apr 21     | Release `3.12.0-rc3` - Feature freeze deadline.   |
| Apr 28     | Release `3.12.0-rc4`                              |
| May  5     | Release `3.12.0-rc5` - Release freeze             |
| May 12     | Release `3.12.0-rc6` (*)                          |
| May 19     | Final release of `3.12.0`                         |

> **(\*) WARNING**: An additional release candidate, `3.12.0-rc6`, was created to include a
> critical fix ([Change 473702](https://gerrit-review.googlesource.com/c/gerrit/+/473702)) that
> prevents duplicate reply comments from being published when applying a Fix.
> Furthermore, the `stable-3.11` branch was merged into `3.12` before the final 3.12.0 release.
> This merge introduced additional changes that also need validation, making a new release candidate
> necessary.

## Gerrit Hackathon

There are plans for Gerrit hackathon in May in Germany (the exact location
has not been decided yet), but most likely not soon enough to support this
release.

There is a [`gerrit-3_12-release` Discord channel](https://discord.com/channels/775374026587373568/1353333423636348968)
dedicated to anyone willing to help with the development, testing and
documentation of this release.

## Switch to Java 21

Gerrit v3.12 has dropped support for Java 17; Java 21 is mandatory and
set as the target source-code level.

## End-to-end Testing

We plan to use the
[Gatling e2e test framework for Git](https://gerrit-review.googlesource.com/Documentation/dev-e2e-tests.html),
developed by GerritForge and Ericsson to test the stability of the release
on a production-like setup.

[GerritForge](https://www.gerritforge.com), who is also offering
[Gerrit-as-a-Service on Google Cloud Marketplace](https://gerritforge.com/gaas.html),
will be testing the scalability of Gerrit v3.12, particularly with
medium to large-sized projects and in a multi-primary setup with Kubernetes
on GKE.

## End of Life for Gerrit 3.9.x

Per the support policy mentioned in the
[project homepage](https://www.gerritcodereview.com/support.html#supported-versions),
after 3.12.0 is released, 3.9.x will reach the end of life and will no
longer be actively supported.

Support for 3.10.x and 3.11.x will continue as usual.
Users of 3.9.x or earlier are recommended to upgrade to one of these versions.
