-
Notifications
You must be signed in to change notification settings - Fork 234
F* release process
See also Creating binary packages for your platform
-
Find volunteers for creating Mac packages. For Windows and Linux use the weekly-build infrastructure. You can trigger such builds any time via Azure DevOps (aka VSTS). Use the FStar-Binaries-Linux and FStar-Binaries-Windows build definitions.
-
Find volunteers for testing packages on Windows, Mac, and Linux
-
Make sure that F* builds, passes all the tests, and that creating binary packages works well
-
(Maybe one day) Close all issues that were already fixed (helps getting nicer release notes, but only works well if people actually use the tracker for their work).
-
Push all changes to the OCaml snapshot to master.
-
Create a new branch called
v0.9.x.y-release
. For alpha or beta releases usev0.9.x.y-alpha-release
orv0.9.x.y-beta-release
. -
Bump the version in
version.txt
-
Draft a new release on GitHub using the new branch (or a specific commit on that branch). The release title should be the version number optionally followed by some mnemonic. Can use GitHub for a list of changes between two releases or of issues closed between two dates. And now we also have https://github.com/FStarLang/FStar/blob/master/CHANGES.md
-
Have the Mac volunteer create package for their platform and add them to the release. For Windows and Linux use the weekly build infrastructure from the first step.
-
Have the volunteers test the binaries for their platform https://github.com/FStarLang/FStar/blob/master/INSTALL.md#testing-a-binary-package
-
Create a release tag called
v0.9.x.y
by pressing the "Publish release" button. -
Merge the
v0.9.x.y-release
branch into master. -
At the end of a release, please remember to update the links at: https://www.fstar-lang.org/#download
-
Update third-party packages:
-
opam package:
needs to be done via a pull request on opam-repository,
or you can ping Tahina -- the starting point should be the
fstar.opam
file from the main F* repo - Chocolatey package: happens automatically every 8 hours
- Homebrew package: still don't know how to update the formula, but you can ping Benjamin Beurdouche (no longer maintained, see #1938 and Homebrew/homebrew-core#49745)
-
opam package:
needs to be done via a pull request on opam-repository,
or you can ping Tahina -- the starting point should be the