Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions docs/release-notes/.FSharp.Core/11.0.100.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
### Added

* Added `AllowOverloadOnReturnTypeAttribute`: applying it to a method causes its return type to be considered during overload resolution, enabling overloads that differ only by return type. ([fslang-suggestions#820](https://github.com/fsharp/fslang-suggestions/issues/820), [PR #19602](https://github.com/dotnet/fsharp/pull/19602))

### Fixed

* Add `inline` and `[<InlineIfLambda>]` to allocation-free `List` and `Array` higher-order functions (`fold`, `fold2`, `foldBack`, `foldBack2`, `reduce`, `reduceBack`, `iter2`, `iteri`, `iteri2`, `find`, `findIndex`, `findBack`, `findIndexBack`, `pick`, `tryPick`, `exists`, `exists2`, `forall`, `forall2`, `skipWhile`), eliminating the per-call closure allocation when a capturing lambda is passed. Error paths are routed through hidden non-inline helpers so localized exception messages are preserved. ([RFC FS-1115](https://github.com/fsharp/fslang-design/blob/main/RFCs/FS-1115-InlineIfLambda-in-FSharp-Core.md), [PR #20422](https://github.com/dotnet/fsharp/pull/20422))
Expand All @@ -18,6 +22,10 @@
* Add `Async.Await`, mirroring `Async.AwaitTask` semantics, but elides egregious `AggregateException` wrapping. Includes `ValueTask` support, and a SRTP-based overload accepting any Task-like value that supports the `GetAwaiter` protocol. ([Language Suggestion #840](https://github.com/fsharp/fslang-suggestions/issues/840), [PR #19785](https://github.com/dotnet/fsharp/pull/19785))
* `Async.RunSynchronouslyImmediate`: runs work on the calling thread until the first asynchronous suspension (as opposed to `RunSynchronously`, which immediately offloads if not on a background and/or threadpool thread). ([Issue #1042](https://github.com/fsharp/fslang-suggestions/issues/1042), [PR #19804](https://github.com/dotnet/fsharp/pull/19804))
* Added `AllowOverloadOnReturnTypeAttribute`: applying it to a method causes its return type to be considered during overload resolution, enabling overloads that differ only by return type. ([fslang-suggestions#820](https://github.com/fsharp/fslang-suggestions/issues/820), [PR #19602](https://github.com/dotnet/fsharp/pull/19602))

### Changed

* Deduplicate repeated XML documentation (sort stability/complexity, `Parallel.For`, dynamic entry points) via the compile-time `<include>` tag; generated FSharp.Core.xml is unchanged. ([PR #20231](https://github.com/dotnet/fsharp/pull/20231))
* Added modules for `Async`, `Task` and `ValueTask` with consistent `result`, `map`, `bind`, `ignore`, `catchWith`, `catch`, and `empty` functions ([LanguageSuggestion #1466](https://github.com/fsharp/fslang-suggestions/issues/1466), [PR #19844](https://github.com/dotnet/fsharp/pull/19844))
* Most `Array` and `Array.Parallel` functions, and the `toArray` conversions (`List.toArray`, `Seq.toArray`, `Array.ofList`/`ofSeq`, `Set.toArray`, `Map.toArray`), now return the shared empty-array singleton instead of allocating a fresh zero-length array when the result is empty. Copies of covariant arrays retain their runtime array type. ([Issue #20382](https://github.com/dotnet/fsharp/issues/20382), [PR #20388](https://github.com/dotnet/fsharp/pull/20388))
* Added conversion functions `Task.ofValueTask` and `ValueTask.ofTask`. ([LanguageSuggestion #1466](https://github.com/fsharp/fslang-suggestions/issues/1466), [PR #19844](https://github.com/dotnet/fsharp/pull/19844))
Expand Down
2 changes: 1 addition & 1 deletion eng/Version.Details.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Dependencies>
<Source Uri="https://github.com/dotnet/dotnet" Mapping="fsharp" Sha="c65c25f0c9889e06a5d70e275c741d8430fa353a" BarId="331079" />
<Source Uri="https://github.com/dotnet/dotnet" Mapping="fsharp" Sha="3d2a4811a58d8ba08bc2162cced36034f98c6b5d" BarId="332290" />
<ProductDependencies>
<Dependency Name="Microsoft.Build" Version="18.12.0-1.26461.2">
<Uri>https://github.com/dotnet/msbuild</Uri>
Expand Down
Loading