v2.0.0 — modernized runtime, configurable labels, reminder comments
First major release in 5+ years. Clean-slate rewrite on a supported runtime with several frequently-requested features.
⚠️ Breaking: the action now runs on Node 20 and the main entry moved todist/index.js. Pin@v2or@v2.0.0—@1.2.0continues to work but will not receive further updates.
Highlights
- Node 20 runtime (up from the deprecated Node 12).
- Configurable labels via the new
upcoming-labelsinput — closes #70. - Optional reminder comments via
comment-on-overdue/comment-on-upcoming, with{{daysUntil}},{{dueDate}},{{issueNumber}}templating and duplicate-comment suppression — closes #55. - Idempotent label reconciliation — stale labels are removed when the due date changes or the issue becomes overdue, fixing #75.
dry-runinput for easy first-time setup.- Outputs:
issues-processedandissues-changed.
Under the hood
- Bundled with
@vercel/ncc;node_modules/is no longer committed. npm auditclean (undici pinned viaoverrides).- Live-API tests replaced with 29 mocked unit tests; CI verifies
dist/stays in sync. - Dropped unused
@slack/client; replacedmomentwith nativeDate.
Upgrade
# before
uses: alexleventer/github-issue-due-dates-action@1.2.0
with:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
# after
uses: alexleventer/github-issue-due-dates-action@v2
with:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} # PAT no longer requiredAdd explicit permissions if your repo's default GITHUB_TOKEN is read-only:
permissions:
issues: write
contents: readSee the README for the full input/output reference and examples.