Skip to content

How to create a new release version

Bernhard Thiele edited this page Sep 4, 2017 · 13 revisions

Creating a release version from the master branch

Since release v1.5.1

  • Mostly the same as v1.5.0, but using a dedicated `release` branch
  • Clone a fresh clean repo from github and do some testing
  • Merge relevant master commits into `release` branch, possibly using an delete and replace all strategy similar to the “old way of releasing” at the bottom
cd Modelica_DeviceDrivers
git checkout release
# Check `rm -r Incubate/`
# Check that there is no `Incubate` entry in package.order file
# Check whether versioning information in `package.mo` and librarinfo.mos is adapted
# Check whether UsersGuide.mo (ReleaseNotes) needs update
# ?????Generate help html documentation (in Dymola)
git archive -o Modelica_DeviceDrivers_v1_5_1.zip --prefix="Modelica_DeviceDrivers 1.5.1/" HEAD:Modelica_DeviceDrivers/
git archive -o Modelica_DeviceDrivers_v1_5_1.tar.gz --prefix="Modelica_DeviceDrivers 1.5.1/" HEAD:Modelica_DeviceDrivers/
# Check whether to adapt project README.md

Go to release page on github project site and create a new release. Enter tag, release text, and upload the *.tar.gz and *.zip.

Since release v1.5.0

  • Just download zip package from master branch in Github (alternative use git archive …)
cd Modelica_DeviceDrivers-master/Modelica_DeviceDrivers
rm -r Incubate/
# Remove Incubate entry from package.order file
# ?????Generate help html documentation (in Dymola)
# Check whether to adapt UsersGuide.mo (ReleaseNotes) and librarinfo.mos
cd ..
tar czf Modelica_DeviceDrivers_v1_5_0.tar.gz Modelica_DeviceDrivers/
zip -r Modelica_DeviceDrivers_v1_5_0.zip Modelica_DeviceDrivers
# Check whether to adapt project README.md

Go to release page on github project site and create a new release. Enter tag, release text, and upload the *.tar.gz and *.zip.

Since release v1.4.0

rm build.drone.io.txt
rm .travis.yml
cd Modelica_DeviceDrivers
rm -r Incubate/
# Remove Incubate entry from package.order file
# ?????Generate help html documentation (in Dymola)
# Check whether to adapt README.md, UsersGuide.mo (ReleaseNotes) and librarinfo.mos
tar czf Modelica_DeviceDrivers_v1_4_4.tar.gz Modelica_DeviceDrivers/
zip -r Modelica_DeviceDrivers_v1_4_4.zip Modelica_DeviceDrivers

Go to release page on github project site and create a new release. Enter tag, release text, and upload the *.tar.gz and *.zip.

Outdated information

The old way of releasing. It is outdated now.

This is just a little memo how to create a release version from the master branch. The following shell commands were used to create the v1.1 release:

cd Modelica_DeviceDrivers
mkdir /tmp/MDD; cp -r * /tmp/MDD
git checkout -b tmp
# in case status for cut of release is at an point different from HEAD:
#      git reset --hard <hash of where the release should be cut from>
git checkout release
git merge -s ours tmp
rm -r *
mkdir "Modelica_DeviceDrivers 1.1"
cd Modelica_DeviceDrivers\ 1.1/
cp -r /tmp/MDD/* .
rm -r Incubate/
mv README.md screenshot.png ..
# Generate help html documentation (in Dymola)
# Remove Incubate entry from package.order file
# might want to adapt README.md, UsersGuide.mo (ReleaseNotes) and librarinfo.mos
cd ..
git add -A .
git commit --amend -m"Created v1.1 release"
git tag v1.1
git push origin release
git push --tags origin v1.1
git branch -D tmp