|
22 | 22 | Push and cut a PR, get it approved, |
23 | 23 | and squash and merge those changes to the `master` branch. |
24 | 24 |
|
25 | | -3. Create a fresh clone of the repo locally, making sure the latest commit |
26 | | - is the squashed commit you just merged, and push the tag for this release. |
| 25 | +3. Kick off the deep test suite by navigating to |
| 26 | + https://github.com/dafny-lang/dafny/actions/workflows/deep-tests.yml, |
| 27 | + clicking the "Run workflow" dropdown, ensuring `master` is selected, |
| 28 | + and clicking the "Run workflow" button. The automation for releasing |
| 29 | + below will check for a run of this workflow on the exact commit |
| 30 | + to release. |
| 31 | + |
| 32 | +4. Create a fresh clone of the repo locally, making sure the latest commit |
| 33 | + is the squashed commit you just merged and tested, and push the tag for this release. |
27 | 34 |
|
28 | 35 | ``` |
29 | 36 | git clone [email protected]:dafny-lang/dafny.git dafny-for-tagging |
|
32 | 39 | git push v<$VER> |
33 | 40 | ``` |
34 | 41 |
|
35 | | -4. A GitHub action will automatically run in reaction to the tag being pushed, |
| 42 | +5. A GitHub action will automatically run in reaction to the tag being pushed, |
36 | 43 | which will build the artifacts and reference manual and then create a draft |
37 | 44 | GitHub release. You can find and watch the progress of this workflow at |
38 | 45 | https://github.com/dafny-lang/dafny/actions. |
39 | 46 |
|
40 | | -5. Once the action completes, you should find the draft release at |
| 47 | +6. Once the action completes, you should find the draft release at |
41 | 48 | https://github.com/dafny-lang/dafny/releases. Edit the release body |
42 | 49 | to add in the release notes from `RELEASE_NOTES.md`. |
43 | 50 | Also check the box to create a new discussion based on |
44 | 51 | the release, if this is not a pre-release. |
45 | 52 |
|
46 | | -6. Push the "Publish" button. This will trigger yet another workflow |
| 53 | +7. Push the "Publish" button. This will trigger yet another workflow |
47 | 54 | that will download the published artifacts and run a smoke test |
48 | 55 | on multiple platforms. Again you can watch for this workflow at |
49 | 56 | https://github.com/dafny-lang/dafny/actions. |
50 | 57 |
|
51 | | -7. If preparing a pre-release, stop here, as |
| 58 | +8. If preparing a pre-release, stop here, as |
52 | 59 | the following steps declare the release as the latest version, which |
53 | 60 | is not the intention. |
54 | 61 |
|
55 | | -8. If something goes wrong, delete the tag and release in GitHub, fix the |
| 62 | +9. If something goes wrong, delete the tag and release in GitHub, fix the |
56 | 63 | problem and try again. |
57 | 64 |
|
58 | | -9. Update the Homebrew formula for Dafny (see below). |
| 65 | +10. Update the Homebrew formula for Dafny (see below). |
59 | 66 | Note that it is fine to leave this for the next day, |
60 | 67 | and other members of the community may update the formula |
61 | 68 | in the meantime anyway. |
62 | 69 |
|
63 | | -10. Announce the new release to the world. |
| 70 | +11. Announce the new release to the world. |
64 | 71 |
|
65 | 72 | ## Updating Dafny on Homebrew |
66 | 73 |
|
|
0 commit comments