Skip to content

Commit 6b3dc16

Browse files
committed
Merge main into fix/issue-20184 to bring NestedCopyAndUpdate flatten up to date
2 parents 2a4a790 + 8e00165 commit 6b3dc16

25 files changed

Lines changed: 654 additions & 178 deletions

File tree

‎DEVGUIDE.md‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -371,6 +371,9 @@ First, ensure that `VisualFSharpDebug` is the startup project.
371371

372372
Then, use the **f5** or **ctrl+f5** keyboard shortcuts to test your tooling changes. The former will debug a new instance of Visual Studio. The latter will launch a new instance of Visual Studio, but with your changes installed.
373373

374+
> [!TIP]
375+
> If the F# extension fails to load when you F5 (because the Roslyn version in the repo is ahead of the one in your Visual Studio), launch VS with `.\start-vs-VisualFSharpSln.ps1` instead of opening the solution directly. It builds the extension against the Roslyn your VS actually ships, so you don't need an internal/nightly VS or a local Roslyn build. Requires VS with Roslyn 5.10 or newer.
376+
374377
Alternatively, you can do this entirely via the command line if you prefer that:
375378

376379
```shell

‎docs/release-notes/.FSharp.Compiler.Service/11.0.100.md‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
### Fixed
22

3+
* Fix `NativePtr.stackalloc` nested in a larger expression (e.g. a call argument or the right of an assignment) producing an assembly that throws `InvalidProgramException` at load. ([Issue #8083](https://github.com/dotnet/fsharp/issues/8083), [PR #20302](https://github.com/dotnet/fsharp/pull/20302))
34
* Fix Release-only (`--optimize+`) `System.InvalidProgramException` from `Seq.collect` / `yield!` over a value-type (struct) collection implementing `seq<'T>` (e.g. `ImmutableArray<_>`) when materialised with `List.ofSeq` / `Seq.toList` / `Seq.toArray` or a list/array comprehension. The collector lowering now boxes a struct sub-collection to `seq<'T>` before calling `AddMany`/`AddManyAndClose` (matching the coercion the type checker already inserts for `yield!`), and uses `unit` as the try/finally result type instead of the body type (removing a spurious `ldnull` store). ([Issue #20203](https://github.com/dotnet/fsharp/issues/20203))
45
* Fix recursive inline SRTP resolution being truncated by one currying level (e.g. FSharpPlus `memoizeN`), a regression from the function-domain unification order change in [PR #15181](https://github.com/dotnet/fsharp/pull/15181); the contravariant domain now keeps the inference variable that still carries the pending member constraint. ([PR #20247](https://github.com/dotnet/fsharp/pull/20247))
56
* Fix exponential (2^N) compile time in pattern matching with shared guards and partial active patterns. ([Issue #18425](https://github.com/dotnet/fsharp/issues/18425), [PR #20244](https://github.com/dotnet/fsharp/pull/20244))
@@ -170,11 +171,13 @@
170171
* Support for the `<include>` XML documentation tag: at compile time, documentation is copied from an external XML file selected by an XPath query and emitted into the generated documentation file. `<inheritdoc>` remains unsupported. ([Issue #19175](https://github.com/dotnet/fsharp/issues/19175), [PR #19186](https://github.com/dotnet/fsharp/pull/19186))
171172
* Expand `<inheritdoc/>` at tooling time. In IDE tooltips, completion, and signature help, documentation is inherited from base classes, interfaces, overridden members, and constructors (matched by parameter signature). The FCS Symbols API (`FSharpSymbol.XmlDoc`) additionally resolves explicit `cref` targets, but does not expand constructor inheritance. The compiler emits the tag verbatim into generated XML documentation files, matching C#; `<include>` is not implemented. ([Issue #19175](https://github.com/dotnet/fsharp/issues/19175), [PR #19188](https://github.com/dotnet/fsharp/pull/19188))
172173
* Add symbol and type highlighting to F# diagnostics ([PR #20097](https://github.com/dotnet/fsharp/pull/20097))
174+
* Name resolution: group C#-style extension members per `open` and extended type ([PR #20298](https://github.com/dotnet/fsharp/pull/20298))
173175

174176
### Improved
175177

176178
* IL: cache C# extension methods per CCU ([PR #20256](https://github.com/dotnet/fsharp/pull/20256))
177179
* Nullness warning FS3261 on dotted method or property access (e.g. `x.Member`) now underlines the receiver expression and includes the member name and (when known) the binding name in the message. ([Issue #19658](https://github.com/dotnet/fsharp/issues/19658), [PR #19814](https://github.com/dotnet/fsharp/pull/19814))
180+
* IL: share the pickled references ([PR #20301](https://github.com/dotnet/fsharp/pull/20301))
178181
* Direct delegate construction ([PR ##19993](https://github.com/dotnet/fsharp/pull/19993))
179182
* IL: add `ILPreNamespace`, make `ILPreTypeDef` creation lazy ([PR #20092](https://github.com/dotnet/fsharp/pull/20092))
180183
* IL: share ILCallingConv instances ([PR #20254](https://github.com/dotnet/fsharp/pull/20254))

‎eng/Version.Details.props‎

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,25 @@ This file should be imported by eng/Versions.props
88
<!-- dotnet-arcade dependencies -->
99
<MicrosoftDotNetArcadeSdkPackageVersion>11.0.0-beta.26414.2</MicrosoftDotNetArcadeSdkPackageVersion>
1010
<!-- dotnet-msbuild dependencies -->
11-
<MicrosoftBuildPackageVersion>18.11.0-1.26417.9</MicrosoftBuildPackageVersion>
12-
<MicrosoftBuildFrameworkPackageVersion>18.11.0-1.26417.9</MicrosoftBuildFrameworkPackageVersion>
13-
<MicrosoftBuildTasksCorePackageVersion>18.11.0-1.26417.9</MicrosoftBuildTasksCorePackageVersion>
14-
<MicrosoftBuildUtilitiesCorePackageVersion>18.11.0-1.26417.9</MicrosoftBuildUtilitiesCorePackageVersion>
11+
<MicrosoftBuildPackageVersion>18.11.0-1.26423.1</MicrosoftBuildPackageVersion>
12+
<MicrosoftBuildFrameworkPackageVersion>18.11.0-1.26423.1</MicrosoftBuildFrameworkPackageVersion>
13+
<MicrosoftBuildTasksCorePackageVersion>18.11.0-1.26423.1</MicrosoftBuildTasksCorePackageVersion>
14+
<MicrosoftBuildUtilitiesCorePackageVersion>18.11.0-1.26423.1</MicrosoftBuildUtilitiesCorePackageVersion>
1515
<!-- dotnet-optimization dependencies -->
1616
<optimizationlinuxarm64MIBCRuntimePackageVersion>1.0.0-prerelease.26407.1</optimizationlinuxarm64MIBCRuntimePackageVersion>
1717
<optimizationlinuxx64MIBCRuntimePackageVersion>1.0.0-prerelease.26407.1</optimizationlinuxx64MIBCRuntimePackageVersion>
1818
<optimizationwindows_ntarm64MIBCRuntimePackageVersion>1.0.0-prerelease.26407.1</optimizationwindows_ntarm64MIBCRuntimePackageVersion>
1919
<optimizationwindows_ntx64MIBCRuntimePackageVersion>1.0.0-prerelease.26407.1</optimizationwindows_ntx64MIBCRuntimePackageVersion>
2020
<optimizationwindows_ntx86MIBCRuntimePackageVersion>1.0.0-prerelease.26407.1</optimizationwindows_ntx86MIBCRuntimePackageVersion>
2121
<!-- dotnet-roslyn dependencies -->
22-
<MicrosoftCodeAnalysisPackageVersion>5.11.0-1.26415.2</MicrosoftCodeAnalysisPackageVersion>
23-
<MicrosoftCodeAnalysisCompilersPackageVersion>5.11.0-1.26415.2</MicrosoftCodeAnalysisCompilersPackageVersion>
24-
<MicrosoftCodeAnalysisCSharpPackageVersion>5.11.0-1.26415.2</MicrosoftCodeAnalysisCSharpPackageVersion>
25-
<MicrosoftCodeAnalysisEditorFeaturesPackageVersion>5.11.0-1.26415.2</MicrosoftCodeAnalysisEditorFeaturesPackageVersion>
26-
<MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>5.11.0-1.26415.2</MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>
27-
<MicrosoftCodeAnalysisFeaturesPackageVersion>5.11.0-1.26415.2</MicrosoftCodeAnalysisFeaturesPackageVersion>
28-
<MicrosoftVisualStudioLanguageServicesPackageVersion>5.11.0-1.26415.2</MicrosoftVisualStudioLanguageServicesPackageVersion>
29-
<MicrosoftVisualStudioLanguageServicesExternalAccessPackageVersion>5.11.0-1.26415.2</MicrosoftVisualStudioLanguageServicesExternalAccessPackageVersion>
22+
<MicrosoftCodeAnalysisPackageVersion>5.11.0-1.26423.6</MicrosoftCodeAnalysisPackageVersion>
23+
<MicrosoftCodeAnalysisCompilersPackageVersion>5.11.0-1.26423.6</MicrosoftCodeAnalysisCompilersPackageVersion>
24+
<MicrosoftCodeAnalysisCSharpPackageVersion>5.11.0-1.26423.6</MicrosoftCodeAnalysisCSharpPackageVersion>
25+
<MicrosoftCodeAnalysisEditorFeaturesPackageVersion>5.11.0-1.26423.6</MicrosoftCodeAnalysisEditorFeaturesPackageVersion>
26+
<MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>5.11.0-1.26423.6</MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>
27+
<MicrosoftCodeAnalysisFeaturesPackageVersion>5.11.0-1.26423.6</MicrosoftCodeAnalysisFeaturesPackageVersion>
28+
<MicrosoftVisualStudioLanguageServicesPackageVersion>5.11.0-1.26423.6</MicrosoftVisualStudioLanguageServicesPackageVersion>
29+
<MicrosoftVisualStudioLanguageServicesExternalAccessPackageVersion>5.11.0-1.26423.6</MicrosoftVisualStudioLanguageServicesExternalAccessPackageVersion>
3030
<!-- dotnet-runtime dependencies -->
3131
<SystemCollectionsImmutablePackageVersion>10.0.10</SystemCollectionsImmutablePackageVersion>
3232
<SystemCompositionPackageVersion>10.0.10</SystemCompositionPackageVersion>

‎eng/Version.Details.xml‎

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,53 +2,53 @@
22
<Dependencies>
33
<Source Uri="https://github.com/dotnet/dotnet" Mapping="fsharp" Sha="7cdb217445905f3342bbb0266a4497b9a014389a" BarId="326717" />
44
<ProductDependencies>
5-
<Dependency Name="Microsoft.Build" Version="18.11.0-1.26417.9">
5+
<Dependency Name="Microsoft.Build" Version="18.11.0-1.26423.1">
66
<Uri>https://github.com/dotnet/msbuild</Uri>
7-
<Sha>842fc358af70a4ef049ba4052dab78882af557ca</Sha>
7+
<Sha>fb5f0fea347e65c046a49c6c124d59874d6bfa3e</Sha>
88
</Dependency>
9-
<Dependency Name="Microsoft.Build.Framework" Version="18.11.0-1.26417.9">
9+
<Dependency Name="Microsoft.Build.Framework" Version="18.11.0-1.26423.1">
1010
<Uri>https://github.com/dotnet/msbuild</Uri>
11-
<Sha>842fc358af70a4ef049ba4052dab78882af557ca</Sha>
11+
<Sha>fb5f0fea347e65c046a49c6c124d59874d6bfa3e</Sha>
1212
</Dependency>
13-
<Dependency Name="Microsoft.Build.Tasks.Core" Version="18.11.0-1.26417.9">
13+
<Dependency Name="Microsoft.Build.Tasks.Core" Version="18.11.0-1.26423.1">
1414
<Uri>https://github.com/dotnet/msbuild</Uri>
15-
<Sha>842fc358af70a4ef049ba4052dab78882af557ca</Sha>
15+
<Sha>fb5f0fea347e65c046a49c6c124d59874d6bfa3e</Sha>
1616
</Dependency>
17-
<Dependency Name="Microsoft.Build.Utilities.Core" Version="18.11.0-1.26417.9">
17+
<Dependency Name="Microsoft.Build.Utilities.Core" Version="18.11.0-1.26423.1">
1818
<Uri>https://github.com/dotnet/msbuild</Uri>
19-
<Sha>842fc358af70a4ef049ba4052dab78882af557ca</Sha>
19+
<Sha>fb5f0fea347e65c046a49c6c124d59874d6bfa3e</Sha>
2020
</Dependency>
21-
<Dependency Name="Microsoft.CodeAnalysis" Version="5.11.0-1.26415.2">
21+
<Dependency Name="Microsoft.CodeAnalysis" Version="5.11.0-1.26423.6">
2222
<Uri>https://github.com/dotnet/roslyn</Uri>
23-
<Sha>0280f7f9457d50a46cd523ce0082807b5d70b236</Sha>
23+
<Sha>75901b60cccdcb56004d276c67f92f48f8f5c709</Sha>
2424
</Dependency>
25-
<Dependency Name="Microsoft.CodeAnalysis.Features" Version="5.11.0-1.26415.2">
25+
<Dependency Name="Microsoft.CodeAnalysis.Features" Version="5.11.0-1.26423.6">
2626
<Uri>https://github.com/dotnet/roslyn</Uri>
27-
<Sha>0280f7f9457d50a46cd523ce0082807b5d70b236</Sha>
27+
<Sha>75901b60cccdcb56004d276c67f92f48f8f5c709</Sha>
2828
</Dependency>
29-
<Dependency Name="Microsoft.CodeAnalysis.EditorFeatures" Version="5.11.0-1.26415.2">
29+
<Dependency Name="Microsoft.CodeAnalysis.EditorFeatures" Version="5.11.0-1.26423.6">
3030
<Uri>https://github.com/dotnet/roslyn</Uri>
31-
<Sha>0280f7f9457d50a46cd523ce0082807b5d70b236</Sha>
31+
<Sha>75901b60cccdcb56004d276c67f92f48f8f5c709</Sha>
3232
</Dependency>
33-
<Dependency Name="Microsoft.CodeAnalysis.EditorFeatures.Text" Version="5.11.0-1.26415.2">
33+
<Dependency Name="Microsoft.CodeAnalysis.EditorFeatures.Text" Version="5.11.0-1.26423.6">
3434
<Uri>https://github.com/dotnet/roslyn</Uri>
35-
<Sha>0280f7f9457d50a46cd523ce0082807b5d70b236</Sha>
35+
<Sha>75901b60cccdcb56004d276c67f92f48f8f5c709</Sha>
3636
</Dependency>
37-
<Dependency Name="Microsoft.CodeAnalysis.CSharp" Version="5.11.0-1.26415.2">
37+
<Dependency Name="Microsoft.CodeAnalysis.CSharp" Version="5.11.0-1.26423.6">
3838
<Uri>https://github.com/dotnet/roslyn</Uri>
39-
<Sha>0280f7f9457d50a46cd523ce0082807b5d70b236</Sha>
39+
<Sha>75901b60cccdcb56004d276c67f92f48f8f5c709</Sha>
4040
</Dependency>
41-
<Dependency Name="Microsoft.CodeAnalysis.Compilers" Version="5.11.0-1.26415.2">
41+
<Dependency Name="Microsoft.CodeAnalysis.Compilers" Version="5.11.0-1.26423.6">
4242
<Uri>https://github.com/dotnet/roslyn</Uri>
43-
<Sha>0280f7f9457d50a46cd523ce0082807b5d70b236</Sha>
43+
<Sha>75901b60cccdcb56004d276c67f92f48f8f5c709</Sha>
4444
</Dependency>
45-
<Dependency Name="Microsoft.VisualStudio.LanguageServices" Version="5.11.0-1.26415.2">
45+
<Dependency Name="Microsoft.VisualStudio.LanguageServices" Version="5.11.0-1.26423.6">
4646
<Uri>https://github.com/dotnet/roslyn</Uri>
47-
<Sha>0280f7f9457d50a46cd523ce0082807b5d70b236</Sha>
47+
<Sha>75901b60cccdcb56004d276c67f92f48f8f5c709</Sha>
4848
</Dependency>
49-
<Dependency Name="Microsoft.VisualStudio.LanguageServices.ExternalAccess" Version="5.11.0-1.26415.2">
49+
<Dependency Name="Microsoft.VisualStudio.LanguageServices.ExternalAccess" Version="5.11.0-1.26423.6">
5050
<Uri>https://github.com/dotnet/roslyn</Uri>
51-
<Sha>0280f7f9457d50a46cd523ce0082807b5d70b236</Sha>
51+
<Sha>75901b60cccdcb56004d276c67f92f48f8f5c709</Sha>
5252
</Dependency>
5353
<!-- Necessary for source-build. This allows the live version of the package to be used by source-build. -->
5454
<Dependency Name="System.Collections.Immutable" Version="10.0.10">

0 commit comments

Comments
 (0)