Skip to content

Commit fb734b2

Browse files
Update release procedure.
1 parent ec3c248 commit fb734b2

File tree

1 file changed

+40
-32
lines changed

1 file changed

+40
-32
lines changed

ReleaseProcedure.txt

Lines changed: 40 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,52 @@
11
These are the tasks typically needed to create an official NHibernate release.
22

3-
43
* In GitHub, make sure no open issues have milestone set to the release
5-
that is about to happen (as these will show in the release notes).
6-
7-
* Update releasenotes.txt with list of issues. See if any additions to the
8-
list of "known breaking changes" are necessary.
9-
10-
* Check/update version number in build-common/common.xml.
11-
4+
that is about to happen (as these will show in the milestone).
5+
6+
* Create a draft release in Github with GitReleaseManager. If you have used
7+
the NHibernate build menu, it should be available in Tools\gitreleasemanage.x.x.x\
8+
(change x.x.x by its current version in tools).
9+
By example:
10+
11+
Tools\gitreleasemanager.0.7.0\tools\GitReleaseManager.exe create -o nhibernate -r nhibernate-core -m 5.1 -u username -p password
12+
13+
(Adjust the -m milestone parameter above, and add "-c branchname" if
14+
releasing another branch than master)
15+
16+
* Update releasenotes.txt with the list of issues generated in the GitHub
17+
draft release.
18+
See if any additions to the list of "known breaking changes" are necessary.
19+
20+
* Update the GitHub draft release for matching other release formalism: update
21+
its title, change its description for listing only highlights and breaking
22+
changes, include links to the milestone and the releasenotes of the release
23+
tag, include links to binaries on SourceForge and NuGet.
24+
25+
* Check/update version number in common.xml and NHibernate.props under
26+
build-common folder, and in master.xml under doc\reference folder.
27+
1228
* Don't forget to commit the above.
13-
14-
* Perform the release build including running all tests (GaRelease.bat or
15-
ShowBuildMenu.bat).
16-
17-
NOTE: If you prefer to keep your source code in a path like e.g.:
18-
C:\Users\Something\Long\Projects\nhibernate-core
19-
you may want to issue a command like:
20-
subst P: C:\Users\Something\Long\Projects
21-
And then change to P:\nhibernate-core before building. This will avoid
22-
displaying a long user-specific path in public symbol files.
23-
24-
* If no error or other issue requiring further changes occurred, tag the
25-
current git HEAD with a tag according to version number. Don't forget to
26-
push the tag to github.
27-
29+
30+
* Check the CI release build.
31+
If no error or other issue requiring further changes occurred, merge
32+
the release PR and wait for the resulting commit CI release build.
33+
34+
* Retrieve the artifacts of the CI release build.
35+
2836
* Upload binary and source zip files to SourceForge. Update the "latest
2937
release".
3038

3139
* Update download link on nhibernate.info.
32-
33-
* Push nuget packages including the symbol packages. The nuget packages
34-
should already be available in the build directory, together with a batch
35-
file to push them.
36-
37-
* In GitHub, mark the milestone as released.
38-
40+
41+
* Push nuget packages including the symbol packages.
42+
43+
* In GitHub, mark the milestone as released and publish the release draft,
44+
creating the release tag by the way. (It should match the tag in the
45+
releasenots link of the release description.)
46+
3947
* Post release announcement to nhusers, nhibernate-development and as
4048
project news on SourceForge.
41-
49+
4250
* If this was a stable branch, merge it forward to master. Perhaps some
4351
changes need to be edited out in the merge, but this will reduce the
44-
risk of some issue being left unfixed on master.
52+
risk of some issue being left unfixed on master.

0 commit comments

Comments
 (0)