Changelog Module
Contains helpers which allow to parse Change log text files. These files have to be in a format as described on keepachangelog
Format
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
## [0.1.0] - 2020-03-17
First release
### Added
- This release already has lots of features
[0.1.0]: https://github.com/user/MyCoolNewLib.git/releases/tag/v0.1.0
Example
let changelogFile = "CHANGELOG.md"
let newVersion = "1.0.0"
Target.create "AssemblyInfo" (fun _ ->
let changelog = changeLogFile |> Changelog.load
CreateFSharpAssemblyInfo "src/Common/AssemblyInfo.fs"
[ Attribute.Title project
Attribute.Product project
Attribute.Description summary
Attribute.Version changelog.LatestEntry.AssemblyVersion
Attribute.FileVersion changelog.LatestEntry.AssemblyVersion]
)
Target.create "Promote Unreleased to new version" (fun _ ->
let newChangelog =
changelogFile
|> ChangeLog.load
|> ChangeLog.promoteUnreleased newVersion
|> ChangeLog.save changelogFile
)
Types
Type | Description |
Functions and values
Function or value | Description |
Full Usage:
Changelog.create description unreleased entries
Parameters:
string option
-
the descriptive text for changelog
unreleased : Unreleased option
-
the unreleased list of changelog entries
entries : ChangelogEntry list
-
the list of changelog entries
Returns: Changelog
|
|
Full Usage:
Changelog.createWithCustomHeader header description unreleased entries
Parameters:
string
-
the custom header value for changelog
description : string option
-
the descriptive text for changelog
unreleased : Unreleased option
-
the unreleased list of changelog entries
entries : ChangelogEntry list
-
the list of changelog entries
Returns: Changelog
|
|
Full Usage:
Changelog.fromEntries entries
Parameters:
ChangelogEntry list
-
the list of changelog entries
Returns: Changelog
|
Create a changelog with given entries and default values for other data including header and description.
|
Full Usage:
Changelog.load filename
Parameters:
string
-
Changelog text file name
Returns: Changelog
The loaded changelog (or throws an exception, if the changelog could not be parsed)
|
|
Full Usage:
Changelog.parse data
Parameters:
seq<string>
-
change log text
Returns: Changelog
|
|
|
|
|
|
Full Usage:
Changelog.save filename changelog
Parameters:
string
-
Changelog text file name
changelog : Changelog
-
the changelog data
|
|