Dependencies are declared in gradle/dependency-management.gradle
.
Update the coreVersion
to the corresponding version of spring-session-core
and dataGeodeVersion
to the corresponding version of spring-session-data-geode
.
Run all the checks:
$ ./gradlew check
Create separate issues for each dependency update and push the changes.
Ensure that the most recent SNAPSHOT is working, by testing it in a sample project, for example https://github.com/eleftherias/session-bom-sample.
You can manually check at https://github.com/spring-projects/spring-session/milestones
Update the version number in gradle.properties
for the release, for example 2021.2.0-RC1
, 2021.1.0
.
Push the commit and Jenkins will build and deploy the artifacts. Wait for the artifact to appear in https://repo1.maven.org/maven2/org/springframework/session/spring-session-bom/
Tag the release and then push the tag
git tag 2021.2.0-RC1 git push origin 2021.2.0-RC1
Update gradle.properties
version to next SNAPSHOT
version, update the dependencies in dependency-management.gradle
to the next SNAPSHOT
versions and then push.
Update the versions on https://spring.io/projects for Spring Session. The reference documentation should point to the Spring Session Core reference documentation.
This step should be skipped for patch releases (e.g 2.7.1). It only applies to pre-releases and GA releases.
Create a new release notes section in the Wiki. Describe any breaking changes, and noteworthy enhancements.
-
In GitHub Milestones, create a new milestone for the next release version.
-
Move any open issues from the existing milestone you just released to the new milestone.
-
Close the milestone for the release.
Note: Spring Session typically releases only one milestone (M1) and one release candidate (RC1).
-
Announce via Slack on #spring-release, including the keyword
spring-session-announcing
in the message. Something like:
spring-session-announcing 2022.0.0 is available.