You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Allow multiple releases per day in the smithy-rs repository (#3875)
## Motivation and Context
Currently, we can only make one `smithy-rs` release per day, and this
restricts our ability to respond to urgent issues. This PR lifts that
limitation, allowing us to make multiple releases per day.
## Description
The core of this change is in the `render` subcommand of `changelogger`.
When generating a date-based release tag, it now checks for existing
tags on the same day. If a tag already exists, the `render` subcommand
will append a numerical suffix to ensure the new tag is unique.
In fact, appending a numerical suffix to make a release tag unique has
been a workaround in our release pipeline (outside the `smithy-rs`
repository) for quite some time. With the changes in this PR, we can
eliminate that temporary solution from the release pipeline.
Now that `changelogger` requires access to previous tags, CI steps that
run `generate-smithy-rs-release` need to checkout the `smithy-rs`
repository with all tags (`fetch-depth: 0` is for that purpose).
## Testing
- [x] Added unit tests for `changelogger`
- [x] Successfully bumped the release tag in
[dry-run](https://github.com/smithy-lang/smithy-rs/actions/runs/11356509152/job/31588857360#step:8:26)
(based on [this dummy
change](cb19b31)
to trick `changelogger` into thinking that it has to bump a release tag)
- [x] Successfully bumped the release tag in the release pipeline
(without the temporary hack we placed last year)
----
_By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice._
0 commit comments