This repository has been archived by the owner on Jul 5, 2023. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
RELEASING
85 lines (58 loc) · 3.15 KB
/
RELEASING
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
Here are the steps to follow to create a new lasem release:
* Ensure that there are no local, uncommitted/unpushed
modifications. You're probably in a good state if both "git diff
HEAD" and "git log master..origin/master" give no output.
* Fill out an entry in the NEWS file
Sift through the logs since the last release. This is most
easily done with a command such as:
git log --stat X.Y.Z..
where X.Y.Z is the previous release version.
Summarize major changes briefly in a style similar to other
entries in NEWS. Take special care to note any additions in
the API. These should be easy to find by noting modifications
to .h files in the log command above.
* Verify that the code passes "make distcheck"
First, make sure you have 'nm' and 'readelf' commands in PATH.
this should be OK with any Linux distro.
Running "make distcheck" should result in no warnings or
errors and end with a message of the form:
=============================================
lasem-X.Y.Z archives ready for distribution:
lasem-X.Y.Z.tar.gz
=============================================
(But the tar file isn't actually ready yet, as we still have
some more steps to follow).
* Tag the release; This will allow you to make a branch later if you so desire
but for now, at least it make it easy to see what was included in a particular
release. The commit message for the tag will be included in a changes file in
the release directory.
$ git tag -a LASEM_X_Y_Z (from whatever branch you're releasing)
$ git push origin LASEM_X_Y_Z
If that fails because someone has pushed since you last updated, then you'll
need to repeat the entire process. Well, update, add a new NEWS entry, and
make distcheck again.
* Upload the tarball to ftp.gnome.org, by scp-ing it to master.gnome.org. All
module maintainers who wish to be able to upload tarballs should request a
shell account at master.gnome.org for this purpose -- see AccountPolicy.
Ask someone else to do it for you if you are waiting for an account.
For example:
$ scp lasem-0.3.1.tar.gz (user)@master.gnome.org:
Then ssh into master.gnome.org and call install-module. There are no extra
steps required for new modules.
For example:
$ ftpadmin install lasem-0.3.1.tar.gz
This will move the tarball to the appropriate directory, do some additional
administrative stuff, and send an email to the ftp-release mailing list so
that the release-team will know about it.
* Increment the version number in configure.ac, and push the change.
* Send a message to gnome-announce-list@gnome.org to announce the new
release adding the excerpt from NEWS, your signature, followed
by the standard "What is lasem" and "Where to get more information
about lasem" blurbs from README, and finally the shortlog of all
changes since last release, generated by:
git shortlog X.Y.Z...
where X.Y.Z is the last released version.
* Edit the lasem wiki to add the announcement to the NEWS page and
the front page. (just the parts before your signature).
(This release procedure is an adaptation of the RELEASING file found in cairo,
and of what can be found here: https://wiki.gnome.org/MaintainersCorner/Releasing).