mirror of
https://github.com/dreamhunter2333/cloudflare_temp_email.git
synced 2026-09-07 16:37:04 +08:00
1.9 KiB
1.9 KiB
name, description
| name | description |
|---|---|
| cf-temp-mail-release | Create a GitHub release for cloudflare_temp_email project. Use when the user asks to create a release, publish a version, tag a release, or make a new release. Reads CHANGELOG.md for release content, collects merged PRs via `gh` CLI, and creates a properly formatted GitHub release. |
Release Workflow
Steps
- Read version: Get current version from
worker/package.json("version"field) and the latest release tag viagh release list --limit 1. - Read CHANGELOG: Read
CHANGELOG.mdfor the current version section (e.g.## v1.4.0(main)). Verify content matchesCHANGELOG_EN.md. If entries are missing from either file, notify the user. - Collect PRs: Get the last release tag timestamp, then filter merged PRs by time:
Sort by PR number ascending.
TAG="$(gh release list --limit 1 --json tagName --jq '.[0].tagName')" SINCE="$(git show -s --format=%cI "$TAG")" gh pr list --state merged --search "is:pr is:merged merged:>$SINCE base:main" --json number,title,author --limit 200 - Compose release body: Follow the template in references/release-template.md. Key rules:
- Write release body in bilingual format: Chinese sections first (from
CHANGELOG.md), then wrap the English sections (fromCHANGELOG_EN.md) in<details><summary>English</summary>...</details>. - Copy changelog sections verbatim from both files. Omit empty sections.
- Wrap PRs list in
<details><summary>PRs</summary>...</details>. - Always include the cache-clearing discussion link.
- End with
**Full Changelog**comparison link.
- Write release body in bilingual format: Chinese sections first (from
- Create release:
- Write body to a temp file (e.g.
/tmp/release-notes.md) - Run:
gh release create vX.Y.Z --title "vX.Y.Z" --notes-file /tmp/release-notes.md --target main
- Write body to a temp file (e.g.
- Verify: Confirm the release URL and ask the user to review.