fsprojects / FAKE

FAKE - F# Make

Home Page:https://fake.build

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Release Notes - Conventional Changelog compatibility

akhansari opened this issue · comments

Description

Release Notes module is not compatible with Conventional Changelog.

This is an enhancement.

Repro steps

ReleaseNotes.load on a file like this.

Expected behavior

Be able to parse Conventional changelogs and maybe ignore headers without version.

Actual behavior

System.Exception

Known workarounds

x

Related information

  • FAKE v5.22

Welcome to the FAKE community! Thank you so much for creating your first issue and therefore improving the project!

There's a Changelog module as well that you may prefer to use instead of the ReleaseNotes module. I've switched many of my repos over to it (or to Ionide.KeepAChangelog directly) as a result.

Oh very nice. I didn't search well.
Is there any way to detect the format in order to know which one should be used between Changelog or ReleaseNotes (instead of doing a try/catch)?

I mean sure, yes, but I would instead just know that if I'm using a CHANGELOG.md then I need to use the Changelog module. You have to do an explicit migration right now from the FAKE-specific ReleaseNotes format to the more general Changelog format, so I don't really see a point to trying to automatically detect the format.

OK it makes sense. thank you Chet 🙏🏻

If you want to migrate an existing Release Notes file, here's a one-time conversion function I made for FSAutoComplete when we moved: fsharp/FsAutoComplete@af81187 (#881)

It might make sense for FAKE to have this, now that I think of it.