diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9ce8433..c38bc9a 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -22,6 +22,11 @@ on: - main paths: - 'plugins/**/*.py' + - 'plugins/**/README.md' + - 'plugins/**/README_CN.md' + - 'plugins/**/v*.md' + - 'plugins/**/v*_CN.md' + - 'docs/plugins/**/*.md' tags: - 'v*' @@ -59,6 +64,7 @@ jobs: has_changes: ${{ steps.detect.outputs.has_changes }} changed_plugins: ${{ steps.detect.outputs.changed_plugins }} release_notes: ${{ steps.detect.outputs.release_notes }} + has_doc_changes: ${{ steps.detect.outputs.has_doc_changes }} steps: - name: Checkout repository @@ -95,17 +101,19 @@ jobs: python scripts/extract_plugin_versions.py --json --output current_versions.json # Get previous plugin versions by checking out old plugins - if git worktree add /tmp/old_repo ${COMPARE_REF} 2>/dev/null; then - if [ -d /tmp/old_repo/plugins ]; then - python scripts/extract_plugin_versions.py --plugins-dir /tmp/old_repo/plugins --json --output old_versions.json + OLD_WORKTREE=$(mktemp -d) + if git worktree add "$OLD_WORKTREE" ${COMPARE_REF} 2>/dev/null; then + if [ -d "$OLD_WORKTREE/plugins" ]; then + python scripts/extract_plugin_versions.py --plugins-dir "$OLD_WORKTREE/plugins" --json --output old_versions.json else echo "[]" > old_versions.json fi - git worktree remove /tmp/old_repo 2>/dev/null || true + git worktree remove "$OLD_WORKTREE" 2>/dev/null || true else echo "Failed to create worktree, using empty version list" echo "[]" > old_versions.json fi + rm -rf "$OLD_WORKTREE" 2>/dev/null || true # Compare versions and generate release notes python scripts/extract_plugin_versions.py --compare old_versions.json --ignore-removed --output changes.md @@ -113,10 +121,28 @@ jobs: echo "=== Version Changes ===" cat changes.md + + # Detect documentation/release-note changes that should be reflected in release notes + git diff --name-only "$COMPARE_REF"..HEAD -- \ + 'plugins/**/README.md' \ + 'plugins/**/README_CN.md' \ + 'plugins/**/v*.md' \ + 'plugins/**/v*_CN.md' \ + 'docs/plugins/**/*.md' > changed_docs.txt || true + + if [ -s changed_docs.txt ]; then + echo "has_doc_changes=true" >> $GITHUB_OUTPUT + else + echo "has_doc_changes=false" >> $GITHUB_OUTPUT + fi # Check if there are any changes if grep -q "No changes detected" changes.md; then - echo "has_changes=false" >> $GITHUB_OUTPUT + if [ -s changed_docs.txt ]; then + echo "has_changes=true" >> $GITHUB_OUTPUT + else + echo "has_changes=false" >> $GITHUB_OUTPUT + fi echo "changed_plugins=" >> $GITHUB_OUTPUT else echo "has_changes=true" >> $GITHUB_OUTPUT @@ -146,6 +172,12 @@ jobs: { echo 'release_notes<> $GITHUB_OUTPUT @@ -214,7 +246,6 @@ jobs: id: plugins run: | python scripts/extract_plugin_versions.py --json --output plugin_versions.json - python scripts/extract_plugin_versions.py --json --output plugin_versions.json - name: Collect plugin files for release id: collect_files @@ -389,6 +420,7 @@ jobs: cat release_notes.md - name: Create Git Tag + if: ${{ !startsWith(github.ref, 'refs/tags/v') }} run: | VERSION="${{ steps.version.outputs.version }}" diff --git a/plugins/pipes/github-copilot-sdk/v0.9.1.md b/plugins/pipes/github-copilot-sdk/v0.9.1.md index 47a784f..efe61b1 100644 --- a/plugins/pipes/github-copilot-sdk/v0.9.1.md +++ b/plugins/pipes/github-copilot-sdk/v0.9.1.md @@ -1,4 +1,4 @@ -# v0.9.1 Release Notes +# GitHub Copilot SDK Pipe v0.9.1 Release Notes ## Overview This release upgrades the GitHub Copilot SDK Pipe into a more autonomous and ecosystem-aware Agent integration for OpenWebUI, with stronger web-search behavior, clearer terminology, and improved tool-filtering reliability. diff --git a/plugins/pipes/github-copilot-sdk/v0.9.1_CN.md b/plugins/pipes/github-copilot-sdk/v0.9.1_CN.md index d72df87..b29c6a2 100644 --- a/plugins/pipes/github-copilot-sdk/v0.9.1_CN.md +++ b/plugins/pipes/github-copilot-sdk/v0.9.1_CN.md @@ -1,4 +1,4 @@ -# v0.9.1 版本发布说明 +# GitHub Copilot SDK Pipe v0.9.1 发布说明 ## 概览 本次版本将 GitHub Copilot SDK Pipe 升级为更自主、与 OpenWebUI 生态深度融合的 Agent 集成方案,重点强化了网页搜索行为、术语一致性与工具过滤稳定性。