Fossil is developed using continuous integration. The Fossil instance that self-hosts the Fossil source code is typically a very recent trunk check-in. This is safe and reasonable due to the self-check mechanisms built into Fossil.
Fossil does not have clear milestones which are logical places to do an official release. The development proceeds organically and continuously. So how do we determine when a release should happen? The following are proposed criteria:
At least a month or two has passed since the previous official release.
The change log is up-to-date and has accumulated enough content to make the release seem worth the time and effort.
There are no known debilitating bugs or vulnerabilities on trunk.
The release candidate, or at least a version that differs from the release candidate only in documentation or cosmetic changes, has been running on the Fossil self-hosting website for at least 7 days with no problems observed.
Builds and tests work on multiple platforms: Linux x64 and ARM, MacOS x64 and PPC, Windows gcc (32-bit) and MSVC (64-bit).
Whenever all of the above conditions are met, a release will occur. The version number is incremented immediately after the release in order to start the next release cycle.
Additional notes:
Releases are not announced in advance. They occur, seemingly without warning, when the conditions enumerated above are met. We make no advance predictions about if and when such conditions might be met.
Releases occur from trunk and are of the version that is currently running on the self-hosting website.
The fact that the trunk version contains a intermediate version of SQLite is not a release blocker. In the past, we have tried to only release Fossil when the built-in version of SQLite is an official SQLite release. That is no longer a constraint.
Betas may be added to the download page from time to time, especially if a long time has past since the previous release. Betas are removed from the download page as soon as a new beta or the next release appears.
Changes to this policy are driven by community feedback. Start a thread on the Fossil Forum if you think anything about this policy should be clarified or altered.