Note: These steps should be done directly in the nbadal/ktlint-intellij-plugin
repository, not in your personal fork.
Releasing a new version:
- Verification before starting release:
- Check that none of the
build.gradle.kts
depends onmavenLocal()
ormaven("https://oss.sonatype.org/content/repositories/snapshots")
. Those may only be used in snapshot versions of the plugin - check that the ruleset for the latest ktlint version has been added to
ktlint-lib
. SeeREADME.md
for more information.
- Check that none of the
- Create new branch, for example
0.20.0-beta-7-prep
. - Check whether plugin description in readme file of plugin-folder is up-to-date as this is used as description of the plugin on the Jetbrains Marketplace inside IntelliJ IDEA and for Marketplace Overview.
- Generate changelog
- The generated changelog only contains the PR titles. For most changes this should be sufficient. For breaking API changes, it is better to add additional information. To indent this explanation correctly, append
- The generated changelog only contains the PR titles. For most changes this should be sufficient. For breaking API changes, it is better to add additional information. To indent this explanation correctly, append
- Do not change the heading
Unreleased
inCHANGELOG.md
as it will be updated automatically. Also, the release will be added automatically to the bottom of theCHANGELOG.md
file. - Set field
pluginVersion
ingradle.properties
to the new version number. Note that when the version if suffixed with-beta
it will be released on the beta channel of the plugin only. Only users that have configured the additional repositoryhttps://plugins.jetbrains.com/plugins/list?pluginId=com.nbadal.ktlint&channel=beta
will see the new version after it is released. - Push your changes to the branch, and merge it to
master
. - Do not tag the release manually, but go to the latest Draft Release. Check that release notes are up-to-date. It is not needed to add the ZIP file containing the plugin, as it will be published via the marketplace.
- Check that the release is available on Marketplace Versions. Note that it might take a full business day before the plugin is actually released due to a manual review by Jetbrains.
- Check that screenshots on the Marketplace Overview are up-to-date.
- Announce release on Ktlint Slack channel
- Update
gradle.properties
with the newbeta
version, and add the section below to the top ofCHANGELOG.md
and commit. (This can be done directly in the main repo or in your fork.)
## [Unreleased]
Note: the heading "[Unreleased]" may not be changed as this will result in incorrect release notes being extracted from the 'changelog.md' file.