Release activities check-list for releases:
- Run code inspections (fix typos, Kotlin issues, fix code formatting, linter)
- Write missed KDocs for new APIs
- Update tutorials according to last code changes
- Update README.MD according last code changes
- update an artifact version
- update a Kotlin version
- update the section about library versions
- Update a project version in the file
gradle.properties
(i.e. 0.9.0 -> 0.10.0)- For major releases: update a project version in the file
v.list
- For major releases: update a project version in the file
main.yml
- For major releases: update a project version in the file
project.ihp
- For major releases: update a project version in the file
- Update
libs.versions.toml
file if required - Create and checkout the release branch
- Make last commit with release tag (v0.1.1 for example) to the release branch
- Run tests and build artifacts on TC for the commit with the release tag
- Deploy artifacts on MavenCentral via
Publish
task running on TC based on the commit with the release tag - Check artifacts' availability on MavenCentral
- Check Gradle Plugin portal availability (usually it takes 12 hours)
- Update a bootstrap dependency version in the
libs.versions.toml
file (only after the plugin's publication) - Make final testing
- Check on Datalore with a test project (TODO: add link)
- Check for Android with a test project (TODO: add link)
- Check for ServerSide with a test project (TODO: add link)
- Publish Documentation from GitHub Action
- Prepare and publish the Release Notes
- Create Release from the release tag on GitHub
- Update a KDF version in the Kotlin Jupyter Descriptor. Now the Renovate bot doing this
- Update DataFrame version in the
gradle.properties
file for the next release cycle (i.e. 0.10.0 -> 0.11.0) - Update deprecated functions in deprecationMessages.kt
such that
Level.WARNING
messages are changed toLevel.ERROR
Level.ERROR
messages and their functions are removed.- Update regions in the file accordingly.
- Update Notebook examples, both in the project and on Datalore.