Releases

Note

There are manual steps required before releases will appear on Maven Central, scroll down for more information.

Warning

Before performing a release, be sure to check that the version number in .speakeasy/gen.yaml matches the one in RELEASES.md, otherwise the GitHub and Maven Central release may have inconsistent version numbers. You can do this by running ./scripts/check-version-mismatch.sh

Releases normally happen when the Speakeasy automation in the SDK generation workflow detects that a dependency needs updated, or the code generation changes. It should automatically create a PR (for example, #40) which updates the RELEASES.md file. This workflow runs nightly.

You can force the creation of one of these PRs by running the workflow manually and checking "Force generation of SDKs" option. In this situation, the PR is created even if nothing has changed. This can be useful if you need to force a release for some reason or another.

If any changes were introduced beyond those automatically generated, you should also checkout the PR locally and update the RELEASES.md file to document those changes. For an example, see 87f45e6.

Once merging the PR, the SDK publishing workflow should automatically detect the change to the RELEASES.md file and publish a release to the GitHub releases and to Maven Central.

Once all of the above are done, you must manually log in to the OSSRH portal to complete additional steps before the release will be visible on Maven Central. These additional steps can be found in Maven Central's documentation here. In summary, you must find the release under "staging repositories", "close" the corresponding repository, and then "release" it after it has been successfully closed. Once the release is finished, you can drop the staging release.