GNUstep release procedure

From GNUstepWiki

(Difference between revisions)
Revision as of 16:58, 26 February 2005
Tarzeau (Talk | contribs)
Packaging
← Previous diff
Revision as of 11:33, 17 March 2005
Stefan Urbanek (Talk | contribs)

Next diff →
Line 1: Line 1:
-The release procedure describes steps required to create new release of GNUstep and its packages.+Steps for releasing the GNUstep core libraries (as well as others):
-Requirements:+1. Make sure news.texi and ReleaseNotes.gsdoc files are updated
-* it should be possible to create a release from clean CVS checkout+
-Steps:+2. Update the 'Version' file with the new version
-# do pure GNUstep CVS checkout+
-# make sure that all required release tests passed +
-# increase appropriate version number+
-# create the package+
-# upload the package+
-# notify packagers on other platforms+
-# announce the release+
-If the packages are used by the GNUstep umbrella package (runtime or development environment), then the ubrella package should be released too.+3. Update the documentation and release notes in the main directory:
-== Preparation ==+ cd Documentation
 + make clean; make; make regenerate
-It is desired that the release is made from CVS checkout. The release should correspond to a tagged state in the CVS.+4. Add a line in the ChangeLog, like:
-Also it is required that all release test passed. If not, the release should not be created. For more information about the tests see [[Quality assurance]].+ '* Version 1.10.0' as well.
-Follow standard versioning guidelines.+and commit the changed files.
-== Packaging ==+5. Tag the release
-The .tar.gz package should be created and put into appropriate directonr in ftp://ftp.gnustep.org/pub/gnustep.+ make cvs-tag
-Concerning binary packages, the person responsible for the release should notify all packagers for different platforms. +6. Make a source distribution
-''FIXME: add a list in the following form: ''+ make cvs-dist
- GNUstep Package | Packager | notify email address (it should be a list)+7. Administrative stuff (scripts that I use to make this easier are in brackets):
-== Announcement ==+* Make RPMS or whatever [gstep-distribute]
 +* Sign the packages [gstep-sign]
 +* Upload packages to ftp.gnustep.org [gstep-update, gstep-upload]
 +* Install the documentation and copy it to the web repository [update_documentation]
 +* Update the index.html and resources/downloads.php pages with the news.
 +* Commit the web repository.
 +* Make an announcement on info-gnustep@gnu.org, etc
-[http://groups-beta.google.com/group/gnu.gnustep.announce/browse_thread/thread/4dd4529968665bd6/75f5adfbd644cce9?_done=%2Fgroup%2Fgnu.gnustep.announce%3F&_doneTitle=Back+to+topics&_doneTitle=Back&&d#75f5adfbd644cce9 example of an announcement]+''Note: gstep-distribute, gstep-update: must be run as root/sudo''
-''FIXME: upload an announcement template for all core GNUstep packages here.''+If the packages are used by the GNUstep umbrella package (runtime or development environment), then the ubrella package should be released too.
 + 
 +== Preparation ==
 + 
 +It is desired that the release is made from CVS checkout. The release should correspond to a tagged state in the CVS.
 + 
 +Also it is required that all release test passed. If not, the release should not be created. For more information about the tests see [[Quality assurance]].
 + 
 +Follow standard versioning guidelines.
[[Category:Project procedures]] [[Category:Project procedures]]

Revision as of 11:33, 17 March 2005

Steps for releasing the GNUstep core libraries (as well as others):

1. Make sure news.texi and ReleaseNotes.gsdoc files are updated

2. Update the 'Version' file with the new version

3. Update the documentation and release notes in the main directory:

cd Documentation
make clean; make; make regenerate

4. Add a line in the ChangeLog, like:

'* Version 1.10.0' as well.

and commit the changed files.

5. Tag the release

make cvs-tag

6. Make a source distribution

make cvs-dist

7. Administrative stuff (scripts that I use to make this easier are in brackets):

  • Make RPMS or whatever [gstep-distribute]
  • Sign the packages [gstep-sign]
  • Upload packages to ftp.gnustep.org [gstep-update, gstep-upload]
  • Install the documentation and copy it to the web repository [update_documentation]
  • Update the index.html and resources/downloads.php pages with the news.
  • Commit the web repository.
  • Make an announcement on info-gnustep@gnu.org, etc

Note: gstep-distribute, gstep-update: must be run as root/sudo

If the packages are used by the GNUstep umbrella package (runtime or development environment), then the ubrella package should be released too.

Preparation

It is desired that the release is made from CVS checkout. The release should correspond to a tagged state in the CVS.

Also it is required that all release test passed. If not, the release should not be created. For more information about the tests see Quality assurance.

Follow standard versioning guidelines.