Skip to content

Commit a1b388f

Browse files
authored
Merge branch 'main' into fix/compiler-signing-linux-final
2 parents a3b89ad + f40f00d commit a1b388f

File tree

65 files changed

+877
-471
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+877
-471
lines changed

.github/workflows/check_release_notes.yml

Lines changed: 16 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -50,39 +50,27 @@ jobs:
5050
5151
echo "Opt out of release notes: $OPT_OUT_RELEASE_NOTES"
5252
53-
# Parse version from eng/Versions.props
54-
# For FSarp.Core:
55-
# <FSMajorVersion>8</FSMajorVersion>
56-
# <FSMinorVersion>0</FSMinorVersion>
57-
# <FSBuildVersion>100</FSBuildVersion>
58-
# For FCS:
59-
# FCSMajorVersion>43</FCSMajorVersion>
60-
# <FCSMinorVersion>8</FCSMinorVersion>
61-
# <FCSBuildVersion>$(FSBuildVersion)</FCSBuildVersion>
62-
# For VS:
63-
# <VSMajorVersion>17</VSMajorVersion>
64-
# <VSMinorVersion>8</VSMinorVersion>
53+
# VNEXT is a GitHub repository variable set via admin settings
54+
# It controls the expected release notes version for FSharp.Core and FCS
55+
VNEXT="${{ vars.VNEXT }}"
56+
if [[ -z "$VNEXT" ]]; then
57+
echo "Error: VNEXT repository variable is not set. Please configure it in GitHub repository settings."
58+
exit 1
59+
fi
6560
66-
_fs_major_version=$(grep -oPm1 "(?<=<FSMajorVersion>)[^<]+" eng/Versions.props)
67-
_fs_minor_version=$(grep -oPm1 "(?<=<FSMinorVersion>)[^<]+" eng/Versions.props)
68-
_fs_build_version=$(grep -oPm1 "(?<=<FSBuildVersion>)[^<]+" eng/Versions.props)
69-
_fcs_major_version=$(grep -oPm1 "(?<=<FCSMajorVersion>)[^<]+" eng/Versions.props)
70-
_fcs_minor_version=$(grep -oPm1 "(?<=<FCSMinorVersion>)[^<]+" eng/Versions.props)
71-
_fcs_build_version=$_fs_build_version
61+
# Parse VS major version from eng/Versions.props for the vNext pattern
62+
# <VSMajorVersion>18</VSMajorVersion>
7263
_vs_major_version=$(grep -oPm1 "(?<=<VSMajorVersion>)[^<]+" eng/Versions.props)
73-
_vs_minor_version=$(grep -oPm1 "(?<=<VSMinorVersion>)[^<]+" eng/Versions.props)
7464
75-
FSHARP_CORE_VERSION="$_fs_major_version.$_fs_minor_version.$_fs_build_version"
76-
FCS_VERSION="$_fcs_major_version.$_fcs_minor_version.$_fcs_build_version"
77-
VISUAL_STUDIO_VERSION="$_vs_major_version.$_vs_minor_version"
65+
FSHARP_CORE_VERSION="$VNEXT"
66+
FCS_VERSION="$VNEXT"
67+
VISUAL_STUDIO_VERSION="$_vs_major_version.vNext"
7868
79-
echo "Found F# version: ${FSHARP_CORE_VERSION}"
80-
echo "Found FCS version: ${FCS_VERSION}"
81-
echo "Found Visual Studio version: ${VISUAL_STUDIO_VERSION}"
69+
echo "Using VNEXT for release notes: ${VNEXT}"
70+
echo "Visual Studio release notes: ${VISUAL_STUDIO_VERSION}"
8271
83-
[[ "$FSHARP_CORE_VERSION" =~ ^[0-9]+\.[0-9]+.[0-9]+$ ]] || (echo " Invalid FSharp.Core Version parsed"; exit 1)
84-
[[ "$FCS_VERSION" =~ ^[0-9]+\.[0-9]+.[0-9]+$ ]] || (echo " Invalid FCS Version parsed"; exit 1)
85-
[[ "$VISUAL_STUDIO_VERSION" =~ ^[0-9]+\.[0-9]+$ ]] || (echo " Invalid Visual Studio Version parsed"; exit 1)
72+
[[ "$VNEXT" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || (echo " Invalid VNEXT format (expected X.Y.Z)"; exit 1)
73+
[[ "$_vs_major_version" =~ ^[0-9]+$ ]] || (echo " Invalid VS major version parsed"; exit 1)
8674
8775
_release_notes_base_path='docs/release-notes'
8876
_fsharp_core_release_notes_path="${_release_notes_base_path}/.FSharp.Core/${FSHARP_CORE_VERSION}.md"

azure-pipelines-PR.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -906,3 +906,21 @@ stages:
906906
buildScript: build.sh
907907
displayName: FSharpPlus_Linux
908908
useVmImage: $(UbuntuMachineQueueName)
909+
- repo: fsprojects/FSharpPlus
910+
commit: 2648efe
911+
buildScript: build.cmd
912+
displayName: FsharpPlus_NET10
913+
# remove this before merging
914+
- repo: fsprojects/FSharpPlus
915+
commit: 2648efe
916+
buildScript: dotnet msbuild build.proj -t:Build;Test
917+
displayName: FsharpPlus_NET10_Test
918+
- repo: fsprojects/FSharpPlus
919+
commit: 2648efe
920+
buildScript: dotnet msbuild build.proj -t:Build;AllDocs
921+
displayName: FsharpPlus_NET10_Docs
922+
- repo: fsprojects/FSharpPlus
923+
commit: 2648efe
924+
buildScript: build.sh
925+
displayName: FsharpPlus_Net10_Linux
926+
useVmImage: $(UbuntuMachineQueueName)

docs/release-notes/.FSharp.Compiler.Service/10.0.200.md

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,46 @@
11
### Fixed
22

3+
* Fixed SRTP resolution regression causing FS0030 value restriction errors with FSharpPlus curryN-style patterns in .NET 9 SDK. ([PR #19218](https://github.com/dotnet/fsharp/pull/19218))
34
* Fix FS3261 nullness warning when implementing INotifyPropertyChanged or ICommand CLIEvent properties. ([Issue #18361](https://github.com/dotnet/fsharp/issues/18361), [Issue #18349](https://github.com/dotnet/fsharp/issues/18349), [PR #19221](https://github.com/dotnet/fsharp/pull/19221))
45
* Type relations cache: optimize key generation ([Issue #19116](https://github.com/dotnet/fsharp/issues/18767)) ([PR #19120](https://github.com/dotnet/fsharp/pull/19120))
56
* Fixed QuickParse to correctly handle optional parameter syntax with `?` prefix, resolving syntax highlighting issues. ([Issue #11008753](https://developercommunity.visualstudio.com/t/F-Highlighting-fails-on-optional-parame/11008753)) ([PR #XXXXX](https://github.com/dotnet/fsharp/pull/XXXXX))
67
* Fix `--preferreduilang` switch leaking into `fsi.CommandLineArgs` when positioned after script file ([PR #19151](https://github.com/dotnet/fsharp/pull/19151))
8+
* Optimize empty string pattern matching to use null-safe .Length check instead of string equality comparison for better performance.
79
* Fixed runtime crash when using interfaces with unimplemented static abstract members as constrained type arguments. ([Issue #19184](https://github.com/dotnet/fsharp/issues/19184))
810
* Fix delegates with `[<OptionalArgument>]` and caller info attributes failing to compile. ([Issue #18868](https://github.com/dotnet/fsharp/issues/18868), [PR #19069](https://github.com/dotnet/fsharp/pull/19069))
911
* Type checker: mark generated event tree nodes as synthetic ([PR #19213](https://github.com/dotnet/fsharp/pull/19213))
12+
* Nullness: Fix nullness refinement in match expressions to correctly narrow type to non-null after matching null case. ([Issue #18488](https://github.com/dotnet/fsharp/issues/18488), [PR #18852](https://github.com/dotnet/fsharp/pull/18852))
13+
* Scripts: Fix resolving the dotnet host path when an SDK directory is specified. ([PR #18960](https://github.com/dotnet/fsharp/pull/18960))
14+
* Fix excessive StackGuard thread jumping ([PR #18971](https://github.com/dotnet/fsharp/pull/18971))
15+
* Adjust conservative method-overload duplicate detection rules for nativeptr types ([PR #18911](https://github.com/dotnet/fsharp/pull/18911))
16+
* Checking: Fix checking nested fields for records and anonymous ([PR #18964](https://github.com/dotnet/fsharp/pull/18964))
17+
* Fix name is bound multiple times is not reported in 'as' pattern ([PR #18984](https://github.com/dotnet/fsharp/pull/18984))
18+
* Syntax Tree: fix return type info for let! / and! / use! ([PR #19004](https://github.com/dotnet/fsharp/pull/19004))
19+
* Fix: warn FS0049 on upper union case label. ([PR #19003](https://github.com/dotnet/fsharp/pull/19003))
20+
* Type relations cache: handle potentially "infinite" types ([PR #19010](https://github.com/dotnet/fsharp/pull/19010))
21+
* Disallow recursive structs with lifted type parameters ([Issue #18993](https://github.com/dotnet/fsharp/issues/18993), [PR #19031](https://github.com/dotnet/fsharp/pull/19031))
22+
* Fix units-of-measure changes not invalidating incremental builds. ([Issue #19049](https://github.com/dotnet/fsharp/issues/19049))
23+
* Fix race in graph checking of type extensions. ([PR #19062](https://github.com/dotnet/fsharp/pull/19062))
24+
* Type relations cache: handle unsolved type variables ([Issue #19037](https://github.com/dotnet/fsharp/issues/19037)) ([PR #19040](https://github.com/dotnet/fsharp/pull/19040))
25+
* Fix insertion context for modules with multiline attributes. ([Issue #18671](https://github.com/dotnet/fsharp/issues/18671))
26+
* Fix `--typecheck-only` for scripts stopping after processing `#load`-ed script ([PR #19048](https://github.com/dotnet/fsharp/pull/19048))
27+
* Fix object expressions in struct types generating invalid IL with byref fields causing TypeLoadException at runtime. ([Issue #19068](https://github.com/dotnet/fsharp/issues/19068), [PR #19070](https://github.com/dotnet/fsharp/pull/19070))
1028

1129
### Added
1230

1331
* Detect and error on static extension members extending types with the same simple name but different namespaces in the same module. ([PR #18821](https://github.com/dotnet/fsharp/pull/18821))
1432
* FSharpDiagnostic: add default severity ([#19152](https://github.com/dotnet/fsharp/pull/19152))
1533
* Add warning FS3879 for XML documentation comments not positioned as first non-whitespace on line. ([PR #18891](https://github.com/dotnet/fsharp/pull/18891))
16-
* FsiEvaluationSession.ParseAndCheckInteraction: add keepAssemblyContents optional parameter ([#19155](https://github.com/dotnet/fsharp/pull/19155))
34+
* FsiEvaluationSession.ParseAndCheckInteraction: add keepAssemblyContents optional parameter ([#19155](https://github.com/dotnet/fsharp/pull/19155))
35+
* Add FSharpCodeCompletionOptions ([PR #19030](https://github.com/dotnet/fsharp/pull/19030))
36+
* Type checker: recover on checking binding parameter constraints ([#19046](https://github.com/dotnet/fsharp/pull/19046))
37+
* Debugger: provide breakpoint ranges for short lambdas ([#19067](https://github.com/dotnet/fsharp/pull/19067))
38+
* Add support for triple quoted ASCII byte string ([#19182](https://github.com/dotnet/fsharp/pull/19182))
39+
40+
### Changed
41+
42+
* Parallel compilation features: ref resolution, graph based checking, ILXGen and optimization enabled by default ([PR #18998](https://github.com/dotnet/fsharp/pull/18998))
43+
* Make graph based type checking and parallel optimizations deterministic ([PR #19028](https://github.com/dotnet/fsharp/pull/19028))
1744

1845
### Breaking Changes
1946

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
### Fixed
2+
3+
### Added
4+
5+
### Changed
6+
7+
### Breaking Changes

docs/release-notes/.FSharp.Compiler.Service/11.0.0.md

Lines changed: 0 additions & 32 deletions
This file was deleted.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
### Fixed
2+
3+
### Added
4+
5+
### Changed
6+
7+
### Breaking Changes
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
### Fixed
2+
3+
### Changed

eng/Version.Details.props

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,11 @@ This file should be imported by eng/Versions.props
2929
<!-- dotnet/arcade dependencies -->
3030
<MicrosoftDotNetArcadeSdkPackageVersion>10.0.0-beta.26062.3</MicrosoftDotNetArcadeSdkPackageVersion>
3131
<!-- _git/dotnet-optimization dependencies -->
32-
<optimizationlinuxarm64MIBCRuntimePackageVersion>1.0.0-prerelease.25502.1</optimizationlinuxarm64MIBCRuntimePackageVersion>
33-
<optimizationlinuxx64MIBCRuntimePackageVersion>1.0.0-prerelease.25502.1</optimizationlinuxx64MIBCRuntimePackageVersion>
34-
<optimizationwindows_ntarm64MIBCRuntimePackageVersion>1.0.0-prerelease.25502.1</optimizationwindows_ntarm64MIBCRuntimePackageVersion>
35-
<optimizationwindows_ntx64MIBCRuntimePackageVersion>1.0.0-prerelease.25502.1</optimizationwindows_ntx64MIBCRuntimePackageVersion>
36-
<optimizationwindows_ntx86MIBCRuntimePackageVersion>1.0.0-prerelease.25502.1</optimizationwindows_ntx86MIBCRuntimePackageVersion>
32+
<optimizationlinuxarm64MIBCRuntimePackageVersion>1.0.0-prerelease.26072.2</optimizationlinuxarm64MIBCRuntimePackageVersion>
33+
<optimizationlinuxx64MIBCRuntimePackageVersion>1.0.0-prerelease.26072.2</optimizationlinuxx64MIBCRuntimePackageVersion>
34+
<optimizationwindows_ntarm64MIBCRuntimePackageVersion>1.0.0-prerelease.26072.2</optimizationwindows_ntarm64MIBCRuntimePackageVersion>
35+
<optimizationwindows_ntx64MIBCRuntimePackageVersion>1.0.0-prerelease.26072.2</optimizationwindows_ntx64MIBCRuntimePackageVersion>
36+
<optimizationwindows_ntx86MIBCRuntimePackageVersion>1.0.0-prerelease.26072.2</optimizationwindows_ntx86MIBCRuntimePackageVersion>
3737
</PropertyGroup>
3838
<!--Property group for alternate package version names-->
3939
<PropertyGroup>

eng/Version.Details.xml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -80,25 +80,25 @@
8080
<Uri>https://github.com/dotnet/arcade</Uri>
8181
<Sha>9f518f2be968c4c0102c2e3f8c793c5b7f28b731</Sha>
8282
</Dependency>
83-
<Dependency Name="optimization.windows_nt-x64.MIBC.Runtime" Version="1.0.0-prerelease.25502.1">
83+
<Dependency Name="optimization.windows_nt-x64.MIBC.Runtime" Version="1.0.0-prerelease.26072.2">
8484
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
85-
<Sha>71ce9774e9875270b80faaac1d6b60568a80e1fa</Sha>
85+
<Sha>61d607ce6d42e00e4cf1428e58a7aec60f882825</Sha>
8686
</Dependency>
87-
<Dependency Name="optimization.windows_nt-x86.MIBC.Runtime" Version="1.0.0-prerelease.25502.1">
87+
<Dependency Name="optimization.windows_nt-x86.MIBC.Runtime" Version="1.0.0-prerelease.26072.2">
8888
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
89-
<Sha>71ce9774e9875270b80faaac1d6b60568a80e1fa</Sha>
89+
<Sha>61d607ce6d42e00e4cf1428e58a7aec60f882825</Sha>
9090
</Dependency>
91-
<Dependency Name="optimization.linux-x64.MIBC.Runtime" Version="1.0.0-prerelease.25502.1">
91+
<Dependency Name="optimization.linux-x64.MIBC.Runtime" Version="1.0.0-prerelease.26072.2">
9292
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
93-
<Sha>71ce9774e9875270b80faaac1d6b60568a80e1fa</Sha>
93+
<Sha>61d607ce6d42e00e4cf1428e58a7aec60f882825</Sha>
9494
</Dependency>
95-
<Dependency Name="optimization.windows_nt-arm64.MIBC.Runtime" Version="1.0.0-prerelease.25502.1">
95+
<Dependency Name="optimization.windows_nt-arm64.MIBC.Runtime" Version="1.0.0-prerelease.26072.2">
9696
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
97-
<Sha>71ce9774e9875270b80faaac1d6b60568a80e1fa</Sha>
97+
<Sha>61d607ce6d42e00e4cf1428e58a7aec60f882825</Sha>
9898
</Dependency>
99-
<Dependency Name="optimization.linux-arm64.MIBC.Runtime" Version="1.0.0-prerelease.25502.1">
99+
<Dependency Name="optimization.linux-arm64.MIBC.Runtime" Version="1.0.0-prerelease.26072.2">
100100
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
101-
<Sha>71ce9774e9875270b80faaac1d6b60568a80e1fa</Sha>
101+
<Sha>61d607ce6d42e00e4cf1428e58a7aec60f882825</Sha>
102102
</Dependency>
103103
</ToolsetDependencies>
104104
</Dependencies>

0 commit comments

Comments
 (0)