发布 Weblate

发行周期

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.

发布计划

即将发布版本的功能是通过 GitHub 里程碑收集的,可以在 <https://github.com/WeblateOrg/weblate/milestones> 上查看路线图。

发布过程

发布前要检查的事情:

  1. 通过 ./scripts/list-translated-languages.py 来检查新翻译的语言。

  2. ./scripts/prepare-release 来设置最终版本。

  3. 确保截图是最新的 make -j 12 -C docs update-screenshots

  4. 合并任何可能挂起的翻译 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.

执行发布:

  1. 创建一个发布 ./scripts/create-release --tag(要求请参见下面)。

手动发布步骤:

  1. 关闭 GitHub 里程碑。

  2. 一旦检测到 Docker 镜像,则添加标签并推送。

  3. .github/workflows/migrations.yml 中包含新版本,以便在迁移测试中涵盖它。

  4. 通过 ./scripts/set-version.py 在仓库中增加版本。

  5. 检查 readthedocs.org 是否使用 ./scripts/rtd-projects.py。构建了文档的所有翻译。

要使用 ./scripts/create-release 脚本创建标签,需要:

  • 推送访问 Weblate git 仓库(它推送标签)