Search code examples
c#nugetbotframeworknuget-packagebot-framework-composer

Bot Framework Package versions mismatch has broken Bot


Went to deploy my bot via Bot Framework Composer & got the following fail output:

    Build FAILED.

C:\Temp\15-12-22 Bot\15-12-22 Bot\CPMBot\CPMBot.csproj : warning NU1701: Package 'Microsoft.Azure.KeyVault.Core 1.0.0' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8, .NETFramework,Version=v4.8.1' instead of the project target framework '.NETCoreApp,Version=v3.1'. This package may not be fully compatible with your project.
C:\Temp\15-12-22 Bot\15-12-22 Bot\CPMBot\CPMBot.csproj : error NU1605: Detected package downgrade: Microsoft.Bot.Builder.Dialogs.Adaptive.Runtime from 4.17.1 to 4.16.0. Reference the package directly from the project to select a different version. 
C:\Temp\15-12-22 Bot\15-12-22 Bot\CPMBot\CPMBot.csproj : error NU1605:  CPMBot -> Microsoft.Bot.Components.Recognizers.CustomQuestionAnsweringRecognizer 0.0.1-preview.20221207.d820abf -> Microsoft.Bot.Builder.Dialogs.Adaptive.Runtime (>= 4.17.1) 
C:\Temp\15-12-22 Bot\15-12-22 Bot\CPMBot\CPMBot.csproj : error NU1605:  CPMBot -> Microsoft.Bot.Builder.Dialogs.Adaptive.Runtime (>= 4.16.0)
    1 Warning(s)
    1 Error(s)

Did some Google Fu and tried to update the packages via Nuget Package Manager in Visual Studio but they kept failing.

In the end I changed the version number in the bot .csproj file.

All tested in Emulator and working fine.

Provisioned the bot & the build process ran successfully, however, my app service will no longer start successfully & I am getting 503 errors when trying to communicate with the Bot.

I can not deploy my old version as I get the same error message as above.

Any help would be much appreciated.

Many thanks


Solution

  • Issue now solved. As per comment, targeted .net6.

    CSProj file now reads:

    <Project Sdk="Microsoft.NET.Sdk.Web">
      <PropertyGroup>
        <TargetFramework>net6.0</TargetFramework>
        <AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>
        <UserSecretsId>76555d6e-c9a5-49c0-bcda-67d0f957fc1d</UserSecretsId>
      </PropertyGroup>
      <ItemGroup>
        <Content Include="**/*.blu;**/*.dialog;**/*.lg;**/*.lu;**/*.model;**/*.onnx;**/*.qna;**/*.txt" Exclude="$(BaseOutputPath)/**;$(BaseIntermediateOutputPath)/**;wwwroot/**">
          <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
      </ItemGroup>
      <ItemGroup>
        <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.8" />
        <PackageReference Include="Microsoft.Bot.Builder.AI.Luis" Version="4.18.1" />
        <PackageReference Include="Microsoft.Bot.Builder.AI.QnA" Version="4.18.1" />
        <PackageReference Include="Microsoft.Bot.Builder.Dialogs.Adaptive.Runtime" Version="4.18.1" />
        <PackageReference Include="Microsoft.Bot.Components.Graph" Version="1.4.0" />
        <PackageReference Include="Microsoft.Bot.Components.HelpAndCancel" Version="1.4.0" />
      </ItemGroup>
    </Project>