Skip to content

ci: support release automatically#50

Merged
AbaoFromCUG merged 2 commits intomasterfrom
abao/test_publish
Apr 16, 2026
Merged

ci: support release automatically#50
AbaoFromCUG merged 2 commits intomasterfrom
abao/test_publish

Conversation

@AbaoFromCUG
Copy link
Copy Markdown
Collaborator

No description provided.

Copilot AI review requested due to automatic review settings April 16, 2026 10:12
@AbaoFromCUG AbaoFromCUG added the enhancement New feature or request label Apr 16, 2026
@AbaoFromCUG AbaoFromCUG added ci enhancement New feature or request and removed enhancement New feature or request ci labels Apr 16, 2026
@AbaoFromCUG AbaoFromCUG merged commit 541474e into master Apr 16, 2026
12 of 15 checks passed
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the release/publish CI configuration to better support automated releases by aligning the build backend dependencies and adding an auto “prepare release” workflow.

Changes:

  • Switch the build-system requirement from jupyter_builder to hatch-jupyter-builder.
  • Simplify PyPI/TestPyPI publish workflows’ build-dependency installation.
  • Add a new manual “Prepare Release (Auto)” workflow that bumps the version, runs checks, tags, and creates a draft GitHub release.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.

File Description
pyproject.toml Updates build-system requirements to use hatch-jupyter-builder for Hatch/Jupyter build integration.
.github/workflows/publish.yml Adjusts build dependency install step for PyPI publishing.
.github/workflows/publish-test.yml Adjusts build dependency install step for TestPyPI publishing.
.github/workflows/prepare-release-auto.yml Adds a new workflow to bump version, run lint/tests, build, tag, and draft a GitHub release.

Comment thread pyproject.toml

[build-system]
requires = ["hatchling>=1.5.0", "jupyterlab>=4.0.0,<5", "hatch-nodejs-version", "jupyter_builder"]
requires = ["hatchling>=1.5.0", "jupyterlab>=4.0.0,<5", "hatch-nodejs-version", "hatch-jupyter-builder"]
Copy link

Copilot AI Apr 16, 2026

Choose a reason for hiding this comment

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

[build-system].requires now depends on hatch-jupyter-builder without a version constraint, but the jupyter-builder hook below already declares hatch-jupyter-builder>=0.5. To avoid non-reproducible builds (and potential breakage if an older/newer incompatible plugin is resolved), align the build-system requirement with the minimum supported version (e.g., hatch-jupyter-builder>=0.5).

Suggested change
requires = ["hatchling>=1.5.0", "jupyterlab>=4.0.0,<5", "hatch-nodejs-version", "hatch-jupyter-builder"]
requires = ["hatchling>=1.5.0", "jupyterlab>=4.0.0,<5", "hatch-nodejs-version", "hatch-jupyter-builder>=0.5"]

Copilot uses AI. Check for mistakes.
Comment on lines +28 to 30
python -m pip install "jupyterlab>=4.0.0,<5" hatch
- name: Build Distribution
run: hatch build
Copy link

Copilot AI Apr 16, 2026

Choose a reason for hiding this comment

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

This workflow builds artifacts via hatch build, but the repo’s release docs and CI use python -m build (see RELEASE.md:39-40 and .github/workflows/ci.yml:87-92). Consider switching here as well to keep the build path consistent and to avoid depending on the Hatch CLI for publishing (install build and run python -m build).

Suggested change
python -m pip install "jupyterlab>=4.0.0,<5" hatch
- name: Build Distribution
run: hatch build
python -m pip install "jupyterlab>=4.0.0,<5" build
- name: Build Distribution
run: python -m build

Copilot uses AI. Check for mistakes.
Comment on lines +30 to 32
python -m pip install "jupyterlab>=4.0.0,<5" hatch
- name: Build Distribution
run: hatch build
Copy link

Copilot AI Apr 16, 2026

Choose a reason for hiding this comment

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

This workflow builds artifacts via hatch build, but the repo’s release docs and CI use python -m build (see RELEASE.md:39-40 and .github/workflows/ci.yml:87-92). Consider switching here as well to keep the build path consistent and to avoid depending on the Hatch CLI for publishing (install build and run python -m build).

Suggested change
python -m pip install "jupyterlab>=4.0.0,<5" hatch
- name: Build Distribution
run: hatch build
python -m pip install "jupyterlab>=4.0.0,<5" build
- name: Build Distribution
run: python -m build

Copilot uses AI. Check for mistakes.
Comment on lines +86 to +88

- name: Build distribution
run: hatch build
Copy link

Copilot AI Apr 16, 2026

Choose a reason for hiding this comment

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

The repo’s documented/CI build path is python -m build (RELEASE.md:39-40, .github/workflows/ci.yml:87-92), but this workflow uses hatch build. Consider switching this step to python -m build so the auto-release validation uses the same build mechanism as CI/publishing (and adjust the earlier dependency install accordingly).

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants