GRPC Conflicts with NuGet packages
DrGriff opened this issue · 1 comments
Description
I have an Azure Function with the following NuGet packages:
<PackageReference Include="Azure.Extensions.AspNetCore.Configuration.Secrets" Version="1.3.2" />
<PackageReference Include="Azure.Identity" Version="1.13.0" />
<PackageReference Include="Microsoft.Azure.Functions.Worker" Version="1.23.0" />
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Http" Version="3.2.0" />
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore" Version="1.3.2" />
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.ServiceBus" Version="5.22.0" />
<PackageReference Include="Microsoft.Azure.Functions.Worker.Sdk" Version="1.18.1" />
<PackageReference Include="Microsoft.ApplicationInsights.WorkerService" Version="2.22.0" />
<PackageReference Include="Microsoft.Azure.Functions.Worker.ApplicationInsights" Version="1.4.0" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.1" />
<PackageReference Include="Microsoft.Extensions.Http.Resilience" Version="8.10.0" />
When I compile I get the following warning:
Severity Code Description Project File Line Suppression State Details
Warning (active) Grpc.Net.ClientFactory 2.63.0 or earlier could cause issues when used together with Microsoft.Extensions.Http.Resilience. For more details, see https://learn.microsoft.com/dotnet/core/resilience/http-resilience#known-issues. Consider using Grpc.Net.ClientFactory 2.64.0 or later. To suppress the warning set SuppressCheckGrpcNetClientFactoryVersion=true.
I tracked this down to the Microsoft.Azure.Functions.Worker
package (1.23.0) having a dependency on Microsoft.Azure.Functions.Worker.Grpc
(>= 1.17.0) that in turn has references to:
- Grpc.Core.Api 2.60.0
- Grpc.Net.Client 1.60.0
- Grpc.Net.ClientFactory 2.60.0
- Grpc.Net.Common 2.60.-
As per the warning message, could these be updated to latest (or at least 2.64.0).
Steps to reproduce
Apply the relevant NuGet packages to a .NET 8 Azure Function in Visual Studio, compile and see the warning.
@DrGriff you can pin to higher versions of gRPC package yourself by adding these lines to your project:
<PackageReference Include="Grpc.Net.ClientFactory" Version="..." />
Additionally, we have updated these references in the 2.0 versions of our packages.