Skip to content

ci: remove app contributors#3748

Merged
mrlubos merged 1 commit into
mainfrom
ci/fix-release-notes-contributors
Apr 13, 2026
Merged

ci: remove app contributors#3748
mrlubos merged 1 commit into
mainfrom
ci/fix-release-notes-contributors

Conversation

@mrlubos

@mrlubos mrlubos commented Apr 13, 2026

Copy link
Copy Markdown
Member

No description provided.

@mrlubos mrlubos marked this pull request as ready for review April 13, 2026 08:30
@bolt-new-by-stackblitz

Copy link
Copy Markdown

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

@changeset-bot

changeset-bot Bot commented Apr 13, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 0028041

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel

vercel Bot commented Apr 13, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
hey-api-docs Ready Ready Preview, Comment Apr 13, 2026 8:31am

Request Review

@dosubot dosubot Bot added size:L This PR changes 100-499 lines, ignoring generated files. internal ⚙️ Internal development work. labels Apr 13, 2026
@codecov

codecov Bot commented Apr 13, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 40.04%. Comparing base (6e20279) to head (0028041).
⚠️ Report is 4 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3748   +/-   ##
=======================================
  Coverage   40.04%   40.04%           
=======================================
  Files         520      520           
  Lines       19243    19243           
  Branches     5726     5726           
=======================================
  Hits         7705     7705           
  Misses       9342     9342           
  Partials     2196     2196           
Flag Coverage Δ
unittests 40.04% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@pullfrog

pullfrog Bot commented Apr 13, 2026

Copy link
Copy Markdown
Contributor

TL;DR — Fixes release notes generation by filtering out GitHub App contributors (app/ prefixed usernames), adding a fallback message when no contributors are found, resolving the release commit SHA for GitHub Releases, and overhauling date-based snapshot tag resolution to correctly extract per-package versions.

Key changes

  • Filter app/ contributors from release notes — Excludes GitHub App accounts (e.g. app/github-actions) from the contributors list so only real users appear.
  • Add fallback message for empty contributors — When no contributors exist for a release, shows a "Be the first to contribute" call-to-action instead of a missing section.
  • Resolve release commit for target_commitish — Looks up the actual ci: release commit SHA so the GitHub Release points at the correct commit rather than the workflow's github.sha.
  • Overhaul snapshot/date-tag resolution in tags.ts — Introduces multi-strategy lookup (commit changelog inspection → same-day release commit → ancestry-based → root CHANGELOG.md parsing) to recover per-package versions from date-based tags that lack embedded version info.
  • Add CHANGELOG.md entry for the 2026-04-13 release — Documents the latest release across 7 packages with breaking changes, plugin updates, and new features.

Summary | 5 files | 1 commit | base: mainci/fix-release-notes-contributors


Filtering GitHub App contributors

Before: GitHub App accounts like app/github-actions could appear in the contributors list.
After: Any username starting with app/ is excluded alongside bots and maintainers.

A single guard (!github.startsWith('app/')) is added to the contributor filter chain in getContributorsFromPullRequests.

scripts/changelog/contributors.ts


Empty contributors fallback and section restructuring

Before: The "Contributors" heading was only emitted when at least one contributor existed — an empty release had no contributors section at all.
After: The heading always appears. When no contributors are found, a link to open issues invites new contributions.

The ## Contributors heading is moved outside the if (contributors.length) block, and an else branch adds the call-to-action.

scripts/changelog/release-notes.ts


Release commit resolution in the workflow

Before: softprops/action-gh-release used the implicit github.sha as the target commit for the release.
After: A new "Resolve Release Commit" step greps git log for the ci: release commit and passes its SHA via target_commitish, falling back to github.sha if not found.

This ensures the GitHub Release tag points at the actual release commit rather than whatever commit triggered the workflow.

.github/workflows/release.yml


Overhauled date-based snapshot tag resolution

Before: getGitTags only handled <package>@<version> and v<version> tag formats — date-based tags (e.g. 2026-04-13) were ignored.
After: A new getSnapshotReleaseTags function implements a four-tier fallback strategy to extract per-package versions from date tags.

The resolution cascade:

Priority Strategy Source
1 Inspect the tag's own commit git show on per-package CHANGELOG.md files
2 Find a same-day ci: release commit git log --grep --since/until
3 Walk ancestry for nearest release commit git rev-list
4 Parse root CHANGELOG.md Regex on date/package headings

Results are deduplicated via a Map keyed by date:packageName:version, preferring the most recent timestamp.

Why are regex patterns hoisted to module scope? The six patterns (`packageTagPattern`, `legacyTagPattern`, `releaseDatePattern`, `changelogDateHeadingPattern`, `changelogPackageHeadingPattern`, `changelogVersionHeadingPattern`) are compiled once and reused across iterations rather than being recreated per tag — a minor performance improvement when processing many tags.

scripts/changelog/tags.ts

Pullfrog  | View workflow run | Triggered by Pullfrog𝕏

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed — no issues found.

Task list (3/3 completed)
  • Read the PR diff and identify major areas of change
  • Review each changed file in detail
  • Self-critique and submit review

Pullfrog  | View workflow run𝕏

@mrlubos mrlubos merged commit b31b1d7 into main Apr 13, 2026
11 checks passed
@mrlubos mrlubos deleted the ci/fix-release-notes-contributors branch April 13, 2026 08:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

internal ⚙️ Internal development work. size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant