We will consider that all operations will be performed in a brand new clone of the main project:
git clone https://github.com/GUDHI/gudhi-devel.git
cd gudhi-devel
Version file modification
Edit the file CMakeGUDHIVersion.txt, and increment major, minor, or patch version number, in function of the version new delivery.
# cf. .gitignore - ignore this if it is a fresh clone version
rm -rf data/points/COIL_database/lucky_cat.off_dist data/points/COIL_database/lucky_cat.off_sc.dot data/points/KleinBottle5D.off_dist data/points/KleinBottle5D.off_sc.dot data/points/human.off_dist data/points/human.off_sc.off data/points/human.off_sc.txt
Checkin the modifications, build and test the version:
git submodule update --init
rm -rf build; mkdir build; cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCGAL_DIR=/your/path/to/CGAL -DWITH_GUDHI_EXAMPLE=ON -DWITH_GUDHI_BENCHMARK=ON -DUSER_VERSION_DIR=gudhi.3.3.0 -DPython_ADDITIONAL_VERSIONS=3 ..
make user_version
date +"%d-%m-%Y-%T" > gudhi.3.3.0/timestamp.txt
tar -czvf gudhi.3.3.0.tar.gz gudhi.3.3.0
md5sum gudhi.3.3.0.tar.gz > md5sum.txt
sha256sum gudhi.3.3.0.tar.gz > sha256sum.txt
sha512sum gudhi.3.3.0.tar.gz > sha512sum.txt
make -j 4 all && ctest -j 4 --output-on-failure
[Check there are no error]
Create the documentation
mkdir gudhi.doc.3.3.0
make doxygen 2>&1 | tee dox.log && grep warning dox.log
[Check there are no error and the warnings]
cp -R gudhi.3.3.0/doc/html gudhi.doc.3.3.0/cpp
cd gudhi.3.3.0
rm -rf build; mkdir build; cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCGAL_DIR=/your/path/to/CGAL -DWITH_GUDHI_EXAMPLE=ON -DPython_ADDITIONAL_VERSIONS=3 ..
export LC_ALL=en_US.UTF-8 # cf. bug https://github.com/GUDHI/gudhi-devel/issues/111
make sphinx
[Check there are no error]
cp -R python/sphinx ../../gudhi.doc.3.3.0/python
cd ../..
tar -czvf gudhi.doc.3.3.0.tar.gz gudhi.doc.3.3.0
cd gudhi.3.3.0/build
make -j 4 all && ctest -j 4 --output-on-failure
[Check there are no error]
Upload the documentation
Upload by ftp the content of the directory gudhi.doc.3.3.0/cpp in a new directory on Forge.nosp@m.Logi.nosp@m.n@scm.nosp@m..gfo.nosp@m.rge.i.nosp@m.nria.nosp@m..fr:/home/groups/gudhi/htdocs/doc/3.3.0
Upload by ftp the content of the directory gudhi.doc.3.3.0/python in a new directory on Forge.nosp@m.Logi.nosp@m.n@scm.nosp@m..gfo.nosp@m.rge.i.nosp@m.nria.nosp@m..fr:/home/groups/gudhi/htdocs/python/3.3.0
Through ssh, make the latest link to your new version of the documentation:
ssh ForgeLogin@scm.gforge.inria.fr
cd /home/groups/gudhi/htdocs/doc
rm latest
ln -s 3.3.0 latest
cd /home/groups/gudhi/htdocs/python
rm latest
ln -s 3.3.0 latest
Put a version label on files
- Go on page https://github.com/GUDHI/gudhi-devel/releases/new
- Name the tag: tags/gudhi-release-3.3.0
- Name the release GUDHI 3.3.0 release
- Write the release note
- Drag'n drop gudhi.3.3.0.tar.gz, md5sum.txt, sha256sum.txt, sha512sum.txt files
- Tick the This is a pre-release check button if this is a release candidate (untick if this is an official version)
- Click the Publish the release button
Mail sending
Send version mail to the following lists :