From 1f7a89b0f150de8261a65cbabcd872ec5bc126ca Mon Sep 17 00:00:00 2001 From: nojaf Date: Thu, 14 Dec 2023 13:26:29 +0100 Subject: [PATCH 1/5] Add additional release note entries. --- docs/release-notes/.FSharp.Compiler.Service/8.0.200.md | 6 ++++++ docs/release-notes/.Language/preview.md | 7 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/.FSharp.Compiler.Service/8.0.200.md b/docs/release-notes/.FSharp.Compiler.Service/8.0.200.md index f77a4a7613f..b0922d2586e 100644 --- a/docs/release-notes/.FSharp.Compiler.Service/8.0.200.md +++ b/docs/release-notes/.FSharp.Compiler.Service/8.0.200.md @@ -2,7 +2,13 @@ * Miscellaneous fixes to parentheses analysis. ([PR #16262](https://github.com/dotnet/fsharp/pull/16262), [PR #16391](https://github.com/dotnet/fsharp/pull/16391), [PR #16370](https://github.com/dotnet/fsharp/pull/16370), [PR #16395](https://github.com/dotnet/fsharp/pull/16395)) * Correctly handle assembly imports with public key token of 0 length. ([Issue #16359](https://github.com/dotnet/fsharp/issues/16359), [PR #16363](https://github.com/dotnet/fsharp/pull/16363)) +* Range of [SynField](../reference/fsharp-compiler-syntax-synfield.html) ([PR #16357](https://github.com/dotnet/fsharp/pull/16357)) ### Added * Raise a new error when interfaces with auto properties are implemented on constructor-less types. ([PR #16352](https://github.com/dotnet/fsharp/pull/16352)) * Allow usage of `[]` with older `FSharp.Core` package versions. ([PR #16373](https://github.com/dotnet/fsharp/pull/16373)) +* Parser recovers on unfinished `as` patterns. ([PR #16404](https://github.com/dotnet/fsharp/pull/16404)) +* Allow type-checking of unfinished object expressions. ([PR #16413](https://github.com/dotnet/fsharp/pull/16413)) +* Parser recovers on unfinished enum case declarations. ([PR #16401](https://github.com/dotnet/fsharp/pull/16401)) +* Parser recovers on unfinished record declarations. ([PR #16357](https://github.com/dotnet/fsharp/pull/16357)) +* `MutableKeyword` to [SynFieldTrivia](../reference/fsharp-compiler-syntaxtrivia-synfieldtrivia.html) ([PR #16357](https://github.com/dotnet/fsharp/pull/16357)) diff --git a/docs/release-notes/.Language/preview.md b/docs/release-notes/.Language/preview.md index 177436a2b43..8b4ce826714 100644 --- a/docs/release-notes/.Language/preview.md +++ b/docs/release-notes/.Language/preview.md @@ -1,4 +1,9 @@ ### Added * Better generic unmanaged structs handling. ([Language suggestion #692](https://github.com/fsharp/fslang-suggestions/issues/692), [PR #12154](https://github.com/dotnet/fsharp/pull/12154)) -* Bidirectional F#/C# interop for 'unmanaged' constraint. ([PR #12154](https://github.com/dotnet/fsharp/pull/12154)) \ No newline at end of file +* Bidirectional F#/C# interop for 'unmanaged' constraint. ([PR #12154](https://github.com/dotnet/fsharp/pull/12154)) +* Make `.Is*` discriminated union properties visible. ([Language suggestion #222](https://github.com/fsharp/fslang-suggestions/issues/222), [PR #16341](https://github.com/dotnet/fsharp/pull/16341)) + +### Fixed + +* Allow extension methods without type attribute works for types from imported assemblies. ([PR #16368](https://github.com/dotnet/fsharp/pull/16368)) From bf59331bb83bb4971cff42a53eea001d7e4eb775 Mon Sep 17 00:00:00 2001 From: nojaf Date: Thu, 14 Dec 2023 13:26:44 +0100 Subject: [PATCH 2/5] Add a page on how to easily run the documentation locally. --- docs/running-documentation-locally.md | 45 +++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 docs/running-documentation-locally.md diff --git a/docs/running-documentation-locally.md b/docs/running-documentation-locally.md new file mode 100644 index 00000000000..a5fd83f75d6 --- /dev/null +++ b/docs/running-documentation-locally.md @@ -0,0 +1,45 @@ +--- +title: Running the documentation locally +category: Compiler Internals +categoryindex: 200 +index: 999 +--- +# Running the documentation locally + +The source of this documentation website is hosted on https://github.com/fsharp/fsharp-compiler-docs. + +## Setup + +`fsharp/fsharp-compiler-docs` will clone the `dotnet/fsharp` repository first to generate the documentation. +You can however, easily run the documentation locally and modify the `docs` from `dotnet/fsharp`. + +* Clone `fsharp/fsharp-compiler-docs` at the same level as your local `dotnet/fsharp` repository: + + + git clone https://github.com/fsharp/fsharp-compiler-docs.git + + +* Restore the `FSharp.Compiler.Service` project in `fsharp-compiler-docs`: + + + cd fsharp-compiler-docs/FSharp.Compiler.Service + dotnet restore + + +* Restore the local tools in `fsharp-compiler-docs`: + + + cd .. + dotnet tool restore + + +* Run the documentation tool using your `dotnet/fsharp` fork as input. + + + dotnet fsdocs watch --eval --sourcefolder ../fsharp/ --input ../fsharp/docs/ + + +## Release notes caveat + +The release notes pages from `docs/release-notes` are composed from the MarkDown files in subfolders. +Changing any of these files, won't regenerate the served webpage. Only the changes to the `.fsx` will trigger the tool. This is a known limitation. From d255d485a0c7c7b7a4cb31149f73678f1efa60cc Mon Sep 17 00:00:00 2001 From: nojaf Date: Thu, 14 Dec 2023 14:14:29 +0100 Subject: [PATCH 3/5] Use default NuGet source --- docs/release-notes/.aux/Common.fsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/.aux/Common.fsx b/docs/release-notes/.aux/Common.fsx index ec9bd35101c..a64026d2934 100644 --- a/docs/release-notes/.aux/Common.fsx +++ b/docs/release-notes/.aux/Common.fsx @@ -1,4 +1,5 @@ -#r "nuget: Markdig, 0.33.0" +#i "nuget: https://api.nuget.org/v3/index.json" +#r "nuget: Markdig, 0.33.0" #r "nuget: FsHttp, 12.1.0" open System.IO From 9b01723d58dd1256cd8adaa9d00840f37f9f9617 Mon Sep 17 00:00:00 2001 From: Florian Verdonck Date: Thu, 14 Dec 2023 14:26:22 +0100 Subject: [PATCH 4/5] Update docs/release-notes/.Language/preview.md Co-authored-by: Petr --- docs/release-notes/.Language/preview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/.Language/preview.md b/docs/release-notes/.Language/preview.md index 8b4ce826714..0fce580b51e 100644 --- a/docs/release-notes/.Language/preview.md +++ b/docs/release-notes/.Language/preview.md @@ -6,4 +6,4 @@ ### Fixed -* Allow extension methods without type attribute works for types from imported assemblies. ([PR #16368](https://github.com/dotnet/fsharp/pull/16368)) +* Allow extension methods without type attribute work for types from imported assemblies. ([PR #16368](https://github.com/dotnet/fsharp/pull/16368)) From a9031778bce7a8644a2afd4d9405231661d28892 Mon Sep 17 00:00:00 2001 From: nojaf Date: Thu, 14 Dec 2023 14:56:53 +0100 Subject: [PATCH 5/5] See results in browser. --- docs/running-documentation-locally.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/running-documentation-locally.md b/docs/running-documentation-locally.md index a5fd83f75d6..ebecfd583b7 100644 --- a/docs/running-documentation-locally.md +++ b/docs/running-documentation-locally.md @@ -7,6 +7,7 @@ index: 999 # Running the documentation locally The source of this documentation website is hosted on https://github.com/fsharp/fsharp-compiler-docs. +You can follow this guide to see the results of your document changes rendered in the browser. ## Setup