Releasing Weblate¶
Release cycle¶
Weblate uses calendar versioning with monthly releases. The version format is
<YEAR>.<MONTH>.<PATCH> with a numeric, non-zero-padded month. The
<PATCH> part is omitted for the first release in a month when it would be
0, for example 2026.5. Patch releases use the full version number, for
example 2026.5.1.
Monthly releases are usually published at the beginning of the month. Patch releases include bug fixes, security fixes, and dependency updates which should not wait for the next monthly release.
Direct upgrades are supported from releases in the current or previous calendar year. The first release in a new year drops direct upgrade support for releases from the year before the previous year.
The Docker container includes an additional version component to track changes
in the container itself, such as dependencies. Fixed Docker image tags include
the patch component together with this build component, even when the Weblate
version omits a 0 patch component. These updates may include security
updates.
Se også
Release planning¶
The features for upcoming releases are collected using GitHub milestones, you can see our roadmap at <https://github.com/WeblateOrg/weblate/milestones>.
Release process¶
Things to check prior to release:
Check newly translated languages by ./scripts/list-translated-languages.py.
Set final version by ./scripts/prepare-release.
Make sure screenshots are up to date make -j 12 -C docs update-screenshots.
Merge any possibly pending translations wlc push; git remote update; git merge origin/weblate
When building distribution packages locally, start from a clean checkout or
remove ignored packaging artifacts such as build/, dist/,
weblate.egg-info/, and generated weblate/locale/**/*.mo files.
Perform the release:
Create a release ./scripts/create-release --tag (see below for requirements).
Post release manual steps:
Close GitHub milestone.
Once the Docker image is tested, add a tag and push it.
Include new version in
.github/workflows/migrations.ymlto cover it in migration testing.Increase version in the repository by ./scripts/set-version.py.
Check that readthedocs.org did build all translations of the documentation using ./scripts/rtd-projects.py.
To create tags using the ./scripts/create-release script you will need following:
Push access to Weblate git repositories (it pushes tags)