diff --git a/.vsts-ci.yml b/.vsts-ci.yml index 8dca6c38dfe2..213dd68e02ea 100644 --- a/.vsts-ci.yml +++ b/.vsts-ci.yml @@ -347,11 +347,10 @@ stages: - template: /src/SourceBuild/Arcade/eng/common/templates/job/source-build-create-tarball.yml - # TODO: Enable once source-build is supported for 8.0 - https://github.com/dotnet/source-build/issues/3026 - # - ${{ if in(variables['Build.Reason'], 'PullRequest') }}: - # - template: /src/SourceBuild/Arcade/eng/common/templates/job/source-build-run-tarball-build.yml - # parameters: - # dependsOn: Source_Build_Create_Tarball + - ${{ if in(variables['Build.Reason'], 'PullRequest') }}: + - template: /src/SourceBuild/Arcade/eng/common/templates/job/source-build-run-tarball-build.yml + parameters: + dependsOn: Source_Build_Create_Tarball - ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}: - stage: Publish diff --git a/eng/Versions.props b/eng/Versions.props index a5b7528665cc..10860207c60c 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -208,7 +208,7 @@ or minor release, prebuilts may be needed. When the release is mature, prebuilts are not necessary, and this property is removed from the file. --> - 7.0.100-rc.1 + 7.0.100-rc.2 diff --git a/src/SourceBuild/tarball/content/Directory.Build.props b/src/SourceBuild/tarball/content/Directory.Build.props index 23afb19e6732..a1384a557158 100644 --- a/src/SourceBuild/tarball/content/Directory.Build.props +++ b/src/SourceBuild/tarball/content/Directory.Build.props @@ -223,7 +223,7 @@ - + diff --git a/src/SourceBuild/tarball/content/global.json b/src/SourceBuild/tarball/content/global.json index 8d6aba31bcb2..8d956837626e 100644 --- a/src/SourceBuild/tarball/content/global.json +++ b/src/SourceBuild/tarball/content/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "7.0.100-rc.1.22431.12" + "dotnet": "7.0.100-rc.2.22477.23" }, "msbuild-sdks": { "Microsoft.Build.CentralPackageVersions": "2.0.1", diff --git a/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/BasicScenarioTests.cs b/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/BasicScenarioTests.cs index af435cfdcb38..1857faa9fb88 100644 --- a/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/BasicScenarioTests.cs +++ b/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/BasicScenarioTests.cs @@ -29,11 +29,12 @@ private static IEnumerable GetScenarios() { foreach (DotNetLanguage language in Enum.GetValues()) { - yield return new(nameof(BasicScenarioTests), language, DotNetTemplate.Console, DotNetActions.Build | DotNetActions.Run | DotNetActions.PublishComplex | DotNetActions.PublishR2R); + // TODO: Re-enable once the templates target net8.0 - https://github.com/dotnet/source-build/issues/3093 + //yield return new(nameof(BasicScenarioTests), language, DotNetTemplate.Console, DotNetActions.Build | DotNetActions.Run | DotNetActions.PublishComplex | DotNetActions.PublishR2R); yield return new(nameof(BasicScenarioTests), language, DotNetTemplate.ClassLib, DotNetActions.Build | DotNetActions.Publish); - yield return new(nameof(BasicScenarioTests), language, DotNetTemplate.XUnit, DotNetActions.Test); - yield return new(nameof(BasicScenarioTests), language, DotNetTemplate.NUnit, DotNetActions.Test); - yield return new(nameof(BasicScenarioTests), language, DotNetTemplate.MSTest, DotNetActions.Test); + //yield return new(nameof(BasicScenarioTests), language, DotNetTemplate.XUnit, DotNetActions.Test); + //yield return new(nameof(BasicScenarioTests), language, DotNetTemplate.NUnit, DotNetActions.Test); + //yield return new(nameof(BasicScenarioTests), language, DotNetTemplate.MSTest, DotNetActions.Test); } } } diff --git a/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/WebScenarioTests.cs b/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/WebScenarioTests.cs index 56d0368f318f..b763fe83b818 100644 --- a/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/WebScenarioTests.cs +++ b/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/WebScenarioTests.cs @@ -28,14 +28,15 @@ private static IEnumerable GetScenarios() { foreach (DotNetLanguage language in new[] { DotNetLanguage.CSharp, DotNetLanguage.FSharp }) { - yield return new(nameof(WebScenarioTests), language, DotNetTemplate.Web, DotNetActions.Build | DotNetActions.Run | DotNetActions.PublishComplex); - yield return new(nameof(WebScenarioTests), language, DotNetTemplate.Mvc, DotNetActions.Build | DotNetActions.Run | DotNetActions.Publish) { NoHttps = true }; - yield return new(nameof(WebScenarioTests), language, DotNetTemplate.WebApi, DotNetActions.Build | DotNetActions.Run | DotNetActions.Publish); + // TODO: Re-enable once the templates target net8.0 - https://github.com/dotnet/source-build/issues/3093 + // yield return new(nameof(WebScenarioTests), language, DotNetTemplate.Web, DotNetActions.Build | DotNetActions.Run | DotNetActions.PublishComplex); + // yield return new(nameof(WebScenarioTests), language, DotNetTemplate.Mvc, DotNetActions.Build | DotNetActions.Run | DotNetActions.Publish) { NoHttps = true }; + // yield return new(nameof(WebScenarioTests), language, DotNetTemplate.WebApi, DotNetActions.Build | DotNetActions.Run | DotNetActions.Publish); } - yield return new(nameof(WebScenarioTests), DotNetLanguage.CSharp, DotNetTemplate.Razor, DotNetActions.Build | DotNetActions.Run | DotNetActions.Publish); + //yield return new(nameof(WebScenarioTests), DotNetLanguage.CSharp, DotNetTemplate.Razor, DotNetActions.Build | DotNetActions.Run | DotNetActions.Publish); yield return new(nameof(WebScenarioTests), DotNetLanguage.CSharp, DotNetTemplate.BlazorWasm, DotNetActions.Build | DotNetActions.Run | DotNetActions.Publish); - yield return new(nameof(WebScenarioTests), DotNetLanguage.CSharp, DotNetTemplate.BlazorServer, DotNetActions.Build | DotNetActions.Run | DotNetActions.Publish); + //yield return new(nameof(WebScenarioTests), DotNetLanguage.CSharp, DotNetTemplate.BlazorServer, DotNetActions.Build | DotNetActions.Run | DotNetActions.Publish); yield return new(nameof(WebScenarioTests), DotNetLanguage.CSharp, DotNetTemplate.Worker); yield return new(nameof(WebScenarioTests), DotNetLanguage.CSharp, DotNetTemplate.Angular); } diff --git a/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/assets/online.NuGet.Config b/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/assets/online.NuGet.Config index b3648690fcab..42d4b6334aee 100644 --- a/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/assets/online.NuGet.Config +++ b/src/SourceBuild/tarball/content/test/Microsoft.DotNet.SourceBuild.SmokeTests/assets/online.NuGet.Config @@ -3,7 +3,7 @@ - - + + diff --git a/src/SourceBuild/tarball/patches/aspnetcore/0002-IDE0060-workaround.patch b/src/SourceBuild/tarball/patches/aspnetcore/0002-IDE0060-workaround.patch new file mode 100644 index 000000000000..62a4f8d31ed5 --- /dev/null +++ b/src/SourceBuild/tarball/patches/aspnetcore/0002-IDE0060-workaround.patch @@ -0,0 +1,22 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: MichaelSimons +Date: Fri, 12 Aug 2022 23:02:54 +0000 +Subject: [PATCH] IDE0060 workaround + +Backport: https://github.com/dotnet/roslyn-analyzers/issues/6228 +--- + src/Http/Routing/src/Matching/Ascii.cs | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/Http/Routing/src/Matching/Ascii.cs b/src/Http/Routing/src/Matching/Ascii.cs +index 081af0bb07..393a9eb65f 100644 +--- a/src/Http/Routing/src/Matching/Ascii.cs ++++ b/src/Http/Routing/src/Matching/Ascii.cs +@@ -12,7 +12,6 @@ internal static class Ascii + // and we know that the spans are the same length. + // + // Similar to https://github.com/dotnet/coreclr/blob/master/src/System.Private.CoreLib/shared/System/Globalization/CompareInfo.cs#L549 +- [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static bool AsciiIgnoreCaseEquals(ReadOnlySpan a, ReadOnlySpan b, int length) + { + // The caller should have checked the length. We enforce that here by THROWING if the diff --git a/src/SourceBuild/tarball/patches/aspnetcore/0003-Address-obsolete-errors.patch b/src/SourceBuild/tarball/patches/aspnetcore/0003-Address-obsolete-errors.patch new file mode 100644 index 000000000000..b98759d70806 --- /dev/null +++ b/src/SourceBuild/tarball/patches/aspnetcore/0003-Address-obsolete-errors.patch @@ -0,0 +1,24 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: MichaelSimons +Date: Thu, 27 Oct 2022 02:47:08 +0000 +Subject: [PATCH] Address obsolete errors + +Backport: https://github.com/dotnet/aspnetcore/pull/44734 +--- + src/Servers/Kestrel/Core/src/KestrelServerOptions.cs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/Servers/Kestrel/Core/src/KestrelServerOptions.cs b/src/Servers/Kestrel/Core/src/KestrelServerOptions.cs +index f31880e891..fc6322dd41 100644 +--- a/src/Servers/Kestrel/Core/src/KestrelServerOptions.cs ++++ b/src/Servers/Kestrel/Core/src/KestrelServerOptions.cs +@@ -252,9 +252,6 @@ public class KestrelServerOptions + writer.WritePropertyName(nameof(AllowResponseHeaderCompression)); + writer.WriteBooleanValue(AllowResponseHeaderCompression); + +- writer.WritePropertyName(nameof(EnableAltSvc)); +- writer.WriteBooleanValue(EnableAltSvc); +- + writer.WritePropertyName(nameof(IsDevCertLoaded)); + writer.WriteBooleanValue(IsDevCertLoaded); + diff --git a/src/SourceBuild/tarball/patches/installer/0001-Revert-removal-of-internal-archives-from-aspnet.patch b/src/SourceBuild/tarball/patches/installer/0001-Revert-removal-of-internal-archives-from-aspnet.patch new file mode 100644 index 000000000000..4b89716fa1e0 --- /dev/null +++ b/src/SourceBuild/tarball/patches/installer/0001-Revert-removal-of-internal-archives-from-aspnet.patch @@ -0,0 +1,23 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: MichaelSimons +Date: Thu, 27 Oct 2022 17:59:45 +0000 +Subject: [PATCH] Revert removal of internal archives from aspnet + +Backport: https://github.com/dotnet/source-build/issues/3092 +--- + src/redist/targets/GenerateLayout.targets | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/redist/targets/GenerateLayout.targets b/src/redist/targets/GenerateLayout.targets +index 2eda46221..010b4696e 100644 +--- a/src/redist/targets/GenerateLayout.targets ++++ b/src/redist/targets/GenerateLayout.targets +@@ -100,7 +100,7 @@ + aspnetcore-targeting-pack-$(MicrosoftAspNetCoreAppRefInternalPackageVersion)-$(AspNetCoreInstallerRid)$(InstallerExtension) + aspnetcoremodule_$(Architecture)_en_v2_$(MicrosoftAspNetCoreAppRuntimePackageVersion)$(InstallerExtension) + aspnetcore-targeting-pack-$(MicrosoftAspNetCoreAppRefPackageVersion)-$(AspNetCoreArchiveRid)$(ArchiveExtension) +- aspnetcore-runtime-$(MicrosoftAspNetCoreAppRuntimePackageVersion)-$(AspNetCoreArchiveRid)$(ArchiveExtension) ++ aspnetcore-runtime-internal-$(MicrosoftAspNetCoreAppRuntimePackageVersion)-$(AspNetCoreArchiveRid)$(ArchiveExtension) + + + aspnetcore_base_runtime.version diff --git a/src/SourceBuild/tarball/patches/runtime/0001-Target-only-net7.0-during-source-build-Port-of-75168.patch b/src/SourceBuild/tarball/patches/runtime/0001-Target-only-net7.0-during-source-build-Port-of-75168.patch new file mode 100644 index 000000000000..df8527d48b58 --- /dev/null +++ b/src/SourceBuild/tarball/patches/runtime/0001-Target-only-net7.0-during-source-build-Port-of-75168.patch @@ -0,0 +1,59 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Chris Rummel +Date: Wed, 26 Oct 2022 17:03:02 -0500 +Subject: [PATCH] Target only net7.0 during source-build - Port of #75168 to + main (#77052) + +* Target only net7.0 during source-build +Port of #75168 to main. + +* Target net7.0 in additional projects + +* Update compatibility suppressions + +* Only target net7.0 for source-build + +* Disable package validation for source-build + +* Revert compatibility suppression changes + +* Use NetCoreAppCurrent instead of hardcoding net7.0 + +* Revert mono Apple TFM change + +* Remove unnecessary LangVersion + +* Address code review comments. + +Co-authored-by: Logan Bussell + +Backport: https://github.com/dotnet/runtime/pull/77052 +--- + Directory.Build.props | 1 + + eng/SourceBuild.props | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/Directory.Build.props b/Directory.Build.props +index b902a691666..35e506f1eba 100644 +--- a/Directory.Build.props ++++ b/Directory.Build.props +@@ -53,6 +53,7 @@ + .NET $(NetCoreAppCurrentVersion) + net$(NetCoreAppCurrentVersion) + net6.0 ++ $(NetCoreAppCurrent) + + 7.0 + net$(NetCoreAppToolCurrentVersion) +diff --git a/eng/SourceBuild.props b/eng/SourceBuild.props +index ebf8e683ed0..1dfe97fe1ca 100644 +--- a/eng/SourceBuild.props ++++ b/eng/SourceBuild.props +@@ -48,6 +48,7 @@ + $(InnerBuildArgs) /p:BuildDebPackage=false + $(InnerBuildArgs) /p:EnableNgenOptimization=false + $(InnerBuildArgs) /p:AdditionalRuntimeIdentifierParent=$(BaseOS) ++ $(InnerBuildArgs) /p:EnablePackageValidation=false + + +