File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -89,11 +89,21 @@ jobs:
8989 $changelog = Get-Content -Path $filePath
9090
9191 $headingPattern = "^## \[\d+\.\d+\.\d+"
92- $headingStartLines = $changelog | Select-String -Pattern $headingPattern | Select-Object -ExpandProperty LineNumber
92+ $headingStartLines = @($changelog | Select-String -Pattern $headingPattern | Select-Object -ExpandProperty LineNumber)
93+
94+ if ($headingStartLines.Count -eq 0) {
95+ throw "No release heading matching '$headingPattern' found in $filePath"
96+ }
97+
9398 $startLine = $headingStartLines[0]
94- $endLine = $headingStartLines[1] - 1
95-
96- $clContent = $changelog | Select-Object -Skip ($startLine-1) -First ($endLine - $startLine) | Out-String
99+ if ($headingStartLines.Count -ge 2) {
100+ $endLine = $headingStartLines[1] - 1
101+ } else {
102+ # Only one release heading present; take through end of file.
103+ $endLine = $changelog.Count
104+ }
105+
106+ $clContent = $changelog | Select-Object -Skip ($startLine-1) -First ($endLine - $startLine + 1) | Out-String
97107
98108 $StringBuilder = [System.Text.StringBuilder]::new($clContent, $clContent.Length + 2kb)
99109 $StringBuilder.AppendLine().AppendLine() > $null
You can’t perform that action at this time.
0 commit comments