mirror of
https://github.com/zhom/donutbrowser.git
synced 2026-04-23 20:36:09 +02:00
d75a367f39
Bumps the github-actions group with 7 updates: | Package | From | To | | --- | --- | --- | | [actions/checkout](https://github.com/actions/checkout) | `4.2.2` | `5.0.0` | | [dtolnay/rust-toolchain](https://github.com/dtolnay/rust-toolchain) | `b3b07ba8b418998c39fb20f53e8b695cdcc8de1b` | `e97e2d8cc328f1b50210efc529dca0028893a2d9` | | [google/osv-scanner-action](https://github.com/google/osv-scanner-action) | `2.1.0` | `2.2.1` | | [ridedott/merge-me-action](https://github.com/ridedott/merge-me-action) | `2.10.124` | `2.10.126` | | [actions/first-interaction](https://github.com/actions/first-interaction) | `2.0.0` | `3.0.0` | | [actions/ai-inference](https://github.com/actions/ai-inference) | `1.2.8` | `2.0.0` | | [crate-ci/typos](https://github.com/crate-ci/typos) | `1.35.3` | `1.35.5` | Updates `actions/checkout` from 4.2.2 to 5.0.0 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/11bd71901bbe5b1630ceea73d27597364c9af683...08c6903cd8c0fde910a37f88322edcfb5dd907a8) Updates `dtolnay/rust-toolchain` from b3b07ba8b418998c39fb20f53e8b695cdcc8de1b to e97e2d8cc328f1b50210efc529dca0028893a2d9 - [Release notes](https://github.com/dtolnay/rust-toolchain/releases) - [Commits](https://github.com/dtolnay/rust-toolchain/compare/b3b07ba8b418998c39fb20f53e8b695cdcc8de1b...e97e2d8cc328f1b50210efc529dca0028893a2d9) Updates `google/osv-scanner-action` from 2.1.0 to 2.2.1 - [Release notes](https://github.com/google/osv-scanner-action/releases) - [Commits](https://github.com/google/osv-scanner-action/compare/b00f71e051ddddc6e46a193c31c8c0bf283bf9e6...456ceb78310755116e0a3738121351006286b797) Updates `ridedott/merge-me-action` from 2.10.124 to 2.10.126 - [Release notes](https://github.com/ridedott/merge-me-action/releases) - [Changelog](https://github.com/ridedott/merge-me-action/blob/master/CHANGELOG.md) - [Commits](https://github.com/ridedott/merge-me-action/compare/f96a67511b4be051e77760230e6a3fb9cb7b1903...ad649157c69da4d34e601ee360de7a74ce4e2090) Updates `actions/first-interaction` from 2.0.0 to 3.0.0 - [Release notes](https://github.com/actions/first-interaction/releases) - [Commits](https://github.com/actions/first-interaction/compare/2d4393e6bc0e2efb2e48fba7e06819c3bf61ffc9...753c925c8d1ac6fede23781875376600628d9b5d) Updates `actions/ai-inference` from 1.2.8 to 2.0.0 - [Release notes](https://github.com/actions/ai-inference/releases) - [Commits](https://github.com/actions/ai-inference/compare/b81b2afb8390ee6839b494a404766bef6493c7d9...f347eae8ebabecb85d17f52960f909b8a4a8dad5) Updates `crate-ci/typos` from 1.35.3 to 1.35.5 - [Release notes](https://github.com/crate-ci/typos/releases) - [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md) - [Commits](https://github.com/crate-ci/typos/compare/52bd719c2c91f9d676e2aa359fc8e0db8925e6d8...a4c3e43aea0a9e9b9e6578d2731ebd9a27e8f6cd) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 5.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: dtolnay/rust-toolchain dependency-version: e97e2d8cc328f1b50210efc529dca0028893a2d9 dependency-type: direct:production dependency-group: github-actions - dependency-name: google/osv-scanner-action dependency-version: 2.2.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions - dependency-name: ridedott/merge-me-action dependency-version: 2.10.126 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: actions/first-interaction dependency-version: 3.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: actions/ai-inference dependency-version: 2.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: crate-ci/typos dependency-version: 1.35.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
119 lines
4.3 KiB
YAML
119 lines
4.3 KiB
YAML
name: Generate Release Notes
|
|
|
|
on:
|
|
release:
|
|
types: [published]
|
|
|
|
permissions:
|
|
contents: write
|
|
models: read
|
|
|
|
jobs:
|
|
generate-release-notes:
|
|
runs-on: ubuntu-latest
|
|
if: startsWith(github.ref, 'refs/tags/v') && !github.event.release.prerelease
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 #v5.0.0
|
|
with:
|
|
fetch-depth: 0 # Fetch full history to compare with previous release
|
|
|
|
- name: Get previous release tag
|
|
id: get-previous-tag
|
|
run: |
|
|
# Get the previous release tag (excluding the current one)
|
|
CURRENT_TAG="${{ github.ref_name }}"
|
|
PREVIOUS_TAG=$(git tag --sort=-version:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | grep -v "$CURRENT_TAG" | head -n 1)
|
|
|
|
if [ -z "$PREVIOUS_TAG" ]; then
|
|
echo "No previous release found, using initial commit"
|
|
PREVIOUS_TAG=$(git rev-list --max-parents=0 HEAD)
|
|
fi
|
|
|
|
echo "current-tag=$CURRENT_TAG" >> $GITHUB_OUTPUT
|
|
echo "previous-tag=$PREVIOUS_TAG" >> $GITHUB_OUTPUT
|
|
echo "Previous release: $PREVIOUS_TAG"
|
|
echo "Current release: $CURRENT_TAG"
|
|
|
|
- name: Get commit messages between releases
|
|
id: get-commits
|
|
run: |
|
|
# Get commit messages between previous and current release
|
|
PREVIOUS_TAG="${{ steps.get-previous-tag.outputs.previous-tag }}"
|
|
CURRENT_TAG="${{ steps.get-previous-tag.outputs.current-tag }}"
|
|
|
|
# Get commit log with detailed format
|
|
COMMIT_LOG=$(git log --pretty=format:"- %s (%h by %an)" $PREVIOUS_TAG..$CURRENT_TAG --no-merges)
|
|
|
|
# Get changed files summary
|
|
CHANGED_FILES=$(git diff --name-status $PREVIOUS_TAG..$CURRENT_TAG | head -20)
|
|
|
|
# Save to files for AI processing
|
|
echo "$COMMIT_LOG" > commits.txt
|
|
echo "$CHANGED_FILES" > changes.txt
|
|
|
|
echo "commits-file=commits.txt" >> $GITHUB_OUTPUT
|
|
echo "changes-file=changes.txt" >> $GITHUB_OUTPUT
|
|
|
|
- name: Generate release notes with AI
|
|
id: generate-notes
|
|
uses: actions/ai-inference@f347eae8ebabecb85d17f52960f909b8a4a8dad5 # v2.0.0
|
|
with:
|
|
prompt-file: commits.txt
|
|
system-prompt: |
|
|
You are an expert technical writer tasked with generating comprehensive release notes for Donut Browser, a powerful anti-detect browser.
|
|
|
|
Analyze the provided commit messages and generate well-structured release notes following this format:
|
|
|
|
## What's New in ${{ steps.get-previous-tag.outputs.current-tag }}
|
|
|
|
[Brief 1-2 sentence overview of the release]
|
|
|
|
### ✨ New Features
|
|
[List new features with brief descriptions]
|
|
|
|
### 🐛 Bug Fixes
|
|
[List bug fixes]
|
|
|
|
### 🔧 Improvements
|
|
[List improvements and enhancements]
|
|
|
|
### 📚 Documentation
|
|
[List documentation updates if any]
|
|
|
|
### 🔄 Dependencies
|
|
[List dependency updates if any]
|
|
|
|
### 🛠️ Developer Experience
|
|
[List development-related changes if any]
|
|
|
|
Guidelines:
|
|
- Use clear, user-friendly language
|
|
- Group related commits logically
|
|
- Omit minor commits like formatting, typos unless significant
|
|
- Focus on user-facing changes
|
|
- Use emojis sparingly and consistently
|
|
- Keep descriptions concise but informative
|
|
- If commits are unclear, infer the purpose from the context
|
|
|
|
The application is a desktop app built with Tauri + Next.js that helps users manage multiple browser profiles with proxy support.
|
|
model: gpt-4o
|
|
|
|
- name: Update release with generated notes
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
run: |
|
|
# Get the generated release notes
|
|
RELEASE_NOTES="${{ steps.generate-notes.outputs.response }}"
|
|
|
|
# Update the release with the generated notes
|
|
gh api --method PATCH /repos/${{ github.repository }}/releases/${{ github.event.release.id }} \
|
|
--field body="$RELEASE_NOTES"
|
|
|
|
echo "✅ Release notes updated successfully!"
|
|
|
|
- name: Cleanup
|
|
run: |
|
|
rm -f commits.txt changes.txt
|