botbuilder-dotnet icon indicating copy to clipboard operation
botbuilder-dotnet copied to clipboard

Updating to 4.23 BotBuilder fails

Open ladeak opened this issue 6 months ago • 5 comments

I am using

Bot.Builder.Community.Adapters.Alexa Version=4.13.5 Microsoft.Bot.Builder.Dialogs Version=4.22.9 Microsoft.Bot.Builder.Integration.AspNet.Core Version=4.22.9

When updating the bot to 4.23.0 the Alexa integration starts to fail with not being able to load apative cards:

System.IO.FileNotFoundException: Could not load file or assembly 'AdaptiveCards, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. The system cannot find the file specified.
File name: 'AdaptiveCards, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
   at Bot.Builder.Community.Adapters.Shared.MarkdownToPlaintextRenderer.Render(String source)
   at Bot.Builder.Community.Adapters.Alexa.Core.AlexaRequestMapper.NormalizeActivityText(String textFormat, String text, Boolean forSsml)
   at Bot.Builder.Community.Adapters.Alexa.Core.AlexaRequestMapper.MergeActivities(IList`1 activities)
   at Bot.Builder.Community.Adapters.Alexa.AlexaAdapter.ProcessOutgoingActivities(List`1 activities)
   at Bot.Builder.Community.Adapters.Alexa.AlexaAdapter.ProcessAlexaRequestAsync(SkillRequest alexaRequest, BotCallbackHandler logic)
   at Bot.Builder.Community.Adapters.Alexa.AlexaAdapter.ProcessAsync(HttpRequest httpRequest, HttpResponse httpResponse, IBot bot, CancellationToken cancellationToken)

It seems the latest package requires AdaptiveCards 3.1.0 which is failing with Bot.Builder.Community.Adapters.Alexa

ladeak avatar May 30 '25 20:05 ladeak

Thank you for raising your issue. We will check this and will get back to you shortly.

keshavk-msft avatar Jun 02 '25 05:06 keshavk-msft

Hi @ladeak, This issue occurs because Bot.Builder.Community.Adapters.Alexa v4.13.5 depends on AdaptiveCards v2.7.0, but Microsoft.Bot.Builder.Dialogs v4.23.0 and related packages require AdaptiveCards v3.1.0. These versions are not compatible, causing the FileNotFoundException.

How to resolve:

Downgrade Bot Framework packages: Use Microsoft.Bot.Builder.Dialogs and related packages at v4.22.x to match your Alexa adapter version.

Upgrade Alexa Adapter (if possible): Check if a newer version of Bot.Builder.Community.Adapters.Alexa is available that supports AdaptiveCards v3.x. If not, you may need to wait for an update or contribute a fix.

Force install AdaptiveCards v2.7.0: As a workaround, you can try forcing AdaptiveCards v2.7.0 in your project, but this may break other dependencies that require v3.1.0.

Recommendation: Keep all Bot Framework and community adapter packages at compatible versions (e.g., 4.22.x) until the Alexa adapter is updated for 4.23.x and AdaptiveCards v3.x.

keshavk-msft avatar Jun 02 '25 09:06 keshavk-msft

Ok, thank you for the suggestion. I have the impression that the community based alexa package has not really been maintainer anymore. Or is that not the case?

ladeak avatar Jun 02 '25 09:06 ladeak

You are correct—Bot.Builder.Community.Adapters.Alexa has not seen active maintenance recently. The GitHub repository shows limited activity, with the last commits and pull requests dating back to 2022. There are also several open issues and pull requests that have not been addressed.

keshavk-msft avatar Jun 02 '25 10:06 keshavk-msft

Thank you, I will remain on 4.22.9 as suggested, but not sure if I have a good update path forward.

Thank you for the investigation, feel free to close the issue.

ladeak avatar Jun 02 '25 11:06 ladeak