| Version 13 (modified by , 17 years ago) (diff) |
|---|
Release numbering
- 1.x
- Feature release.
- 1.x.y
- Bugfix release.
Feature Releases
- Update the
CMakebuild environment.- Test it (using
CMake v2.6)- both Visual Studio 2005 and 2007
- both from the IDE and using nmake
- test creating an installer.
- with linux (using gcc-4.x)
- both Visual Studio 2005 and 2007
- Test it (using
- Check the repository thoroughly
- Be sure there is no a globally installed version of lemon on the computer where the tests are made
- Run
make distcheck - Do
make check- using gcc version 3.3, 3.4, 4.0, 4.1, 4.2, 4.3. No warning is allowed with these version
- using icc 10.1
- Both on 32 bit and 64 bit architectures.
- on Cygwin
- on OSX
- Create a named branch for each new feature release. The name is just the release number like 1.0.
- Then comes some commits (out of the default branch) preparing the repository for the release.
- Remove all unfinished stuff (e.g. from the documentation)
- Do a complete reconfiguration with given version like this:
LEMON_VERSION=1.0 autoreconf -vif ./configure --enable-demo
- Run
make update-external-tagsto get doxygen reference to STL. - Run
make distcheck- This does a very last check and creates the tarball.
- Create the Windows installer.
- Tag the released version with release-x.y.
Bugfix Changesets
- Do the bugfix on the top of the common ancestor changeset of all branches where the bug appears. This changeset can be found with the
debuganchestorcommand like this.hg debugancestor default 1.0
- Then merge them individually to all branches where it applies.
- Important: Update to the branch head first, then merge to the bugfix changeset, otherwise the the merge commit will not belong to the branch.
hg up -C 1.0 hg merge -r 1234 hg ci -m 'Merge to 1.0'
- Important: Update to the branch head first, then merge to the bugfix changeset, otherwise the the merge commit will not belong to the branch.
Bugfix Releases
- A bugfix release is situated in the same branch as its mother feature release.
- Check the repository thoroughly
- Like in case of a feature release
- Adjust the release number in
configure.ac- Don't forget to commit this change.
- Create the tarball and the Windows installer.
- Tag the released version with release-x.y.z.

