mattfrear/Swashbuckle.AspNetCore.Filters

Bump version of dependency Swashbuckle.AspNetCore.SwaggerGen to be compatible with recent Swashbuckle versions

TomBruns opened this issue · 4 comments

Resolve Unable to satisfy conflicting requests for 'Swashbuckle.AspNetCore.SwaggerGen'

These packages:
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.5.0" />
<PackageReference Include="Swashbuckle.AspNetCore.Annotations" Version="6.5.0" />
<PackageReference Include="Swashbuckle.Core" Version="5.6.0" />
  depend on Swashbuckle.AspNetCore.SwaggerGen (>= 6.5.0)

This package:
<PackageReference Include="Swashbuckle.AspNetCore.Filters" Version="7.0.6" />		
 depends on Swashbuckle.AspNetCore.SwaggerGen (>= 5.0.0)

The request is to bump the Swashbuckle.AspNetCore.SwaggerGen dependency from 5.0.0 to 6.5.0 in this nuget package

Hi Tom

I don't get it. If my package (Swashbuckle.AspNetCore.Filters) wants to use Swashbuckle.AspNetCore.SwaggerGen (>= 5.0.0), then it should be happy to use Swashbuckle.AspNetCore.SwaggerGen 6.5.0, since 6.5.0 is greater than 5.0.0. Or am I mistaken?

Are you seeing some sort of error?

Does it work if you install Swashbuckle.AspNetCore.SwaggerGen 6.5.0?

I'm reluctant to force an upgrade to the latest version, because doing that will force my consumers to upgrade to the latest - and they might already be happy using Swashbuckle.AspNetCore.SwaggerGen 5.0.0.

Adding a direct ref to Swashbuckle.AspNetCore.SwaggerGen 6.5.0 DID NOT resolve the issue

The issue is brought in by a project reference to a POCO assy that uses Swashbuckle.AspNetCore.Filters

Here is the error I am facing

Unable to satisfy conflicting requests for 'Swashbuckle.AspNetCore.SwaggerGen':
Swashbuckle.AspNetCore.SwaggerGen (>= 6.5.0) (via package/Swashbuckle.AspNetCore.Annotations 6.5.0),
Swashbuckle.AspNetCore.SwaggerGen (>= 6.5.0) (via package/Swashbuckle.AspNetCore 6.5.0),
Swashbuckle.AspNetCore.SwaggerGen (>= 5.0.0) (via package/Swashbuckle.AspNetCore.Filters 7.0.6),
Swashbuckle.AspNetCore.SwaggerGen (>= 5.0.0) (via package/Swashbuckle.AspNetCore.Filters 7.0.6),
Swashbuckle.AspNetCore.SwaggerGen (>= 5.0.0) (via package/Swashbuckle.AspNetCore.Filters 7.0.6),
Swashbuckle.AspNetCore.SwaggerGen (>= 5.0.0) (via package/Swashbuckle.AspNetCore.Filters 7.0.6),
Swashbuckle.AspNetCore.SwaggerGen (>= 5.0.0) (via package/Swashbuckle.AspNetCore.Filters 7.0.6)
Framework: (.NETCoreApp,Version=v7.0) xxx.WebAPI

Error NU1106 Unable to satisfy conflicting requests for 'Swashbuckle.AspNetCore.Swagger':
Swashbuckle.AspNetCore.Swagger (>= 6.5.0) (via package/Swashbuckle.AspNetCore 6.5.0),
Swashbuckle.AspNetCore.Swagger (>= 6.5.0) (via package/Swashbuckle.AspNetCore.SwaggerGen 6.5.0),
Swashbuckle.AspNetCore.Swagger (>= 5.0.0) (via package/Swashbuckle.AspNetCore.SwaggerGen 5.0.0),
Swashbuckle.AspNetCore.Swagger (>= 5.0.0) (via package/Swashbuckle.AspNetCore.SwaggerGen 5.0.0),
Swashbuckle.AspNetCore.Swagger (>= 5.0.0) (via package/Swashbuckle.AspNetCore.SwaggerGen 5.0.0),
Swashbuckle.AspNetCore.Swagger (>= 5.0.0) (via package/Swashbuckle.AspNetCore.SwaggerGen 5.0.0),
Swashbuckle.AspNetCore.Swagger (>= 5.0.0) (via package/Swashbuckle.AspNetCore.SwaggerGen 5.0.0)
Framework: (.NETCoreApp,Version=v7.0) xxx.WebAPI

Here are the dependencies of the project that cannot compile

	<ItemGroup>
		<PackageReference Include="Asp.Versioning.Mvc" Version="6.4.0" />
		<PackageReference Include="Asp.Versioning.Mvc.ApiExplorer" Version="6.4.0" />
		<PackageReference Include="Macross.Json.Extensions" Version="3.0.0" />
		<PackageReference Include="Swashbuckle.AspNetCore" Version="6.5.0" />
		<PackageReference Include="Swashbuckle.AspNetCore.Annotations" Version="6.5.0" />
		<PackageReference Include="Swashbuckle.Core" Version="5.6.0" />
	</ItemGroup>

You should definitely remove Swashbuckle.Core - that's the old .NET Framework version.

I'm reluctant to bump the version otherwise I'll have to bump versions every time a new version of Swashbuckle.AspNetCore is released. If I get a chance I'll try reproduce your issue, but don't hold your breath.