|
1 | 1 | # Making a release |
2 | 2 |
|
3 | | -To make a release you'll need to be a maintainer with GitHub |
4 | | -permissions to push to the main and gh-pages branches, and |
5 | | -Sonatype permissions to publish. |
6 | | - |
7 | | -Here are the steps, which should be automated but aren't (PR |
8 | | -welcome!): |
9 | | - |
10 | | - 1. write release notes in NEWS.md following the format |
11 | | - already in there. update README with the new version. |
12 | | - Commit. |
13 | | - 2. create a signed git tag "vX.Y.Z" |
14 | | - 3. start sbt; `show version` should confirm that the version was |
15 | | - taken from the tag |
16 | | - 4. clean |
17 | | - 5. test (double check that release works) |
18 | | - 6. doc (double check that docs build, plus build docs |
19 | | - to be copied to gh-pages later) |
20 | | - 7. if test or doc fails, delete the tag, fix it, start over. |
21 | | - 8. publishSigned |
22 | | - 9. make a separate clone of the repo in another directory and |
23 | | - check out the gh-pages branch |
24 | | - 10. /bin/rm -rf latest/api on gh-pages checkout |
25 | | - 11. copy config/target/api from main checkout to vX.Y.Z in |
26 | | - gh-pages so you have vX.Y.Z/index.html |
27 | | - 12. copy config/target/api from main checkout into latest/ |
28 | | - so you have latest/api/index.html |
29 | | - 13. commit all that to gh-pages, check the diff for sanity |
30 | | - (latest/api should be mostly just changed timestamps) |
31 | | - 14. push gh-pages |
32 | | - 15. log into sonatype website and go through the usual hoops |
33 | | - (under Staging Repositories, search for com.typesafe, verify the |
34 | | - artifacts in it, close, release) |
35 | | - 16. push the "vX.Y.Z" tag |
36 | | - 17. announce release, possibly wait for maven central to sync |
37 | | - first |
| 3 | +Update the draft release with the next tag version `vx.y.z`, title and release description. Use the Publish release button, which will create the tag. |
0 commit comments