Skip to content

Commit 9bdeca9

Browse files
committed
merge main
2 parents dae3c9a + 12efe3b commit 9bdeca9

File tree

78 files changed

+2454
-1261
lines changed

Some content is hidden

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

78 files changed

+2454
-1261
lines changed

.gitignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,3 +148,13 @@ TestResults/*.trx
148148
StandardOutput.txt
149149
StandardError.txt
150150
**/TestResults/
151+
152+
# CompilerCompat test project generated files
153+
tests/projects/CompilerCompat/**/nuget.config
154+
tests/projects/CompilerCompat/**/global.json
155+
tests/projects/CompilerCompat/**/*.deps.json
156+
tests/projects/CompilerCompat/**/*.xml
157+
tests/projects/CompilerCompat/local-nuget-packages/
158+
tests/projects/CompilerCompat/lib-output-*/
159+
tests/projects/CompilerCompat/**/bin/
160+
tests/projects/CompilerCompat/**/obj/

azure-pipelines-PR.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -732,6 +732,15 @@ stages:
732732
steps:
733733
- checkout: self
734734
clean: true
735+
# We first download a publicly available .NET SDK. That one has support for `path` in global.json. dotnet.cmd script can then download a version which is not yet shipped, but matches global.json.
736+
- task: UseDotNet@2
737+
displayName: install SDK
738+
inputs:
739+
packageType: sdk
740+
version: '10.x'
741+
includePreviewVersions: true
742+
workingDirectory: $(Build.SourcesDirectory)
743+
installationPath: $(Build.SourcesDirectory)/.dotnet
735744
- script: .\Build.cmd -c Release -pack
736745
env:
737746
NativeToolsOnMachine: true
@@ -740,6 +749,8 @@ stages:
740749
env:
741750
FSHARP_EXPERIMENTAL_FEATURES: $(_experimental_flag)
742751
displayName: End to end build tests
752+
- script: .\eng\common\dotnet.cmd fsi .\tests\FSharp.Compiler.ComponentTests\CompilerCompatibilityTests.fsx
753+
displayName: Compiler compatibility tests
743754

744755
# Up-to-date - disabled due to it being flaky
745756
#- job: UpToDate_Windows

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
* Tests: set test source for range debug printing ([PR #18879](https://github.com/dotnet/fsharp/pull/18879))
3535
* Checker: fix declaring type for abbreviated types extensions ([PR #18909](https://github.com/dotnet/fsharp/pull/18909))
3636
* Caches: type subsumption cache key perf regression ([Issue #18925](https://github.com/dotnet/fsharp/issues/18925) [PR #18926](https://github.com/dotnet/fsharp/pull/18926))
37+
* Fix early/unconditional execution of PackageFSharpDesignTimeTools target. ([Issue #18924](https://github.com/dotnet/fsharp/issues/18924), [Issue #12320](https://github.com/dotnet/fsharp/issues/12320))
3738
* Ensure that line directives are applied to source identifiers (issue [#18908](https://github.com/dotnet/fsharp/issues/18908), PR [#18918](https://github.com/dotnet/fsharp/pull/18918))
3839
* Fix expected and actual types in ErrorFromAddingTypeEquation message and extended diagnostic data. ([PR #18915](https://github.com/dotnet/fsharp/pull/18915))
3940
* Editor: Fix Record fields completion in update record with partial field name. ([PR #18946](https://github.com/dotnet/fsharp/pull/18946))

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

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,13 @@
44
* Fix excessive StackGuard thread jumping ([PR #18971](https://github.com/dotnet/fsharp/pull/18971))
55
* Checking: Fix checking nested fields for records and anonymous ([PR #18964](https://github.com/dotnet/fsharp/pull/18964))
66
* Fix name is bound multiple times is not reported in 'as' pattern ([PR #18984](https://github.com/dotnet/fsharp/pull/18984))
7-
* Type relations cache: handle potentially "infinite" types ([PR #19010](https://github.com/dotnet/fsharp/pull/19010))
7+
* Fix: warn FS0049 on upper union case label. ([PR #19003](https://github.com/dotnet/fsharp/pull/19003))
8+
* Type relations cache: handle potentially "infinite" types ([PR #19010](https://github.com/dotnet/fsharp/pull/19010))
89

910
### Added
1011

1112
### Changed
1213

14+
* Parallel compilation stabilised and enabled by default ([PR #18998](https://github.com/dotnet/fsharp/pull/18998))
15+
1316
### Breaking Changes

eng/Version.Details.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ This file should be imported by eng/Versions.props
2727
<MicrosoftCodeAnalysisFeaturesPackageVersion>5.0.0-2.25480.7</MicrosoftCodeAnalysisFeaturesPackageVersion>
2828
<MicrosoftVisualStudioLanguageServicesPackageVersion>5.0.0-2.25480.7</MicrosoftVisualStudioLanguageServicesPackageVersion>
2929
<!-- dotnet/arcade dependencies -->
30-
<MicrosoftDotNetArcadeSdkPackageVersion>11.0.0-beta.25509.1</MicrosoftDotNetArcadeSdkPackageVersion>
30+
<MicrosoftDotNetArcadeSdkPackageVersion>11.0.0-beta.25520.4</MicrosoftDotNetArcadeSdkPackageVersion>
3131
<!-- _git/dotnet-optimization dependencies -->
3232
<optimizationlinuxarm64MIBCRuntimePackageVersion>1.0.0-prerelease.25502.1</optimizationlinuxarm64MIBCRuntimePackageVersion>
3333
<optimizationlinuxx64MIBCRuntimePackageVersion>1.0.0-prerelease.25502.1</optimizationlinuxx64MIBCRuntimePackageVersion>

eng/Version.Details.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,9 +76,9 @@
7676
</Dependency>
7777
</ProductDependencies>
7878
<ToolsetDependencies>
79-
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="11.0.0-beta.25509.1">
79+
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="11.0.0-beta.25520.4">
8080
<Uri>https://github.com/dotnet/arcade</Uri>
81-
<Sha>488413fe104056170673a048a07906314e101e5d</Sha>
81+
<Sha>16f3dcc641eb529fa7324ea2d1d236bf2ca57dd0</Sha>
8282
</Dependency>
8383
<Dependency Name="optimization.windows_nt-x64.MIBC.Runtime" Version="1.0.0-prerelease.25502.1">
8484
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>

eng/common/SetupNugetSources.sh

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,8 @@ EnableInternalPackageSource() {
6666
grep -i "<add key=\"$PackageSourceName\" value=\"true\"" "$ConfigFile" > /dev/null
6767
if [ "$?" == "0" ]; then
6868
echo "Enabling internal source '$PackageSourceName'."
69-
# Remove the disabled entry
70-
local OldDisableValue="<add key=\"$PackageSourceName\" value=\"true\" />"
71-
local NewDisableValue="<!-- Reenabled for build : $PackageSourceName -->"
72-
sed -i.bak "s|$OldDisableValue|$NewDisableValue|" "$ConfigFile"
69+
# Remove the disabled entry (including any surrounding comments or whitespace on the same line)
70+
sed -i.bak "/<add key=\"$PackageSourceName\" value=\"true\" \/>/d" "$ConfigFile"
7371

7472
# Add the source name to PackageSources for credential handling
7573
PackageSources+=("$PackageSourceName")

eng/common/core-templates/job/publish-build-assets.yml

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,8 @@ jobs:
9191
fetchDepth: 3
9292
clean: true
9393

94-
- ${{ if eq(parameters.isAssetlessBuild, 'false') }}:
95-
- ${{ if eq(parameters.publishingVersion, 3) }}:
94+
- ${{ if eq(parameters.isAssetlessBuild, 'false') }}:
95+
- ${{ if eq(parameters.publishingVersion, 3) }}:
9696
- task: DownloadPipelineArtifact@2
9797
displayName: Download Asset Manifests
9898
inputs:
@@ -117,9 +117,16 @@ jobs:
117117
flattenFolders: true
118118
condition: ${{ parameters.condition }}
119119
continueOnError: ${{ parameters.continueOnError }}
120-
120+
121121
- task: NuGetAuthenticate@1
122122

123+
# Populate internal runtime variables.
124+
- template: /eng/common/templates/steps/enable-internal-sources.yml
125+
parameters:
126+
legacyCredential: $(dn-bot-dnceng-artifact-feeds-rw)
127+
128+
- template: /eng/common/templates/steps/enable-internal-runtimes.yml
129+
123130
- task: AzureCLI@2
124131
displayName: Publish Build Assets
125132
inputs:
@@ -132,9 +139,12 @@ jobs:
132139
/p:IsAssetlessBuild=${{ parameters.isAssetlessBuild }}
133140
/p:MaestroApiEndpoint=https://maestro.dot.net
134141
/p:OfficialBuildId=$(OfficialBuildId)
142+
-runtimeSourceFeed https://ci.dot.net/internal
143+
-runtimeSourceFeedKey $(dotnetbuilds-internal-container-read-token-base64)
144+
135145
condition: ${{ parameters.condition }}
136146
continueOnError: ${{ parameters.continueOnError }}
137-
147+
138148
- task: powershell@2
139149
displayName: Create ReleaseConfigs Artifact
140150
inputs:
@@ -162,7 +172,7 @@ jobs:
162172
artifactName: AssetManifests
163173
displayName: 'Publish Merged Manifest'
164174
retryCountOnTaskFailure: 10 # for any logs being locked
165-
sbomEnabled: false # we don't need SBOM for logs
175+
sbomEnabled: false # we don't need SBOM for logs
166176

167177
- template: /eng/common/core-templates/steps/publish-build-artifacts.yml
168178
parameters:
@@ -195,9 +205,11 @@ jobs:
195205
-ArtifactsPublishingAdditionalParameters '${{ parameters.artifactsPublishingAdditionalParameters }}'
196206
-SymbolPublishingAdditionalParameters '${{ parameters.symbolPublishingAdditionalParameters }}'
197207
-SkipAssetsPublishing '${{ parameters.isAssetlessBuild }}'
208+
-runtimeSourceFeed https://ci.dot.net/internal
209+
-runtimeSourceFeedKey $(dotnetbuilds-internal-container-read-token-base64)
198210
199211
- ${{ if eq(parameters.enablePublishBuildArtifacts, 'true') }}:
200212
- template: /eng/common/core-templates/steps/publish-logs.yml
201213
parameters:
202214
is1ESPipeline: ${{ parameters.is1ESPipeline }}
203-
JobLabel: 'Publish_Artifacts_Logs'
215+
JobLabel: 'Publish_Artifacts_Logs'

0 commit comments

Comments
 (0)