diff --git a/eng/Versions.props b/eng/Versions.props index 9b81acbe85..e15eddb753 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -173,10 +173,9 @@ 0.10.13 4.2.1 4.2.1 - 3.6.1 + 3.7.0 0.1.19-pre2 - 1.19.0-pre1 - 1.19.0-pre1 + 1.20.0-pre1 2.3.0 2.3.0 2.3.0 diff --git a/eng/scripts/CodeCheck.ps1 b/eng/scripts/CodeCheck.ps1 index e52d9fc26c..4b60cd6f22 100644 --- a/eng/scripts/CodeCheck.ps1 +++ b/eng/scripts/CodeCheck.ps1 @@ -89,7 +89,7 @@ try { Get-ChildItem "$repoRoot/*.sln" -Recurse ` | ? { # These .sln files are used by the templating engine. - ($_.Name -ne "RazorComponentsWeb-CSharp.sln") -and ($_.Name -ne "GrpcService-CSharp.sln") + ($_.Name -ne "RazorComponentsWeb-CSharp.sln") } ` | % { Write-Host " Checking $(Split-Path -Leaf $_)" diff --git a/src/ProjectTemplates/Web.ProjectTemplates/GrpcService-CSharp.Client.csproj.in b/src/ProjectTemplates/Web.ProjectTemplates/GrpcService-CSharp.Client.csproj.in deleted file mode 100644 index c398043b02..0000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/GrpcService-CSharp.Client.csproj.in +++ /dev/null @@ -1,21 +0,0 @@ - - - - Exe - netcoreapp3.0 - 7.1 - - - - - - - - - - - - - - - diff --git a/src/ProjectTemplates/Web.ProjectTemplates/GrpcService-CSharp.Server.csproj.in b/src/ProjectTemplates/Web.ProjectTemplates/GrpcService-CSharp.csproj.in similarity index 75% rename from src/ProjectTemplates/Web.ProjectTemplates/GrpcService-CSharp.Server.csproj.in rename to src/ProjectTemplates/Web.ProjectTemplates/GrpcService-CSharp.csproj.in index aa8b5a00e9..803aa9d83e 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/GrpcService-CSharp.Server.csproj.in +++ b/src/ProjectTemplates/Web.ProjectTemplates/GrpcService-CSharp.csproj.in @@ -5,8 +5,9 @@ - - + + + diff --git a/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj b/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj index 48fb6ce1d1..b18c56df2f 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj +++ b/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj @@ -14,7 +14,6 @@ GoogleProtobufPackageVersion=$(GoogleProtobufPackageVersion); GrpcAspNetCoreServerPackageVersion=$(GrpcAspNetCoreServerPackageVersion); - GrpcCorePackageVersion=$(GrpcCorePackageVersion); GrpcToolsPackageVersion=$(GrpcToolsPackageVersion); MicrosoftAspNetCoreMvcRazorRuntimeCompilationPackageVersion=$(MicrosoftAspNetCoreMvcRazorRuntimeCompilationPackageVersion); MicrosoftEntityFrameworkCoreSqlitePackageVersion=$(MicrosoftEntityFrameworkCoreSqlitePackageVersion); @@ -40,8 +39,7 @@ - - + diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json index 665a8e064c..fa79ef937f 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json @@ -18,24 +18,13 @@ }, "sourceName": "GrpcService-CSharp", "preferNameDirectory": true, - "guids": [ - "4C26868E-5E7C-458D-82E3-040509D0C71F", - "5990939C-7E7B-4CFA-86FF-44CA5756498A", - "650B3CE7-2E93-4CC4-9F46-466686815EAA" - ], "sources": [ { "modifiers": [ { "condition": "(ExcludeLaunchSettings)", "exclude": [ - "GrpcService-CSharp.Server/Properties/launchSettings.json" - ] - }, - { - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "exclude": [ - "GrpcService-CSharp.sln" + "Properties/launchSettings.json" ] } ] @@ -73,16 +62,7 @@ }, "primaryOutputs": [ { - "condition": "(HostIdentifier == \"dotnetcli\" || HostIdentifier == \"dotnetcli-preview\")", - "path": "GrpcService-CSharp.sln" - }, - { - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "path": "GrpcService-CSharp.Server/GrpcService-CSharp.Server.csproj" - }, - { - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "path": "GrpcService-CSharp.Client/GrpcService-CSharp.Client.csproj" + "path": "GrpcService-CSharp.csproj" } ], "defaultName": "GrpcService-CSharp1", diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Client/Program.cs b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Client/Program.cs deleted file mode 100644 index 85eb152614..0000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Client/Program.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading.Tasks; -using Greet; -using Grpc.Core; - -namespace GrpcService_CSharp -{ - public class Program - { - static async Task Main(string[] args) - { - // Include port of the gRPC server as an application argument - var port = args.Length > 0 ? args[0] : "50051"; - - var channel = new Channel("localhost:" + port, ChannelCredentials.Insecure); - var client = new Greeter.GreeterClient(channel); - - var reply = await client.SayHelloAsync(new HelloRequest { Name = "GreeterClient" }); - Console.WriteLine("Greeting: " + reply.Message); - - await channel.ShutdownAsync(); - - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.sln b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.sln deleted file mode 100644 index 929080211c..0000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.sln +++ /dev/null @@ -1,50 +0,0 @@ -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.27130.2027 -MinimumVisualStudioVersion = 15.0.26124.0 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrpcService-CSharp.Server", "GrpcService-CSharp.Server\GrpcService-CSharp.Server.csproj", "{650B3CE7-2E93-4CC4-9F46-466686815EAA}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrpcService-CSharp.Client", "GrpcService-CSharp.Client\GrpcService-CSharp.Client.csproj", "{5990939C-7E7B-4CFA-86FF-44CA5756498A}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|Any CPU = Release|Any CPU - Release|x64 = Release|x64 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Debug|x64.ActiveCfg = Debug|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Debug|x64.Build.0 = Debug|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Debug|x86.ActiveCfg = Debug|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Debug|x86.Build.0 = Debug|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Release|Any CPU.Build.0 = Release|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Release|x64.ActiveCfg = Release|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Release|x64.Build.0 = Release|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Release|x86.ActiveCfg = Release|Any CPU - {5990939C-7E7B-4CFA-86FF-44CA5756498A}.Release|x86.Build.0 = Release|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Debug|Any CPU.Build.0 = Debug|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Debug|x64.ActiveCfg = Debug|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Debug|x64.Build.0 = Debug|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Debug|x86.ActiveCfg = Debug|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Debug|x86.Build.0 = Debug|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Release|Any CPU.ActiveCfg = Release|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Release|Any CPU.Build.0 = Release|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Release|x64.ActiveCfg = Release|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Release|x64.Build.0 = Release|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Release|x86.ActiveCfg = Release|Any CPU - {650B3CE7-2E93-4CC4-9F46-466686815EAA}.Release|x86.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {4C26868E-5E7C-458D-82E3-040509D0C71F} - EndGlobalSection -EndGlobal diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/Program.cs b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/Program.cs similarity index 100% rename from src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/Program.cs rename to src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/Program.cs diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/Properties/launchSettings.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/Properties/launchSettings.json similarity index 100% rename from src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/Properties/launchSettings.json rename to src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/Properties/launchSettings.json diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/Services/GreeterService.cs b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/Services/GreeterService.cs similarity index 100% rename from src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/Services/GreeterService.cs rename to src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/Services/GreeterService.cs diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/Startup.cs b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/Startup.cs similarity index 85% rename from src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/Startup.cs rename to src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/Startup.cs index b91f9e1457..0bfe1586aa 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/Startup.cs +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/Startup.cs @@ -30,6 +30,8 @@ namespace GrpcService_CSharp app.UseEndpoints(endpoints => { + // Communication with gRPC endpoints must be made through a gRPC client. + // To learn how to create a client, visit: https://go.microsoft.com/fwlink/?linkid=2086909 endpoints.MapGrpcService(); }); } diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/appsettings.Development.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/appsettings.Development.json similarity index 100% rename from src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/appsettings.Development.json rename to src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/appsettings.Development.json diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/appsettings.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/appsettings.json similarity index 100% rename from src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/GrpcService-CSharp.Server/appsettings.json rename to src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/appsettings.json diff --git a/src/ProjectTemplates/test/GrpcTemplateTest.cs b/src/ProjectTemplates/test/GrpcTemplateTest.cs index 0d9a5ce803..82f4fc92e9 100644 --- a/src/ProjectTemplates/test/GrpcTemplateTest.cs +++ b/src/ProjectTemplates/test/GrpcTemplateTest.cs @@ -21,7 +21,7 @@ namespace Templates.Test public ProjectFactoryFixture ProjectFactory { get; } public ITestOutputHelper Output { get; } - [Fact(Skip = "https://github.com/aspnet/AspNetCore/issues/7973")] + [Fact] public async Task GrpcTemplate() { Project = await ProjectFactory.GetOrCreateProject("grpc", Output); @@ -35,36 +35,18 @@ namespace Templates.Test var buildResult = await Project.RunDotNetBuildAsync(); Assert.True(0 == buildResult.ExitCode, ErrorMessages.GetFailedProcessMessage("build", Project, buildResult)); - using (var serverProcess = Project.StartBuiltServerAsync()) + using (var serverProcess = Project.StartBuiltProjectAsync()) { Assert.False( serverProcess.Process.HasExited, - ErrorMessages.GetFailedProcessMessageOrEmpty("Run built server", Project, serverProcess.Process)); - - using (var clientProcess = Project.StartBuiltClientAsync(serverProcess)) - { - // Wait for the client to do its thing - await Task.Delay(100); - Assert.False( - clientProcess.Process.HasExited, - ErrorMessages.GetFailedProcessMessageOrEmpty("Run built client", Project, clientProcess.Process)); - } + ErrorMessages.GetFailedProcessMessageOrEmpty("Run built service", Project, serverProcess.Process)); } - using (var aspNetProcess = Project.StartPublishedServerAsync()) + using (var aspNetProcess = Project.StartPublishedProjectAsync()) { Assert.False( aspNetProcess.Process.HasExited, - ErrorMessages.GetFailedProcessMessageOrEmpty("Run published server", Project, aspNetProcess.Process)); - - using (var clientProcess = Project.StartPublishedClientAsync()) - { - // Wait for the client to do its thing - await Task.Delay(100); - Assert.False( - clientProcess.Process.HasExited, - ErrorMessages.GetFailedProcessMessageOrEmpty("Run built client", Project, clientProcess.Process)); - } + ErrorMessages.GetFailedProcessMessageOrEmpty("Run published service", Project, aspNetProcess.Process)); } } }