From 0047a25cae54abfa223a599cabed9c7c283f7d22 Mon Sep 17 00:00:00 2001 From: Danila Poyarkov Date: Thu, 5 Mar 2026 09:56:13 +0300 Subject: [PATCH] Fix effect ordering test, add contributors to release notes Fix renderer-effects test: check drawStrokeWithAlign call site instead of drawNodeStroke helper definition (stroke align refactor moved the method). Add a step to build.yml that resolves git authors to GitHub usernames via the compare API and appends a Contributors section to release notes. --- .github/workflows/build.yml | 28 ++++++++++++++++++++++++++- tests/engine/renderer-effects.test.ts | 2 +- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 71ee0aaa5..9bf7bb68f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -65,6 +65,32 @@ jobs: id: changelog uses: ffurrer2/extract-release-notes@v2 + - name: Add contributors to release notes + if: startsWith(github.ref, 'refs/tags/v') + id: release_body + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + RELEASE_NOTES: ${{ steps.changelog.outputs.release_notes }} + run: | + PREV_TAG=$(git tag -l 'v*' --sort=-version:refname | sed -n '2p') + CONTRIBUTORS="" + if [ -n "$PREV_TAG" ]; then + CONTRIBUTORS=$(gh api "repos/${{ github.repository }}/compare/${PREV_TAG}...${{ github.ref_name }}" \ + --jq '[.commits[].author.login // empty] | unique | map("@" + .) | join(", ")' 2>/dev/null || true) + fi + EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64) + { + echo "body<<$EOF" + printf '%s\n' "$RELEASE_NOTES" + if [ -n "$CONTRIBUTORS" ]; then + echo "" + echo "### Contributors" + echo "" + echo "$CONTRIBUTORS" + fi + echo "$EOF" + } >> "$GITHUB_OUTPUT" + - name: Build Tauri uses: tauri-apps/tauri-action@v0 env: @@ -80,7 +106,7 @@ jobs: args: --target ${{ matrix.target }} tagName: ${{ startsWith(github.ref, 'refs/tags/v') && github.ref_name || '' }} releaseName: ${{ startsWith(github.ref, 'refs/tags/v') && format('OpenPencil {0}', github.ref_name) || '' }} - releaseBody: ${{ steps.changelog.outputs.release_notes }} + releaseBody: ${{ steps.release_body.outputs.body || steps.changelog.outputs.release_notes }} releaseDraft: false publish-npm: diff --git a/tests/engine/renderer-effects.test.ts b/tests/engine/renderer-effects.test.ts index f2aba3729..daaed806e 100644 --- a/tests/engine/renderer-effects.test.ts +++ b/tests/engine/renderer-effects.test.ts @@ -15,7 +15,7 @@ describe('Renderer effect ordering', () => { }) test('inner shadow and blur render after strokes', () => { - const strokeIdx = rendererSource.indexOf('this.drawNodeStroke(canvas, node, rect, hasRadius)') + const strokeIdx = rendererSource.indexOf('this.drawStrokeWithAlign(canvas, node, rect, hasRadius, stroke.align)') const frontIdx = rendererSource.indexOf("renderEffects(canvas, node, rect, hasRadius, 'front')") expect(strokeIdx).toBeGreaterThan(-1) expect(frontIdx).toBeGreaterThan(-1)