Repositories from MiniScaffold versions before 0.23.0 keep the release history in RELEASE_NOTES.md.
Later versions keep the release history in CHANGELOG.md.
The tools/releaseToChangelog.fsx script converts RELEASE_NOTES.md to CHANGELOG.md.
The result uses the Keep a Changelog format.
CHANGELOG.md file is in the same directory as RELEASE_NOTES.md, move or delete that file.The script does not replace an existing CHANGELOG.md file.
On macOS or Linux, run this command from the repository root:
|
On Windows, run this command from the repository root:
|
MyGithubUsername and MyCoolNewLib in the next command with your GitHub owner and repository name.The script writes CHANGELOG.md in the directory of RELEASE_NOTES.md.
The script sorts the versions from newest to oldest.
The first run downloads the FAKE packages from NuGet.
If an argument is missing, the script shows the usage and stops.
If the script cannot find a version in RELEASE_NOTES.md, the script stops and does not write CHANGELOG.md.
The script puts each note in a section. The note title selects the section:
Note title in |
Section in |
|---|---|
|
|
|
|
|
|
A different title, such as |
A section with that title, such as |
No title |
|
The script puts an indented note at the same level as the note above it.
CHANGELOG.md.The link references use Git tags such as v0.2.0.
The MiniScaffold release target creates tags in this format.
If your Git tags do not start with v, change the link references.
releaseToChangelog.fsx.RELEASE_NOTES.md.RELEASE_NOTES.md, change the build script to read CHANGELOG.md.build/Changelog.fs in a new generated repository as an example.CHANGELOG.md and the other changes.For the next release, add the release notes under ## [Unreleased] in CHANGELOG.md.
For the release procedure, use the NuGet release guide.