(options: Options)
| 98 | } |
| 99 | |
| 100 | function createDraft(options: Options): DraftOutput { |
| 101 | const versionTag = `v${options.version}`; |
| 102 | const to = options.to ?? (tagExists(versionTag) ? versionTag : "HEAD"); |
| 103 | const from = options.from ?? resolvePreviousTag(versionTag, to); |
| 104 | const commits = getCommits(from, to).filter((commit) => !shouldSkipCommit(commit)); |
| 105 | const parsedCommits = commits.map(parseCommit); |
| 106 | |
| 107 | const releaseNotes = renderReleaseNotes(options.version, options.date, from, parsedCommits); |
| 108 | const docsUpdate = renderDocsUpdate(options.version, options.date, from, parsedCommits); |
| 109 | |
| 110 | return { releaseNotes, docsUpdate }; |
| 111 | } |
| 112 | |
| 113 | function outputDraft(options: Options, draft: DraftOutput) { |
| 114 | if (!options.write) { |
no test coverage detected