План разработки

Releases and development of QGIS follow a timebased schedule.

  • Even version numbers (2.18, 3.2 etc) are release versions.
  • Odd version numbers (2.99, 3.1 etc) are development versions.

A new release will happen every four months. In the first three months, new development is taking place. In the last month before a release, a feature freeze is invoked and the final month is used for testing, bugfixing, translation and release preparations. When the release happens, a branch with a even release number is created and the master branch advances to the next odd version. After the release a call for packaging is issued.

Every third release (starting with 2.8) is a long-term-release (LTR) that is maintained until the next long-term-release occurs.

Примечание

During the development of QGIS 3.0 and 3.2, an exception to this schedule has been put into place. See the roadmap below for adjusted information.

Стадия разработки

In the development phase developers work on adding new features for the next release. Early adopters can use the nightly builds we have for all major platforms to see the development progress, do preliminary testing and provide bug reports and their thoughts to help with development.

Заморозка

На этой стадии не разрешается добавление новой функциональности, все усилия перенаправляются с совершенствования QGIS на его стабилизацию. Ночные сборки превращаются в релиз-кандидаты.

Пользователи должны начать всестороннее тестирование в своём рабочем окружении для проверки на отсутствие ошибок, которые не хотелось бы видеть в предстоящем выпуске. Обо всех таких ошибках необходимо сообщать (см. Bugs, Features and Issues). Всё, что останется незамеченным, в конечном итоге будет в следующем выпуске. Только в случае возникновения серьёзных проблем будет выпущен корректирующий выпуск (например, 2.4.1). Поэтому тестирование релиз-кандидатов и сообщения об ошибках являются очень важными этапами.

In the feature freeze developers monitor the bugtracker and start working on fixing the reported issues and update the visual changelog with the features they added.

С началом стадии заморозки обновляются файлы для перевода, поэтому переводчики могут начинать свою работу. Обратите внимание, возможно, что некоторые строки необходимо будет переводить неоднократно, в связи с тем, что исправление ошибок может вносить изменения в переводимые строки.

Two weeks before the release a hard freeze is initiated, after which only fixes to severe problems and regressions introduced after the feature freeze are allowed in.

The release manager announces this on feature freeze.

Release

On major and minor release dates the release branch is created and the release is tagged and tar balls are prepared. Point releases are just tagged and tar balls are created.

The packagers are notified that packaging can begin.

Once some packages are available the release can be announced and the website is updated accordingly.

Порядок выпусков

The schedule is aligned to produce roughly the same dates for each year given our four monthly releases with LTRs in late february.

Beginning after 2.12 the development phase is always 12 weeks and the freeze phase is at least 5 weeks. Remainders are used to extend the freeze phase of LTR releases.

Point releases will happen every month on the latest release branch and the LTR branch, if there are backports.

In the first four month after it’s release a new LTR is also the current LR. In this phase the new LTR doesn’t replace the previous LTR in the LTR repositories. This happens as soon as a new LR is released.

The 2.18 release will replace the 2.14 release as LTR, but not replace 2.14 in the LTR package repositories before 3.0 is released.

Schedule:

Event Latest Long-Term Repo Freeze Date Week # Weeks
LTR/PR 3.4.0 2.18.25   2018-10-26 43 4
EPR 3.4.1     2018-11-02 44 4
PR 3.4.2 2.18.26   2018-11-23 47 4
PR 3.4.3 2.18.27   2018-12-21 51 4
PR/FF 3.4.4 2.18.28 3.5 2019-01-18 3 5
LR/PR 3.6.0 3.4.5   2019-02-22 8 4
PR 3.6.1 3.4.6   2019-03-22 12 4
PR 3.6.2 3.4.7   2019-04-19 16 4
PR/FF 3.6.3 3.4.8 3.7 2019-05-17 20 5
LR/PR 3.8.0 3.4.9   2019-06-21 25 4
PR 3.8.1 3.4.10   2019-07-19 29 4
PR 3.8.2 3.4.11   2019-08-16 33 2
FF     3.9 2019-08-30 35 2
PR 3.8.3 3.4.12   2019-09-13 37 4
HF       2019-10-11 41 2
LTR/PR 3.10.0 3.4.13   2019-10-25 43 4
PR 3.10.1 3.4.14   2019-11-22 47 4
PR 3.10.2 3.4.15   2019-12-20 51 4
PR/FF 3.10.3 3.4.16 3.11 2020-01-17 3 5
LR/PR 3.12.0 3.10.4   2020-02-21 8 4
PR 3.12.1 3.10.5   2020-03-20 12 4
PR 3.12.2 3.10.6   2020-04-17 16 4
PR/FF 3.12.3 3.10.7 3.13 2020-05-15 20 5
LR/PR 3.14.0 3.10.8   2020-06-19 25 4
PR 3.14.1 3.10.9   2020-07-17 29 4
PR 3.14.2 3.10.10   2020-08-14 33 4
PR/FF 3.14.3 3.10.11 3.15 2020-09-11 37 6
LTR/PR 3.16.0 3.10.12   2020-10-23 43 4
PR 3.16.1 3.10.13   2020-11-20 47 4
PR 3.16.2 3.10.14   2020-12-18 51 4
PR/FF 3.16.3 3.10.15 3.17 2021-01-15 3 5
LR/PR 3.18.0 3.16.4   2021-02-19 8 4

Event legend:

Event Description
LTR Long term release, begin of new development phase
LR Regular release, begin of new development phase
FF Feature freeze, end of development phase
HF hard freeze
SF Soft freeze with bi-monthly vote
PR Point release of latest release and LTR branch
EPR Extra Point release

Location of prereleases / nightly builds

Platform Location
Windows Weekly release candidate (standalone installer)
OSGeo4W
Linux Debian/Ubuntu
MacOS Mac OS