absaoss/Release notes scraper
Automatically generates release notes for a given release tag, categorized into chapters based on labels.
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Activelast commit Jul 5, 2026
- License
- Apache 2.0
Pinned Snippet
uses: absaoss/generate-release-notes@26eca65fc504c088a7afd8b08545a738ad8b446b # v1.3.2tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| tag-name | The tag name of the release to generate notes for. | yes | — |
| chapters | YAML array of chapter definitions. Required keys: `title`, `label` or `labels`. Optional keys: `hidden` (bool), `order` (int), `catch-open-hierarchy` (bool). `catch-open-hierarchy: true` — intercepts open hierarchy parents before label routing; requires `hierarchy: true`. Chapters with `catch-open-hierarchy` do not require `label`/`labels` (optional interception filter). At most one `catch-open-hierarchy` chapter allowed; duplicates are warned and ignored. | no | "" |
| super-chapters | YAML array of super-chapter definitions that group regular chapters by label. Required keys: `title`, `label` or `labels`. Records matching a super-chapter label are rendered inside that super-chapter. A record can appear in multiple super-chapters. | no | "" |
| duplicity-scope | Allow duplicity of issue lines in chapters. Scopes: custom, service, both, none. | no | both |
| from-tag-name | The tag name of the previous release to use as a start reference point for the current release notes. When provided, activates compare mode. Both this tag and 'tag-name' must exist as git tags. | no | "" |
| hierarchy | Use hierarchy of issues and pull requests. | no | false |
| duplicity-icon | Icon to be used for duplicity warning. Icon is placed before the record line. | no | 🔔 |
| open-hierarchy-sub-issue-icon | Icon prepended to open children under a closed hierarchy parent. | no | 🟡 |
| published-at | Use `published-at` timestamp instead of `created-at` as the reference point of previous Release. | no | false |
| skip-release-notes-labels | List labels used for detection if issues or pull requests are ignored in the Release Notes generation process. | no | skip-release-notes |
| warnings | Print service chapters if true. | no | true |
| hidden-service-chapters | List of service chapter titles to hide from output (comma or newline separated). Title matching is exact and case-sensitive. Example: "Direct Commits ⚠️, Others - No Topic �����️" Available service chapters: - "Closed Issues without Pull Request ⚠️" - "Closed Issues without User Defined Labels ���️" - "Merged PRs without Issue and User Defined Labels ���️" - "Closed PRs without Issue and User Defined Labels ⚠️" - "Merged PRs Linked to 'Not Closed' Issue ⚠️" - "Direct Commits ⚠️" - "Others - No Topic ⚠️" | no | "" |
| service-chapter-order | Custom display order for service chapters (comma or newline separated). Title matching is exact and case-sensitive. Listed chapters are rendered first in the given order; unlisted chapters are appended afterward in the default order. If omitted, the default order is used. Available service chapter titles: - "Closed Issues without User Defined Labels ⚠️" - "Closed Issues without Pull Request ⚠️" - "Merged PRs without Issue and User Defined Labels ⚠️" - "Closed PRs without Issue and User Defined Labels ⚠️" - "Merged PRs Linked to 'Not Closed' Issue ⚠️" - "Direct commits ⚠️" - "Others - No Topic ⚠️" | no | "" |
| service-chapter-exclude | YAML mapping of service chapter title to label-exclusion groups. Each group is a list of labels (AND logic within a group). Multiple groups per chapter are evaluated with OR logic. Use the reserved key "*" to define global rules that apply to all service chapters. Example: service-chapter-exclude: | "*": - [scope:security, type:tech-debt] Closed Issues without Pull Request ⚠️: - [scope:security, type:false-positive] | no | "" |
| print-empty-chapters | Print chapters even if they are empty. | no | true |
| verbose | Print verbose logs. | no | false |
| release-notes-title | The title of the release notes section in the PR body. Value supports regex. | no | [Rr]elease [Nn]otes: |
| coderabbit-support-active | Enable CodeRabbit support. If true, the action will use CodeRabbit to generate release notes. | no | false |
| coderabbit-release-notes-title | The title of the CodeRabbit summary in the PR body. Value supports regex. | no | Summary by CodeRabbit |
| coderabbit-summary-ignore-groups | List of "group names" to be ignored by release notes detection logic. | no | "" |
| row-format-hierarchy-issue | Format of the hierarchy issue in the release notes. Available placeholders: {type}, {number}, {title}, {author}, {assignees}, {developers}. Placeholders are case-insensitive. | no | {type}: _{title}_ {number} {progress} |
| row-format-issue | Format of the issue row in the release notes. Available placeholders: {type}, {number}, {title}, {author}, {assignees}, {developers}, {pull-requests}. Placeholders are case-insensitive. | no | {type}: {number} _{title}_ developed by {developers} in {pull-requests} |
| row-format-pr | Format of the pr row in the release notes. Available placeholders: {number}, {title}, {developers}. Placeholders are case-insensitive. | no | {number} _{title}_ developed by {developers} |
| row-format-link-pr | Add prefix "PR:" before link to PR when not linked an Issue. | no | true |
Outputs
| name | description |
|---|---|
| release-notes | Generated release notes. |