All,
-we would like to start the release process for deal.II 8.3.0 soon. Please let us
+we would like to start the release process for deal.II 9.0.0 soon. Please let us
know if you have any last minute things that need to be addressed (bugs,
documentation issues, configuration problems, etc.).
sort |uniq
Compare with the commit list:
- git log --date=short --format="%an %aE" v8.3.0..HEAD | sort | uniq
+ git log --date=short --format="%an %aE" v8.5.0..HEAD | sort | uniq
*** Caveat: for a minor version x.y.Z,
-*** 1-3 must be performed on the corresponding release branch, e.g. 'dealii-8.2'
+*** 1-3 must be performed on the corresponding release branch, e.g. 'dealii-9.0'
*** AND on HEAD
cd build-doc
cmake ../dealii -DDEAL_II_COMPONENT_DOCUMENTATION=ON
make documentation
- cp doc/news/changes.h ../dealii/doc/news/8.4.2-vs-8.5.0.h
+ cp doc/news/changes.h ../dealii/doc/news/8.5.0-vs-9.0.0.h
cd ../dealii
git checkout -b update-changes-file
- git add doc/news/8.4.2-vs-8.5.0.h
- git commit -m "Update the changelog file for the release." doc/news/8.4.2-vs-8.5.0.h
+ git add doc/news/8.5.0-vs-9.0.0.h
+ git commit -m "Update the changelog file for the release." doc/news/8.5.0-vs-9.0.0.h
git rm doc/news/changes/{major,minor,incompatibilities}/*
git commit -m "Remove now obsolete files." doc/news/changes/{major,minor,incompatibilities}
git push origin update-changes-file
4/ If a x.y.0 release, it is now time to create a release branch:
- git branch dealii-8.2 # exactly 'dealii-X.Y' to remain consistent!
+ git branch dealii-9.0 # exactly 'dealii-X.Y' to remain consistent!
- # Update VERSION from 8.2.0-pre to 8.2.0-rc1
+ # Update VERSION from 9.0.0-pre to 9.0.0-rc0
#
- # Note: Please do not use "8.2.0" directly because the soname is derived
- # from the current version number. Therefore, 8.2.0 must only be used for
- # the final, tagged and distributed code.
+ # Note: Please do not use "9.0.0" (or "9.0.0-rc1") directly because the
+ # soname is derived from the current version number. Therefore, 9.0.0
+ # must only be used for the final, tagged and distributed code.
git commit -a -m "update VERSION"
- git push origin dealii-8.2 # where origin is the remote pointing to
+ git push origin dealii-9.0 # where origin is the remote pointing to
# github.com/dealii/dealii.git
Note: Without a pull request!
-5/ Update the VERSION from 8.2.0-pre to 8.3.0-pre on master
+5/ Update the VERSION from 9.0.0-pre to 9.1.0-pre on master
git commit -a -m "update VERSION"
[ pull request for master branch ]
-6/ update the official tester to test on the release branch dealii-8.2
+6/ update the official tester to test on the release branch dealii-9.0
- An empty checkout in a folder 'dealii-8.2' can be obtained via
+ An empty checkout in a folder 'dealii-9.0' can be obtained via
- git clone --branch dealii-8.2 git://github.com/dealii/dealii.git deal-8.2
+ git clone --branch dealii-9.0 git://github.com/dealii/dealii.git deal-9.0
6a/ On mainline, do something like this to require the current dev version
for the tutorials and in the documentation:
- perl -pi -e 's/8.4 QUIET/8.5.0 QUIET/g;' examples/*/CMakeLists.txt
+ perl -pi -e 's/8.5.0 QUIET/9.0.0 QUIET/g;' examples/*/CMakeLists.txt
also check doc/users/* and tests/*:
configuration. For this update your git repository and switch to the
release branch:
git remote update
- git checkout dealii-8.3
+ git checkout dealii-9.0
If no further regressions show up we will release [planned date]
8/ Remove unfinished tutorial programs.
- For 8.5, these are steps 47, 50
+ For 9.0, these are steps 47, 50
a) Delete directories on the branch:
https://svnhp.dealii.org/trunk/homepage/images/steps/readme.txt
-9/ Write up a short release note and save it as announce-8.3
+9/ Write up a short release note and save it as announce-9.0
9a/ Write the release paper in the release-papers/ subdirectory
10/ Test the branch thoroughly:
very least compile. If possible, also run them to make sure they
don't trip up any exceptions.
-11/ In a clean source directory of the dealii-8.2 branch, do
+11/ In a clean source directory of the dealii-9.0 branch, do
mkdir builddoc
cd builddoc
cmake -DDEAL_II_COMPONENT_DOCUMENTATION=ON -DCMAKE_INSTALL_PREFIX=$PWD/../installeddoc ../
12/ Push the button:
- a) Change VERSION to 8.2.0 for a release and to 8.2.0-rc1 for a release
+ a) Change VERSION to 9.0.0 for a release and to 9.0.0-rc1 for a release
candiate and commit:
git commit -m "update VERSION for release"
b) (Signed) tag the commit with:
# for the final release:
- git tag -s -m "deal.II Version 8.3.0" v8.3.0
+ git tag -s -m "deal.II Version 9.0.0" v9.0.0
# or alternatively for a release candidate:
- git tag -s -m "deal.II Pre-Release Version 8.3.0-rc1" v8.3.0-rc1
+ git tag -s -m "deal.II Pre-Release Version 9.0.0-rc1" v9.0.0-rc1
You need a working gnupg key for this. (You should have anyway :-P)
c) Push changes to github:
# where origin is the remote pointing to github.com/dealii/dealii.git
- git push origin dealii-8.3
- git push origin v8.3.0
+ git push origin dealii-9.0
+ git push origin v9.0.0
13/ Create the tar files:
what we expect, e.g.
# in a clean git repository:
- git checkout v8.2.0 # or git checkout v8.2.0-rc1
+ git checkout v9.0.0 # or git checkout v9.0.0-rc1
rm -r *
- tar --strip-components=1 -xvf dealii-8.2.0.tar.gz (or dealii-8.2.rc1.tar.gz)
+ tar --strip-components=1 -xvf dealii-9.0.0.tar.gz (or dealii-8.2.rc1.tar.gz)
git status
Now, the last git status must not show any modified contents!
Cryptographically sign it (detached, armored signature):
- gpg --detach-sign --armor dealii-8.2.0.tar.gz
+ gpg --detach-sign --armor dealii-9.0.0.tar.gz
(Guido, Timo and Matthias have a suitable gpg in the "pgp strong set")
In a clean working copy of the tagged release version run the script
- ./make_offline_doc.sh 8 2 0
+ ./make_offline_doc.sh 9.0.0
# or alternatively for a release candidate
- ./make_offline_doc.sh 8 2 0-rc1
+ ./make_offline_doc.sh 9.0.0-rc1
- to create dealii-8.2.0-offline_documentation.tar.gz
- (dealii-8.2.0-rc1-offline_documentation.tar.gz). This step needs to be
+ to create dealii-9.0.0-offline_documentation.tar.gz
+ (dealii-9.0.0-rc1-offline_documentation.tar.gz). This step needs to be
done on a machine that has both a reasonably new doxygen version as
well as a dot version that can produce pngs. wolfgang's bloc507d has
both of these programs installed in /home/bangerth/bin/x86/bin.
d) Also sign it:
- gpg --detach-sign --armor dealii-8.2.0-offline_documentation.tar.gz
+ gpg --detach-sign --armor dealii-9.0.0-offline_documentation.tar.gz
14a/ Create a pre-release on github:
https://github.com/dealii/dealii/releases/new
- Tag: dealii-8.2.0-rc1 @master
- Release title: deal.II pre-release version 8.2.0-rc1
+ Tag: dealii-9.0.0-rc1 @master
+ Release title: deal.II pre-release version 9.0.0-rc1
Description: ""
- Attach dealii-8.2.0-rc1.tar.gz (yes, once again)
- Attach dealii-8.2.0-rc1.tar.gz.asc
- Attach dealii-8.2.0-rc1-offline_documentation.tar.gz
- Attach dealii-8.2.0-rc1-offline_documentation.tar.gz.asc
+ Attach dealii-9.0.0-rc1.tar.gz (yes, once again)
+ Attach dealii-9.0.0-rc1.tar.gz.asc
+ Attach dealii-9.0.0-rc1-offline_documentation.tar.gz
+ Attach dealii-9.0.0-rc1-offline_documentation.tar.gz.asc
14b/ Create a release on github:
https://github.com/dealii/dealii/releases/new
- Tag: dealii-8.2.0 @master
- Release title: deal.II version 8.2.0
+ Tag: dealii-9.0.0 @master
+ Release title: deal.II version 9.0.0
Description:
[Short version of release notes as found in announce-8.2]
A full list of changes can be found at
http://www.dealii.org/developer/doxygen/deal.II/changes_between_8_2_1_and_8_3.html
- Attach dealii-8.2.0.tar.gz (yes, once again)
- Attach dealii-8.2.0.tar.gz.asc
- Attach dealii-8.2.0-offline_documentation.tar.gz
- Attach dealii-8.2.0-offline_documentation.tar.gz.asc
+ Attach dealii-9.0.0.tar.gz (yes, once again)
+ Attach dealii-9.0.0.tar.gz.asc
+ Attach dealii-9.0.0-offline_documentation.tar.gz
+ Attach dealii-9.0.0-offline_documentation.tar.gz.asc
***
*** Caveat: Every further commit on an actual release at this point forces
-*** an increase in the patch number, i.e. 8.2.0 -> 8.2.1.
+*** an increase in the patch number, i.e. 9.0.0 -> 8.2.1.
***
*** Go back to 12/ until a release is tagged
***
17/ Ask Luca for Mac packages. Those can be added as additional download
options to the freshly created release. Mention new naming convention
- "dealii-8.2.0-.*" for attachments
+ "dealii-9.0.0-.*" for attachments
18/ Finish writing the announcement
19/ announce the release by sending an email to announce-list (file in this
directory) with subject:
- Finite Element Software deal.II Version 8.4.0 released
+ Finite Element Software deal.II Version 9.0.0 released
19a/ Send a note to the Facebook and Google+ accounts