Releases: microsoft/botbuilder-dotnet
Bot Framework DotNet SDK 4.20.1
Welcome to the July 2023 patch release of the Bot Framework SDK.
What's Changed
- Add WithAuthority to MSAL client application builder in #6671
- Upgrade ANTLR to version 4.11.1 in Microsoft.Bot.Builder.Parsers.LU project in #6670
- Use LRUCache in ExpressionParser for efficient memory usage in #6667
- Updated NuGet.Packaging in #6652
- Microsoft.Rest.ClientRuntime from 2.3.21 to 2.3.24 in #6662
Bot Framework DotNet SDK 4.20.0
This is the June 2023 release of the DotNet SDK. This release contains Teams features and bug/security fixes.
What's Changed
Teams
- Support MeetingTabIconSurface in Meeting Notification API by @yingduyingdu in #6621
- Add support for Teams Adaptive cards in QnA Dialog by @anishprasad01 in #6625
- [#6086] Teams is adding support for suggested actions in 1-1 chats by @ceciliaavila in #6607
- Fix class structure for meeting notification feature extensibility by @yingduyingdu in #6579
- [#6596] TeamsChannelData need OnBehalfOf by @ceciliaavila in #6609
Other
- [#6589] Default to MSAL and eliminate ADAL without breaking changes by @sw-joelmut in #6605
- Fix cast issue in SendHandoffActivity action by @ceciliaavila in #6575
- [#6563] Expired JWT token exception not being handled by @erquirogasw in #6572
- Added log to ProcessAsync method in CloudAdapter.cs. by @erquirogasw in #6587
- [#6582, #6584] Incorrect serialization of state when using Blob or CosmosDB storage in v4.19.x by @sw-joelmut in #6585
- Removed MyGet instructions by @tracyboehrer in #6588
- [#6591] Concurrency issue with TimeZoneConverter by @ceciliaavila in #6593
- Disabled warning CA1507 in Parsers.LU by @tracyboehrer in #6600
- [#6590] Error while saving bot state to azure blob storage by @sw-joelmut in #6595
- [#6558] Update to ANTLR 4.11 to compensate for breaking changes between versions by @sw-joelmut in #6586
- Bump minimatch and replace in /libraries/Swagger by @dependabot in #6601
- fix: Custom Question Answering in MS Teams by @anishprasad01 in #6603
- [#6616] Telemetry not logging ActivityID and ConversationID by @erquirogasw in #6620
- USER scope variable values do not transfer to skill when SSO is configured by @ceciliaavila in #6612
- [#6560] Allow TokenCredential authentication in CosmosDbPartitionedStorage by @ceciliaavila in #6614
- [#5820] Outgoing Activity Locale being Overwritten by @ceciliaavila in #6629
- [#6624] port: [#4452][#4456][#4460][botframework-streaming] Should reject pending requests on disconnection by @ceciliaavila in #6627
- [#5577] BotFrameworkClientImpl.PostActivityAsync() doesn't support null fromBotId and toBotId values by @ceciliaavila in #6626
- [#6588] UserId not being passed to AzureDiagnostics by @sw-joelmut in #6623
- [#6628] port [#4449] CloudAdapter always builds Connector with MicrosoftAppCredentials (never CertificateAppCredentials) -- certificate auth flow broken by @sw-joelmut in #6631
- [#6346] Add Azure Storage (BlobStorage.cs) using a managed identity by @ceciliaavila in #6636
- Allow sending GET requests with a body by @ceciliaavila in #6633
New Contributors
- @erquirogasw made their first contribution in #6572
Full Changelog: 4.19.0...4.20.0
Bot Framework DotNet SDK 4.19.3
Welcome to the February 2023 patch release of the Bot Framework SDK.
What's Changed
- Concurrency issue with TimeZoneConverter #6593
Bot Framework DotNet SDK 4.19.2
Bot Framework DotNet SDK 4.19.1
Welcome to the January 2023 patch release of the Bot Framework SDK. This release has been focused on bug fixes.
What's Changed
- Fix cast issue in SendHandoffActivity action #6575
- Expired JWT token exception not being handled #6572
Full Changelog: 4.19.0...4.19.1
Bot Framework DotNet SDK 4.19.0
Welcome to the January 2023 release of the Bot Framework SDK. This release has been focused on bug fixes and general improvements.
What's Changed
Teams
- Support Teams message edit, message soft delete, message undelete activities by @yingduyingdu in #6564
- Support bot sdk dot net for targeted meeting notification by @yingduyingdu in #6570
Other
- Fix CodeQL alert SM01507: Client-side URL redirect by @ceciliaavila in #6538
- Added tsaoptions.json by @tracyboehrer in #6539
- Corrected TSAEnabled key case by @tracyboehrer in #6541
- [#6511] CodeQL alert SM02200: Weak hmacs - Suppress alert for WebexClientWrapper by @ceciliaavila in #6540
- [#6542] Applying BotMessageSerializerSettings.MaxDepth doesn't seem to work by @ceciliaavila in #6546
- Fix CodeQL SM02211 alert by @sw-joelmut in #6548
- [#6512] CodeQL alert SM00431: Information exposure through an exception by @sw-joelmut in #6544
- Fix CodeQL alert SM03926: Security sensitive JsonWebTokenHandler validations are disabled by @ceciliaavila in #6550
- Fix CodeQL SM02211 alert - SerializationBinder by @sw-joelmut in #6549
- Removed some lingering NewtonSoft <13 references by @tracyboehrer in #6556
- [#6510] Suppress CodeQL SM03926 alerts by @ceciliaavila in #6555
- [#6531] Prompt validation of confirm prompt in chatbot is not working for newly added language by @ceciliaavila in #6554
- [CodeQL] Fix remaining SM00431 alerts by @ceciliaavila in #6561
- Update ESRP signing task to v2 by @BruceHaley in #6566
New Contributors
- @yingduyingdu made their first contribution in #6564
Full Changelog: 4.18.1...4.19.0
Bot Framework DotNet SDK 4.18.1
Welcome to the October 2022 release of the Bot Framework SDK. This release has been focused on bug fixes and general improvements.
What's Changed
Teams
- Add new handler for anonymous query link invoke by @daseong-ms in #6524
- Ensure TeamsChannelData is supplied to ChannelData by @ramfattah in #6477
General bug fixes and maintenance
- Fix NamedPipe reconnection in #6526
- Updated Microsoft.ApplicationInsights.AspNetCore in #6529
- Enable CodeQL in pipelines (compliance) by @tracyboehrer in #6473
- Bumped generator dependency versions by @tracyboehrer in #6527
New Contributors
- @daseong-ms made their first contribution in #6524
Full Changelog: 4.17.2...4.18.1
Bot Framework DotNet SDK 4.17.2
Welcome to the September 2022 release of the Bot Framework SDK. This release has been focused on bug fixes and general improvements.
What's Changed
- Support passing sas token url's for token service by @swagatmishra2007 in #6449
- [#6434] Priority broken for RegexRecognizer by @ceciliaavila in #6435
- [#5800] AdaptiveExpression Bool function is not very useful because it doesn't convert anything but ints by @ceciliaavila in #6431
- [#6354] isMatch adaptive expression returns error when value is null or empty string by @sw-joelmut in #6426
- [#6430] Adaptive ForEachElement does not exit when child action CancelAllDialogs is called by @ceciliaavila in #6452
- [#6432] TeamsInfo.GetMemberAsync(...) doesn't work properly in Skill Bot scenario, it returns http 405 error by @ceciliaavila in #6443
- [#6433] Error in AdaptiveDialog.ContinueActionAsync with native dialog SDK by @sw-joelmut in #6444
- [ #6459] Typing indicator shown after bot has replied
- [#6446] TeamsInfo GetTeamChannelsAsync, GetTeamDetailsAsync don't pass along the cancellation token
Full Changelog: 4.17.1...4.17.2
Bot Framework DotNet SDK 4.17.1
Welcome to the July 2022 release of the Bot Framework SDK. This release has been focused on bug fixes and general improvements.
Required changes to existing bots
CosmosDB
This release removed the deprecated CosmosDBStorage and CosmosDBStorageOptions class. Existing bots should use CosmosDBPartitionedStorage and CosmosDBPartitionedStorageOptions instead.
NewtonSoft v13
The update to v13 can cause issues due to NewtonSoft v13 defaulting to a lower MaxDepth than v12. This can cause exceptions while processing some payloads, especially when using Adaptive Dialogs. The following change should be made in your bots Startup.cs to set the MaxDepth to a higher value
services.AddHttpClient().AddControllers().AddNewtonsoftJson(options =>
{
options.SerializerSettings.MaxDepth = HttpHelper.BotMessageSerializerSettings.MaxDepth;
});
What's Changed
Teams
- Add support for search invoke by @EricDahlvang in #6272
- Add settings.selectedChannel to TeamsChannelData and Type to ChannelInfo and TeamDetails by @EricDahlvang in #6360
- MeetingDetails dates are nullable by @EricDahlvang in #6337
- Add Teams read receipt event by @EricDahlvang in #6356
What's Changed
- Update README by @mrivera-ms in #6279
- Log error message from Streaming web socket response. by @msomanathan in #6283
- Do not check for streaming activity if ServiceUrl is null. by @msomanathan in #6282
- Update WebApi projects target framework to 4.7.2. by @mrivera-ms in #6285
- Add missing badges for 4 packages to readme by @BruceHaley in #6294
- Updated generator BF dependency versions by @tracyboehrer in #6295
- Fix sku values in ARM template by @BruceHaley in #6309
- Update pipeline to coveralls.net v 3.0.0 by @BruceHaley in #6310
- Add oAuthEndpoint to _oAuthClients cache key by @craigjensen in #6298
- [#6229] Add descriptions to ARM template parameters files by @ceciliaavila in #6316
- Add ApplicationName to CosmosDb client options for UserAgent by @EricDahlvang in #6321
- Fix create-botbuilder-parity-issues.yml workflow by @BruceHaley in #6322
- Handle DialogEvents.RepromptDialog in ForEachElement by @EricDahlvang in #6325
- BotBuilder-DotNet-Webex-Functional-Test-yaml intermittently fails by @BruceHaley in #6326
- Fix task 'Verify publish compat results success' by @BruceHaley in #6329
- [#6292] Add unit tests for AzureBlobStorage by @ceciliaavila in #6301
- [#5678] Channels "enumeration" is out of date by @ceciliaavila in #6314
- Changed min requirements for some libraries in the netstandard targetets by @gabog in #6341
- [#6339] Mark deprecated channels as obsolete in Channels enum by @ceciliaavila in #6343
- [#6292] Add unit tests to cover AzureBlobTranscriptStore by @ceciliaavila in #6311
- [#6292] Update CosmosDbPartitionedStorage from Functional to Unit tests by @sw-joelmut in #6302
- [#6292] Update CosmosDbStorage from Functional to Unit tests by @sw-joelmut in #6303
- [#6292] Update Blobs from Functional to Unit tests by @sw-joelmut in #6304
- [#6292] Update Azure Queues from Functional to Unit tests by @sw-joelmut in #6305
- [#5837] Fix sentiment values not being set for None / Unknown intent by @sw-joelmut in #6348
- Retrieve luis recognizer options from DialogContext.State by @EricDahlvang in #6331
- [#6265] NullReferenceException when passing dialog name as variable to Microsoft.BeginDialog by @sw-joelmut in #6338
- [#5977] Update projects to .Net 6 by @ceciliaavila in #6332
- [#5977] Update projects to .Net 6 - Functional Test pipelines by @ceciliaavila in #6333
- [#6292] Remove Azure Functional tests by @ceciliaavila in #6353
- Fix AzureBlobTranscriptStore tests - The specified blob does not exist by @ceciliaavila in #6361
- Add QnAId in value attribute of multi-turn prompts. by @Arsh-Kashyap in #6352
- [#6323] Update generators and vsix to target Net 6 by default by @ceciliaavila in #6334
- Multiple voice tags can now be added in speak field by @ramfattah in #6315
- [#5766] Choice options separator should be multi language by @ceciliaavila in #6366
- Remove unnecessary using directive by @ramfattah in #6362
- [#6392] Bump Newtonsoft.Json from 12.0.3 to 13.0.1 by @ceciliaavila in #6395
- [#6367] Telemetry not working inside child dialogs using latest Adaptive Runtime by @sw-joelmut in #6391
- [#6368] SDK uses deprecated Microsoft.Azure.DocumentDB.Core library by @ceciliaavila in #6370
- [#6392] Bump Newtonsoft.Json from 12.0.3 to 13.0.1 - Set MaxDepth property (1/4) by @ceciliaavila in #6397
- [#6392] Bump Newtonsoft.Json from 12.0.3 to 13.0.1 - Set MaxDepth property (2/4) by @ceciliaavila in #6398
- [#6392] Bump Newtonsoft.Json from 12.0.3 to 13.0.1 - Set MaxDepth property (3/4) by @ceciliaavila in #6399
- [#6392] Bump Newtonsoft.Json from 12.0.3 to 13.0.1 - Set MaxDepth property (4/4) by @ceciliaavila in #6400
- fix: MeetingDetails dates are nullable by @EricDahlvang in #6337
- Fix PublishToCoveralls.ps1 for Windows 2022 by @BruceHaley in #6369
- Add settings.selectedChannel to TeamsChannelData and Type to ChannelInfo and TeamDetails by @EricDahlvang in #6360
- minor: ConversationAccount/IsGroup: Correct typo in docs. by @juharris in #6401
- Add Teams read receipt event by @EricDahlvang in #6356
- Use ActionScope.Actions in ForEachElement by @EricDahlvang in #6394
- Setting NewtonSoft MaxDepth in generators by @tracyboehrer in #6406
- Testing narrow appinsights update by @gabog in #6410
- Catch HttpRequestException in HttpRequest by @EricDahlvang in #6404
- Lowered AppInsights requirements by @gabog in #6412
- [#6355] ContinueDialog fails to find dynamically loaded dialog after bot restart by @sw-joelmut in #6365
- fix for #6407 and #6350 - check existence of blob before uploading to… by @rmt2021 in #6411
- Revert "Multiple voice tags can now be added in speak field (#6315)" by @tracyboehrer in #6402
- feat: update deployment template by @woasishen in #6358
- Corrected VSIX ARM template readmes and project templates to include … by @tracyboehrer in #6418
- [#6306] NamedPipe could not reconnect correctly when disconnected unexpectedly by @ceciliaavila in #6416
- Reasonable ARM Template readme formatting by @tracyboehrer in #6420
- Bump Azure.Storage.Blobs from 12.8.0 to 12.13.0 in /libraries/Microsoft.Bot.Builder.Azure.Blobs by @dependabot in #6424
- Bump Azure.Storage.Queues from 12.3.2 to 12.11.0 in /libraries/Microsoft.Bot.Builder.Azure.Queues by @dependabot in #6423
New Contributors
- @craigjensen made their first contribution in #6298
- @juharris made ...