Make MAVSDK Release
These are the instructions on how to get a release out the door.
The idea is of course to automate this as much as possible!
MAVSDK part
- Check if all open pull requests are merged that need to go in.
- Check that CI on
main
passed. - Create tag in
main
:git switch main git pull git tag vX.Y.Z git push origin vX.Y.Z
- Generate changelog using
tools/generate_changelog.py --token TOKEN_FROM_GITHUB --verbose --tag vX.Y.Z
. - If it finds old/wrong PRs, wait a bit or create the release from the tag in the GitHub UI.
- Once it finds the correct PRs it will check all of them for labels. Make sure all merged PRs have sensible labels (e.g.
enhancement
,bug
, orfeature
). - Copy the changelog text to the release.
- Generate changelog using
- Check later if all artifacts have been uploaded correctly to the release.
- Update the Arch AUR repository. This depends on the AUR maintainter's credentials (currently julianoes).
- Use the repo:
ssh://aur@aur.archlinux.org/mavsdk.git
. - Bump the version in
pkgver=X.Y.Z
. - Check PKGBUILD:
namcap PKGBUILD
. - Try to make pkg:
makepkg
. - Update
.SRCINFO
:makepkg --printsrcinfo > .SRCINFO
. - Commit and push.
- Use the repo:
- Update the brew repo. Steps for macOS:
export HOMEBREW_GITHUB_API_TOKEN=<GITHUB API TOKEN>
brew bump-formula-pr mavsdk --tag=vX.Y.Z --revision=<GIT HASH>
- This should then open the browser with the pull request already created.
MAVSDK-docs part
- Generate the docs and update the reference docs.
- Check or update the examples in the docs.
- Create a branch off
main
for the release- Create the branch
git switch main git pull git switch -c vX.Y
- Modify book.json in the vX.Y branch to change the value of
github_branch
to match the new branch:"github_branch": "vX.Y"
- Push the branch to the upstream repo
git push origin vX.Y
- Create the branch
- Add the branch to the version checker in main branch book.json (see pattern below
versions
).
Other
- Post a note on Slack #mavsdk.