forked from nhibernate/nhibernate-core
-
Notifications
You must be signed in to change notification settings - Fork 1
/
ReleaseProcedure.txt
57 lines (41 loc) · 2.6 KB
/
ReleaseProcedure.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
These are the tasks typically needed to create an official NHibernate release.
* In GitHub, make sure no open issues have milestone set to the release
that is about to happen (as these will show in the milestone).
* Create a draft release in Github with GitReleaseManager. If you have used
the NHibernate build menu, it should be available in Tools\gitreleasemanage.x.x.x\
(change x.x.x by its current version in tools).
By example:
Tools\gitreleasemanager.0.7.0\tools\GitReleaseManager.exe create -o nhibernate -r nhibernate-core -m 5.1 -u username -p password
(Adjust the -m milestone parameter above, and add "-c branchname" if
releasing another branch than master)
* Update releasenotes.txt with the list of issues generated in the GitHub
draft release. Add to the list the release task.
See if any additions to the list of "known breaking changes" are necessary.
* Update the GitHub draft release for matching other release formalism: ensure
its tag matches the released version (three parts: major.minor.release), update
its title, change its description for listing only highlights and breaking
changes, include links to the milestone and the releasenotes of the release
tag, include links to binaries on SourceForge and NuGet.
If the release tag does not match the released version with major.minor.release
formalism, the NuGet package will have an invalid link to release notes.
* Check/update version number in common.xml and NHibernate.props under
build-common folder, in master.xml under doc\reference folder, and in
appveyor.yml in the NHibernate root.
* Don't forget to commit the above.
* Check the CI release build.
If no error or other issue requiring further changes occurred, merge
the release PR and wait for the resulting commit CI release build.
* Retrieve the artifacts of the CI release build.
* Upload binary and source zip files to SourceForge. Update the "latest
release".
* Update download link on nhibernate.info. Update the reference documentation
if needed.
* Push nuget packages including the symbol packages.
* In GitHub, mark the milestone as released and publish the release draft,
creating the release tag by the way. (It should match the tag in the
releasenotes link of the release description.)
* Post release announcement to nhusers, nhibernate-development and as
project news on SourceForge.
* If this was a stable branch, merge it forward to master. Perhaps some
changes need to be edited out in the merge, but this will reduce the
risk of some issue being left unfixed on master.