Fsharp: Where should F# and FSharp.Core release notes live?

Created on 10 Aug 2018  路  16Comments  路  Source: dotnet/fsharp

Today, the following is done:

  • VS release notes have F# language, FSharp.Core, and tools changes listed
  • .NET CLI release notes make note of notable F# changes, but no details
  • fsharp/fslang-design has all RFCs for a given language or core library change grouped so as to be a canonical source of information about changes

Clearly, there isn't one single product or place that "owns" F#, and F# changes are cross-cutting across tools. To me, this implies that we could have a more centralized place that records F# release notes independently, then link to that from every place where F# is shipped. For example, when F# vNext is released, release notes for Ionide and Rider could link to this place once they add support for that language version.

If this were to be done, where would the release notes live? Some options:

  • This repo
  • fsharp/fsharp
  • fsharp/fslang-design
  • New repository (fsharp/releasenotes?)
  • Dedicated website, such as the fsharp.org site
  • Redundancy - list all language and core library changes in the VS release notes, .NET CLI release notes, Ionide release notes, and Rider release notes

Thoughts/suggestions?

Most helpful comment

One of those repos (don't care which) and mirrored to fsharp.org (e.g. fsharp.org/release/###).

All 16 comments

One of those repos (don't care which) and mirrored to fsharp.org (e.g. fsharp.org/release/###).

This repo + mirrored to fsharp.org

Separate F# from the VS tooling and make fsharp/fsharp the main repo for F#/F# Core and keep the release notes there ;)
Also mirror to fsharp.org

The most common route for me to search for release notes of any F# project is to start at the library's Nuget.org page where I can view the Version History. From there I click the Project Site link.

For most F# OSS projects this takes me to the Github page, sometimes to the github.io page. Frequently the github.io page is linked from the top description of the Github page and the documentation is in the "standard" F# docs format. I now know where the release notes link is.

SUMMARY: I would be happy with any system where I can start at Nuget.org and find the release notes with the least surprises, and least scrolling and clicking.

Release notes should always be in reverse chronological order.

@jackfoxy that's something I thought of as well. However, FSharp.Core releases aren't in lockstep with the compiler - so there should be a page that unifies both of them i.e. compiler / language changes as well as FSharp.Core changes.

Yep, it's not straightforward:

  • Language version revs slowly
  • FSharp.Core package major/minor version revs as the language does
  • Fharp.Core package patch version revs as-needed
  • Compiler version revs whenever we insert a new compiler to VS/.NET SDK
  • VS revs at a particular cadence
  • .NET SDK revs at a particular cadence

@cartermp a common docs page linked from "The Visual F# compiler and tools".

Going to start with updating the file here, represented by #5609

We'll link out from VS release notes from here (though there may be some words representing a subset in there as well, since the release notes for VS are a bit of a marketing doc).

Closing this out as the file is now more up to date: https://github.com/Microsoft/visualfsharp/blob/master/release-notes.md

In the future, you can expect more things there.

Where can I find the changes in FSharp.Core 4.5.3?

Thanks for the tip, but there's no API difference between 4.5.2 and 4.5.3: https://www.fuget.org/packages/FSharp.Core/4.5.3/lib/netstandard1.6/diff/4.5.2/

In any case, I'm interested in more than the API diff. I'd like to know bug fixes etc. in order to know for which of our systems it's worth upgrading, considering the hassle and risk of potential problems inherent to any such change.

...case in point regarding risk: I get weird SQL errors with FSharp.Data.SqlClient after upgrading FSharp.Core from 4.5.2 to 4.5.3. Not saying it's FSharp.Core's fault, but it works with 4.5.2 and fails with 4.5.3.

There is no difference in 4.5.2 and 4.5.3, unless @KevinRansom has some arcane knowledge. I'm not even sure why a new version would have been published.

4.5.3 matches the FSharp.Core to be shipped in DEV 16 - preview 1.

Where are FSharp.Core 4.7 release notes? I can't find any 4.7 folder on fslang-design.

Was this page helpful?
0 / 5 - 0 ratings