Skip to content

Add PyPI release workflow - #9297

Merged
mrocklin merged 2 commits into
dask:mainfrom
mrocklin:release-procedure
Jun 11, 2026
Merged

mrocklin merged 2 commits into
dask:mainfrom
mrocklin:release-procedure

Conversation

@mrocklin

@mrocklin mrocklin commented Jun 9, 2026

Copy link
Copy Markdown
Member

@crusaderky crusaderky left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR! It mostly looks good. A few notes below.

Comment thread .github/workflows/release-publish.yml Outdated
Comment on lines +40 to +42
release_version="$RELEASE_VERSION"
if [[ ! "$release_version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "::error::Release versions must use x.x.x form, got $release_version"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
release_version="$RELEASE_VERSION"
if [[ ! "$release_version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "::error::Release versions must use x.x.x form, got $release_version"
if [[ ! "$RELEASE_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "::error::Release versions must use x.x.x form, got $RELEASE_VERSION"

Comment thread .github/workflows/release-publish.yml Outdated
Comment on lines +45 to +47
dask_version="$DASK_VERSION_TO_WAIT_FOR"
if [[ ! "$dask_version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "::error::Dask versions must use x.x.x form, got $dask_version"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
dask_version="$DASK_VERSION_TO_WAIT_FOR"
if [[ ! "$dask_version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "::error::Dask versions must use x.x.x form, got $dask_version"
if [[ ! "$DASK_VERSION_TO_WAIT_FOR" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "::error::Dask versions must use x.x.x form, got $DASK_VERSION_TO_WAIT_FOR"

Comment thread .github/workflows/release-publish.yml Outdated
export SETUPTOOLS_SCM_PRETEND_VERSION_FOR_DISTRIBUTED="$RELEASE_VERSION"
fi
uv build --sdist --wheel
- name: Check built versions

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See my comment in the dask PR; this step feels quite overengineered

Comment thread docs/release-procedure.md Outdated
enter the protected PyPI environment, upload to PyPI, or publish GitHub
Releases.

For coordinated Dask and Distributed releases, the Dask and Distributed tags may

@crusaderky crusaderky Jun 9, 2026 •

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
For coordinated Dask and Distributed releases, the Dask and Distributed tags may
To save time, the Dask and Distributed tags may

The wording may suggest that you can have one without the other, while you don't

Comment thread docs/release-procedure.md
Comment thread .github/workflows/release-publish.yml Outdated
echo "::error::Dask versions must use x.x.x form, got $dask_version"
exit 1
fi
- name: Build distributions

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A think adding here a cheap grep 'dask >= DASK_VERSION_TO_WAIT_FOR pyproject.toml` will save a lot of time when the maintainer inevitably forgets to update the file.

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Unit Test Results

See test report for an extended history of previous test failures. This is useful for diagnosing flaky tests.

    40 files  ±0      40 suites  ±0   14h 31m 48s ⏱️ + 2m 47s
 4 153 tests ±0   3 972 ✅ +1    178 💤 ±0  3 ❌  - 1 
80 820 runs  +1  76 579 ✅ +1  4 238 💤 +1  3 ❌  - 1 

For more details on these failures, see this check.

Results for commit 49501df. ± Comparison against base commit 6e4ca76.

@crusaderky crusaderky left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have not tested it, but otherwise it looks good. Thank you!

@mrocklin
mrocklin merged commit 26c54b2 into dask:main Jun 11, 2026
45 of 51 checks passed
@mrocklin
mrocklin deleted the release-procedure branch June 11, 2026 17:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants