diff --git a/.azure/pipelines/components-e2e-tests.yml b/.azure/pipelines/components-e2e-tests.yml
index 057a64027727..8e3b37199c23 100644
--- a/.azure/pipelines/components-e2e-tests.yml
+++ b/.azure/pipelines/components-e2e-tests.yml
@@ -75,4 +75,5 @@ jobs:
artifacts:
- name: Components_E2E_Test_Logs
path: '$(Build.SourcesDirectory)/artifacts/TestResults/$(BuildConfiguration)'
+ includeForks: true
publishOnError: true
diff --git a/src/Components/test/E2ETest/ServerExecutionTests/CircuitGracefulTerminationTests.cs b/src/Components/test/E2ETest/ServerExecutionTests/CircuitGracefulTerminationTests.cs
index 7f14ac9b0829..aba2951cf7ee 100644
--- a/src/Components/test/E2ETest/ServerExecutionTests/CircuitGracefulTerminationTests.cs
+++ b/src/Components/test/E2ETest/ServerExecutionTests/CircuitGracefulTerminationTests.cs
@@ -7,8 +7,8 @@
using BasicTestApp;
using Microsoft.AspNetCore.Components.E2ETest.Infrastructure;
using Microsoft.AspNetCore.Components.E2ETest.Infrastructure.ServerFixtures;
-using Microsoft.AspNetCore.Testing;
using Microsoft.AspNetCore.E2ETesting;
+using Microsoft.AspNetCore.Testing;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging.Testing;
using OpenQA.Selenium;
@@ -66,6 +66,7 @@ public async Task ReloadingThePage_GracefullyDisconnects_TheCurrentCircuit()
}
[Fact]
+ [QuarantinedTest("https://github.com/dotnet/aspnetcore/issues/44185")]
public async Task ClosingTheBrowserWindow_GracefullyDisconnects_TheCurrentCircuit()
{
// Arrange & Act
diff --git a/src/Tools/Extensions.ApiDescription.Server/src/Microsoft.Extensions.ApiDescription.Server.csproj b/src/Tools/Extensions.ApiDescription.Server/src/Microsoft.Extensions.ApiDescription.Server.csproj
index 712fa8362b46..2db57db2538c 100644
--- a/src/Tools/Extensions.ApiDescription.Server/src/Microsoft.Extensions.ApiDescription.Server.csproj
+++ b/src/Tools/Extensions.ApiDescription.Server/src/Microsoft.Extensions.ApiDescription.Server.csproj
@@ -3,7 +3,7 @@
- netcoreapp2.1;$(DefaultNetFxTargetFramework)
+ netcoreapp2.1;$(DefaultNetCoreTargetFramework);$(DefaultNetFxTargetFramework)
MSBuild tasks and targets for build-time Swagger and OpenApi document generation
true
@@ -19,12 +19,16 @@
because publish output matches what was built.
-->
-
- Publish
+ Condition=" '$(TargetFramework)' != '$(DefaultNetFxTargetFramework)' "
+ Targets="Publish"
+ Private="false"
+ ReferenceOutputAssembly="false"
+ SkipGetTargetFrameworkProperties="true" />
+
+ Publish
diff --git a/src/Tools/Extensions.ApiDescription.Server/src/Microsoft.Extensions.ApiDescription.Server.nuspec b/src/Tools/Extensions.ApiDescription.Server/src/Microsoft.Extensions.ApiDescription.Server.nuspec
index a85edc2f4ade..bc8028564e44 100644
--- a/src/Tools/Extensions.ApiDescription.Server/src/Microsoft.Extensions.ApiDescription.Server.nuspec
+++ b/src/Tools/Extensions.ApiDescription.Server/src/Microsoft.Extensions.ApiDescription.Server.nuspec
@@ -12,5 +12,6 @@
+
diff --git a/src/Tools/GetDocumentInsider/src/Commands/GetDocumentCommand.cs b/src/Tools/GetDocumentInsider/src/Commands/GetDocumentCommand.cs
index d115e46c8600..dc3597bd28ff 100644
--- a/src/Tools/GetDocumentInsider/src/Commands/GetDocumentCommand.cs
+++ b/src/Tools/GetDocumentInsider/src/Commands/GetDocumentCommand.cs
@@ -5,7 +5,7 @@
using System.IO;
using System.Linq;
using System.Reflection;
-#if NETCOREAPP2_1
+#if NETCOREAPP
using System.Runtime.Loader;
#endif
using Microsoft.Extensions.CommandLineUtils;
@@ -69,7 +69,7 @@ protected override int Execute()
}
}
-#if NETCOREAPP2_1
+#if NETCOREAPP
AssemblyLoadContext.Default.Resolving += (loadContext, assemblyName) =>
{
var name = assemblyName.Name;
diff --git a/src/Tools/GetDocumentInsider/src/Commands/GetDocumentCommandWorker.cs b/src/Tools/GetDocumentInsider/src/Commands/GetDocumentCommandWorker.cs
index 08946a297f2c..ec8d884559ae 100644
--- a/src/Tools/GetDocumentInsider/src/Commands/GetDocumentCommandWorker.cs
+++ b/src/Tools/GetDocumentInsider/src/Commands/GetDocumentCommandWorker.cs
@@ -2,13 +2,20 @@
// The .NET Foundation licenses this file to you under the MIT license.
using System;
+using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Reflection;
using System.Text;
+using System.Threading;
using System.Threading.Tasks;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Tools.Internal;
+#if NET6_0_OR_GREATER
+using Microsoft.AspNetCore.Hosting.Server;
+using Microsoft.Extensions.DependencyInjection;
+using Microsoft.AspNetCore.Http.Features;
+#endif
namespace Microsoft.Extensions.ApiDescription.Tool.Commands
{
@@ -53,6 +60,88 @@ public int Process()
return 3;
}
+ #if NET6_0_OR_GREATER
+ // Register no-op implementations of IServer and IHostLifetime
+ // to prevent the application server from actually launching after build.
+ void ConfigureHostBuilder(object hostBuilder)
+ {
+ ((IHostBuilder)hostBuilder).ConfigureServices((context, services) =>
+ {
+ services.AddSingleton();
+ services.AddSingleton();
+ });
+ }
+
+ // Register a TCS to be invoked when the entrypoint (aka Program.Main)
+ // has finished running. For minimal APIs, this means that all app.X
+ // calls about the host has been built have been executed.
+ var waitForStartTcs = new TaskCompletionSource
@@ -13,6 +13,11 @@
+
+
+
+
+
true
diff --git a/src/Tools/dotnet-getdocument/src/Commands/InvokeCommand.cs b/src/Tools/dotnet-getdocument/src/Commands/InvokeCommand.cs
index 45f7776aba5a..aca43a840aae 100644
--- a/src/Tools/dotnet-getdocument/src/Commands/InvokeCommand.cs
+++ b/src/Tools/dotnet-getdocument/src/Commands/InvokeCommand.cs
@@ -79,9 +79,16 @@ protected override int Execute()
projectName,
targetFramework.Version));
}
+ else if (targetFramework.Version >= new Version(6, 0))
+ {
+ toolsDirectory = Path.Combine(thisPath, $"net{targetFramework.Version}");
+ }
+ else
+ {
+ toolsDirectory = Path.Combine(thisPath, "netcoreapp2.1");
+ }
executable = DotNetMuxer.MuxerPathOrDefault();
- toolsDirectory = Path.Combine(thisPath, "netcoreapp2.1");
args.Add("exec");
args.Add("--depsFile");
diff --git a/src/Tools/dotnet-getdocument/src/dotnet-getdocument.csproj b/src/Tools/dotnet-getdocument/src/dotnet-getdocument.csproj
index 7bcdcbcd7ace..3b37a5ea7841 100644
--- a/src/Tools/dotnet-getdocument/src/dotnet-getdocument.csproj
+++ b/src/Tools/dotnet-getdocument/src/dotnet-getdocument.csproj
@@ -5,7 +5,7 @@
false
Exe
Microsoft.Extensions.ApiDescription.Tool
- netcoreapp2.1
+ netcoreapp2.1;$(DefaultNetCoreTargetFramework)
false
false