- Ensure that the proper project version has been set in the main CMakeLists.txt
- E.g.
VERSION 0.19.0
- E.g.
- Ensure that either the logbook migration and/or the location migration updates the database metadata with the current version (with different migration UUIDs)
- Ensure that the copyright year in SkyDolly.rc.in and Info.plist.in is up to date
- Choose and set a suitable "version codename" in Version.cpp
- Update the "preview dialog" message in MainWindow.cpp
- Adjust the
PreviewInfoDialogBase
in Settings.cpp in order to show the preview dialog three times
- Ensure that settings are converted to latest version in SettingsConverter.cpp
- Ensure that the example SQL still works
- Push all changes
- Merge all feature / bug fix branches into main (https://github.com/till213/SkyDolly/pulls)
- Pull all changes
- Switch to main branch
- Check integration actions (https://github.com/till213/SkyDolly/actions)
Then:
- Create a new release (https://github.com/till213/SkyDolly/releases/new)
- Choose a tag, e.g.
v0.19.0
- Ensure that Target is set to
main
- Choose a title, e.g.
Sky Dolly v0.19.0
- Provide a description (summary of the changelog)
- Check the This is a pre-release option (as appropriate)
Description template:
This release provides feature X.
## New Features
- A new feature Y
- Another feature Z
## Improvements
- Improvement 1
- Improvement 2
## Bug Fixes
- Bug fix A
- Bug fix B
- Publish
- Fetch the release with
git pull --all
(including the newly created label) - Select "Release"
- Ensure that the CMake option
SKY_TESTS
is enabled - Ensure that the CMake option
SKY_FETCH_EGM
is enabled - Run CMake
- Build
- Run all tests
- Repeat on macOS and Linux
- Create a new package folder, e.g. simply
SkyDolly
- Copy all executables and libraries from the build
bin
folder into the new package folder (SkyDolly
) - Ensure that the following dependencies are in the package folder:
- platforms/qwindows.dll
- sqldrivers/sqlite.dll
- styles/qmodernwindowsstyle.dll
- libgcc_s_seh-1.dll, libstdc++-6.dll, libwinpthread-1.dll
- Qt6Core.dll, Qt6Gui.dll, Qt6Sql.dll, Qt6Widgets.dll
- SimConnect.dll
- GeographicLib.dll
- Ensure that the following dependencies are removed from the package folder:
- Plugins/Connect/PathCreator.dll
- Plugins/Module/Template.dll
- SkyMathTest.exe, SkySearchTest.exe, ...
- Ensure that the resources files are in the package folder:
- Resources/geoids/egm2008-5.wld, egm2008-5.pgm. egm2008-5.pgm.aux.xml
- Resources/migr/Locations.csv
- SimConnect.cfg
- Launch
SkyDolly.exe
- Ensure that the Help / About... information is as expected
- Compare the version git hash code with the one of the current
main
branch (git rev-parse --short HEAD
) - Ensure that the connect and import/export plugins are present
- Launch the flight simulator
- Record a new flight
- Record a new aircraft, with replay mode set to
- Normal
- Take control of recorded user aircraft
- Fly with formation
- Repeat with Set relative position disabled
- Delete aircraft, change user aircraft in formation, with Set relative position enabled and disabled
- Change bearing and distance, with Set relative position enabled and disabled
- Export as Logbook
- Import same file as Logbook
- Enable / disable minimal UI (key M)
- Open a Sky Dolly v0.6 logbook (create a copy first)
- Import a Sky Dolly v0.6 logbook (create a copy first)
- ZIP the package folder (e.g.
SkyDolly-v0.19.0.zip
)
- Upload the ZIP archive to VirusTotal
- Add the ZIP archive (e.g.
SkyDolly-v0.19.0.zip
) to the published github.com release
- Create a bug fix branch, e.g.:
git checkout -b 0.19.0
- Bump the version to e.g.
0.19.1
in the main CMakeLists.txt - Commit, e.g.
git commit -m "Bump version to 0.19.1"
- Push, e.g.
git push --set-upstream origin 0.19.0
- Switch back to main:
git checkout main
- Update the SHASUM-256 checksum in SHASUM256.md
- Publish the release on: https://flightsim.to/file/9067/sky-dolly
- Update screenshots
- Adjust the Latest (pre-)release: Sky Dolly 0.19.0 in README.md
- Adjust the supported versions in SECURITY.md
- Announcement on flightsim.to Sky Dolly group
- Announcement on MSFS Product Announcements
- Announcement on AVSIM general freeware
- Announcement on Buy me a coffee