Conditionally override version after cutting a release branch #5483
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
The first canary build created after cutting a release branch produces a misleading version/build string. Instead of deriving the version/build string from the upcoming release, it uses the version from the most recent release on
main
. This leads to a race condition with packages produced by the canary build workflow from themain
branch.The race condition occurs because both
main
and the release branch end up generating packages with the same version/build string. Even though we upload them to anaconda.org with different labels, only one package would "win." As a result, we occasionally see the package first appear under one label, only to disappear and reappear under the other label when the other canary build workflow finishes and uploads it's packages.The proposed fix is to override the default behavior of
git describe --tag
when no releases have been made on the branch yet.Checklist - did you ...
Add a file to thenews
directory (using the template) for the next release's release notes?Add / update necessary tests?Add / update outdated documentation?