Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 19 additions & 19 deletions .github/ISSUE_TEMPLATE/release_checklist.md
Original file line number Diff line number Diff line change
@@ -1,47 +1,47 @@
---
name: Release
about: Checklist and communication channel for PyPI and GitHub release
title: "Ready for <version-number> PyPI/GitHub release"
about: Checklist and communication channel for GitHub and conda-forge release
title: "Ready for <version-number> GitHub/conda-forge release"
labels: "release"
assignees: ""
---

### PyPI/GitHub rc-release preparation checklist:
### GitHub rc-release preparation checklist:

- [ ] All PRs/issues attached to the release are merged.
- [ ] All the badges on the README are passing.
- [ ] License information is verified as correct. If you are unsure, please comment below.
- [ ] Locally rendered documentation contains all appropriate pages, tutorials, and other human-written text is up-to-date with any changes in the code.
- [ ] All API references are included. To check this, run `conda install scikit-package` and then `package build api-doc`. Review any edits made by rerendering the docs locally.
- [ ] Locally rendered documentation contains all appropriate pages and other human-written text is up-to-date with any changes in the code.
- [ ] Installation instructions in the README, documentation, and the website are updated.
- [ ] Successfully run any tutorial examples or do functional testing with the latest Python version.
- [ ] Grammar and writing quality are checked (no typos).
- [ ] Install `pip install build twine`, run `python -m build` and `twine check dist/*` to ensure that the package can be built and is correctly formatted for PyPI release.
- [ ] Dispatch matrix testing to test the release on all Python versions and systems. If you do not have permission to run this workflow, tag the maintainer and say `@maintainer, please dispatch matrix testing workflow`.
- [ ] `FALLBACK_VERSION` in `site_scons/fallback_version.py` is updated to `<version-number>.post0`. Without this, the SCons build fails after tagging.
- [ ] `scons test` passes locally with the latest conda-forge compilers and dependencies.
- [ ] Dispatch matrix testing to test the release on all systems. If you do not have permission to run this workflow, tag the maintainer and say `@maintainer, please dispatch matrix testing workflow`. Matrix testing also runs automatically on the tag and blocks the release if it fails.

Please tag the maintainer (e.g., @username) in the comment here when you are ready for the PyPI/GitHub release. Include any additional comments necessary, such as version information and details about the pre-release here:
Please tag the maintainer (e.g., @username) in the comment here when you are ready for the GitHub release. Include any additional comments necessary, such as version information and details about the pre-release here:

### PyPI/GitHub full-release preparation checklist:
### GitHub full-release preparation checklist:

- [ ] Create a new conda environment and install the rc from PyPI (`pip install <package-name>==??`)
- [ ] License information on PyPI is correct.
- [ ] Docs are deployed successfully to `https://<github-username-or-orgname>/<package-name>`.
- [ ] Successfully run all tests, tutorial examples or do functional testing.
- [ ] The rc GitHub release and its source tarball appear correctly on the releases page.
- [ ] Docs are deployed successfully to `https://www.diffpy.org/libdiffpy`.
- [ ] Successfully run all tests and do functional testing, e.g., with `diffpy.srreal` built against the rc.

Please let the maintainer know that all checks are done and the package is ready for full release.

### conda-forge release preparation checklist:

<!-- After the maintainer releases the PyPI package, please check the following when creating a PR for conda-forge release.-->
<!-- After the maintainer releases on GitHub, please check the following when creating a PR for conda-forge release.-->

- [ ] Ensure that the full release has appeared on PyPI successfully.
- [ ] New package dependencies listed in `conda.txt` and `tests.txt` are added to `meta.yaml` in the feedstock.
- [ ] Ensure that the full release has appeared on GitHub successfully.
- [ ] `version` and `sha256` of the GitHub source tarball are updated in `meta.yaml` in the feedstock.
- [ ] New package dependencies listed in `build.txt`, `conda.txt` and `tests.txt` are added to `meta.yaml` in the feedstock.
- [ ] `license_file` in `meta.yaml` points to `LICENSE.rst` (renamed from `LICENSE.txt`).
- [ ] Close any open issues on the feedstock. Reach out to the maintainer if you have questions.
- [ ] Tag the maintainer for conda-forge release.

### Post-release checklist

<!-- Before closing this issue, please complete the following: -->

- [ ] Run tutorial examples and conduct functional testing using the installation guide in the README. Attach screenshots/results as comments.
- [ ] Documentation (README, tutorials, API references, and websites) is deployed without broken links or missing figures.
- [ ] Install the released package from conda-forge and conduct functional testing using the installation guide in the README. Attach screenshots/results as comments.
- [ ] Documentation (README, API references, and websites) is deployed without broken links or missing figures.
2 changes: 0 additions & 2 deletions .github/workflows/check-news-item.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@ name: Check for News

on:
pull_request_target:
branches:
- main # GitHub does not evaluate expressions in trigger filters; edit this value if your base branch is not main

jobs:
check-news-item:
Expand Down
13 changes: 12 additions & 1 deletion .github/workflows/release-github-on-tag.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build Wheel and Release
name: Release on GitHub

# Trigger on tag push or manual dispatch.
# Tag and release privilege are verified inside the reusable workflow.
Expand All @@ -24,3 +24,14 @@ jobs:
uses: scikit-package/release-scripts/.github/workflows/_release-github.yml@v0
secrets:
PAT_TOKEN: ${{ secrets.PAT_TOKEN }}

docs-release:
needs: [release-github]
permissions:
contents: write
uses: scikit-package/release-scripts/.github/workflows/_release-docs.yml@v0
with:
project: libdiffpy
c_extension: true
headless: false
python_version: 0
24 changes: 24 additions & 0 deletions news/ci.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
**Added:**

* <news item>

**Changed:**

* Publish docs automatically after a successful GitHub release.
* Update the release checklist for GitHub and conda-forge releases without PyPI.

**Deprecated:**

* <news item>

**Removed:**

* <news item>

**Fixed:**

* <news item>

**Security:**

* <news item>
Loading