Release
This chapter documents the release procedure of DQCsim. A release consists of a git tag object and an accompanying GitHub release. Build artifacts for the tag reference are generated and published by the Release workflow.
Prepare
- Create a new branch from an up-to-date
masterbranch:git checkout master,git pull origin masterandgit checkout -b release-1.2.3. - Update version number in
rust/Cargo.toml. Runcargo checkin the root of the repository to reflect the version update in theCargo.lockfile. - Update version number in the project command in
CMakeLists.txt. - Add new entry to
CHANGELOG.md. To list all commits since the previous tag reference use:git log $(git describe --tags --abbrev=0)..HEAD --oneline | xargs -L1 echo. - Stage the release commit by adding modified files and committing:
git add rust/Cargo.toml Cargo.lock CMakeLists.txt CHANGELOG.mdandgit commit -m "Release 1.2.3". - Push the branch and create a pull request on GitHub.
Release
- Merge the pull request with reviewers approval and all checks passed.
- Update your local repository:
git checkout masterandgit pull origin master. - Create the tag object:
git tag -s 1.2.3. Add theCHANGELOG.mdentry for this version as tag message. - Push the tag object:
git push origin 1.2.3.