Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
4c3184e
🩹 [Patch]: Add options to use PR title and body for release naming an…
MariusStorhaug Jan 17, 2026
89a62e1
🩹 [Patch]: Update action references in workflows to use the releaseno…
MariusStorhaug Jan 17, 2026
9ca17a5
🩹 [Patch]: Update settings table formatting in README.md for improved…
MariusStorhaug Jan 17, 2026
72f0486
🩹 [Patch]: Add example section for configuring PR-based release notes…
MariusStorhaug Jan 17, 2026
4d5e0b2
🩹 [Patch]: Update action references in workflows to use specific vers…
MariusStorhaug Jan 17, 2026
2231898
Update workflow comments to reflect actual run conditions
MariusStorhaug Jan 18, 2026
0eaec65
🩹 [Patch]: Update Get-PSModuleSettings action reference to version 1.…
MariusStorhaug Jan 18, 2026
06c378a
🩹 [Patch]: Update Publish-Module action reference to use feature/rele…
MariusStorhaug Jan 18, 2026
29d1790
🩹 [Patch]: Remove PrereleaseLabels input from Publish-Module workflow…
MariusStorhaug Jan 18, 2026
269d0cb
Update to use Publish.Module.ReleaseType and Publish.Module.CleanupPr…
MariusStorhaug Jan 18, 2026
bb2831d
🩹 [Patch]: Remove redundant lines in release notes section of README.md
MariusStorhaug Jan 18, 2026
3d50890
🩹 [Patch]: Update Get-PSModuleSettings action reference to use 'clean…
MariusStorhaug Jan 18, 2026
ea29fbd
🩹 [Patch]: Remove redundant steps for downloading module artifact and…
MariusStorhaug Jan 18, 2026
ca019bc
🩹 [Patch]: Replace CleanupPrereleases input with AutoCleanup in Publi…
MariusStorhaug Jan 18, 2026
71887c8
Keep AutoCleanup name instead of renaming to CleanupPrereleases
MariusStorhaug Jan 18, 2026
0ca3b54
docs: Add abandoned PR cleanup documentation
MariusStorhaug Jan 18, 2026
3dc0504
chore: Update Get-PSModuleSettings to v1
MariusStorhaug Jan 18, 2026
2eb2bb9
chore: Pin Get-PSModuleSettings to SHA for v1.4.0
MariusStorhaug Jan 18, 2026
67acf00
docs: Clarify abandoned PR behavior in Publish-Module workflow
MariusStorhaug Jan 18, 2026
6832c56
Pin all GitHub Actions to commit SHAs with version comments
MariusStorhaug Jan 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
🩹 [Patch]: Add example section for configuring PR-based release notes…
… in README.md
  • Loading branch information
MariusStorhaug committed Jan 17, 2026
commit 72f0486c386bdfedd1fe6b23a676bde6b131065e
69 changes: 69 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,10 @@ Depending on the labels in the pull requests, the [workflow will result in diffe
- [Configuring Linter Validation Rules](#configuring-linter-validation-rules)
- [Additional Configuration](#additional-configuration)
- [Showing Linter Summary on Success](#showing-linter-summary-on-success)
- [Example 4 - Configuring PR-based release notes](#example-4---configuring-pr-based-release-notes)
- [Default configuration (recommended)](#default-configuration-recommended)
- [Version-only release names](#version-only-release-names)
- [Auto-generated notes](#auto-generated-notes)
- [Skipping Individual Framework Tests](#skipping-individual-framework-tests)
- [How to Skip Tests](#how-to-skip-tests)
- [Available Framework Tests](#available-framework-tests)
Expand Down Expand Up @@ -581,6 +585,71 @@ This is useful for reviewing what was checked even when no issues are found.
For a complete list of available environment variables and configuration options, see the
[super-linter environment variables documentation](https://github.com/super-linter/super-linter#environment-variables).

### Example 4 - Configuring PR-based release notes

The workflow can automatically generate GitHub release names and notes from your pull request content.
Three parameters control this behavior:

| Parameter | Description |
|-----------|-------------|
| `UsePRTitleAsReleaseName` | Use the PR title as the GitHub release name instead of the version string |
| `UsePRBodyAsReleaseNotes` | Use the PR body as the release notes content |
| `UsePRTitleAsNotesHeading` | Prepend PR title as H1 heading with PR number link before the body |

These parameters follow specific precedence rules when building release notes:

1. **Heading + Body** (`UsePRTitleAsNotesHeading: true` + `UsePRBodyAsReleaseNotes: true`): Creates formatted notes with the PR title as an H1 heading followed by the PR body. The output format is `# PR Title (#123)\n\nPR body content`. Both the PR title and body must be present.

1. **Body only** (`UsePRBodyAsReleaseNotes: true`): Uses the PR body as-is for release notes. Takes effect when heading option is disabled or PR title is missing.

1. **Fallback**: When neither option is enabled or required PR content is missing, GitHub's auto-generated release notes are used via `--generate-notes`.

#### Default configuration (recommended)

The defaults provide rich release notes with the PR title as a heading:

```yaml
Publish:
Module:
UsePRTitleAsReleaseName: false
UsePRBodyAsReleaseNotes: true
UsePRTitleAsNotesHeading: true
```

This produces release notes like:

```markdown
# 🚀 Add new authentication feature (#42)

This PR adds OAuth2 support with the following changes:
- Added `Connect-OAuth2` function
- Updated documentation
```

#### Version-only release names

If you prefer version numbers as release names but still want PR-based notes:

```yaml
Publish:
Module:
UsePRTitleAsReleaseName: false
UsePRBodyAsReleaseNotes: true
UsePRTitleAsNotesHeading: false
```

#### Auto-generated notes

To use GitHub's auto-generated release notes instead of PR content:

```yaml
Publish:
Module:
UsePRTitleAsReleaseName: false
UsePRBodyAsReleaseNotes: false
UsePRTitleAsNotesHeading: false
```

## Skipping Individual Framework Tests

The PSModule framework tests run automatically as part of the `Test-Module` and `Test-SourceCode` jobs. While you can skip entire test categories using the configuration settings (e.g., `Test.PSModule.Skip`), you can also skip individual framework tests on a per-file basis when needed.
Expand Down
Loading