Releases: Azure/azure-signalr
Releases · Azure/azure-signalr
Release v1.16.0
Features
- Support the customization of endpoints for servers to connect to ASRS in code or config. #1564
Users have two ways to setserverEndpoint
orclientEndpoint
.- Option 1: in connection string:
serverEndpoint=...
- Option 2: in the ctor of
ServiceEndpoint
:new ServiceEndpoint(new Uri(endpoint), new DefaultAzureCredential()) { ClientEndpoint = clientEndpoint, ServerEndpoint = serverEndpoint }
- Option 1: in connection string:
- Allow customization of endpoints for clients to connect to ASRS in code.#1564 See the code sample above.
- Expose connection capacity in metrics of ServiceEndpoint #1567
- Change the default endpoint router from random to weighted random #1568
Fixes
- Fix the message order problem with multiple service connections. #1571
Release v1.15.2
Fixes
- Fix the bug that Management SDK connection count is fixed to 3
RestClient
SetStatusCode
onHttpRequestException
on .NET 5 or above runtime.
Release v1.15.1
Release v1.15.0
Fixes
- Fix negotiation error when using AAD and multiple endpoints. #1530
- Fix
Newtonsoft.Json
version conflicts which might cause some failures such as AAD auth and REST API calls. #1520 - Fix a bug in the
RestClient
that causes REST API calls error. #1519 - Fix security issues by updating package versions:
Microsoft.AspNetCore.Http
2.1.0 -> 2.1.22,Microsof.tAspNetCore.Http.Connections
1.0.0 -> 1.0.15,Microsoft.AspNetCore.WebSockets
2.1.0 -> 2.1.7,System.Net.WebSockets.WebSocketProtocol
4.5.0 -> 4.5.3
Release v1.14.0
Known issue with this version
- We have a bug in this version that would affect:
- AAD authentication
- In Management SDK Transient transport type (the default one) : group management (such as adding users to groups, removing users from groups), client management (such as checking if user is in group).
Management SDK
- In persistent mode, adding a user to a group, removing a user from a group, removing a user from all groups are confirmed to be finished once the methods in
ServiceHubContext.UserGroups
are returned. - Supports a more flexible way to customize JSON serialization. You can use
ServiceManagerOptions.UseJsonObjectSerializer(...)
method to specify a JSON object serializer.System.Text.Json
orNewtonsoft.Json
are both supported. See Customizing Json Serialization in Management SDK for details.
Release v1.13.0
Server SDK and Management SDK
- Attempt to fix timeout when adding to group: change ackable messages to go through random connections to reduce the burden of a single connection. #1492
Management
- Now you can get a hub context for a strongly typed hub. See details here.
Release v1.12.0
Features
Server SDK
- You can use
ServiceOptions.TransportTypeDetector
to set theHttpTransportType
for your SignalR clients. #1469
Management SDK
- In persistent transport type, adding a user to group is no more a "fire-and-forget" action now. When the task finishes, the user is in the group.
Protocols
- New
CloseWithAckMessage
types are added, including subclassesCloseMultiConnectionsWithAckMessage
,CloseConnectionWithAckMessage
,CloseConnectionsWithAckMessage
,CloseUserConnectionsWithAckMessage
,CloseGroupConnectionsWithAckMessage
.
Release v1.11.0
Features
Management SDK
ServiceHubContext
now implementsIDisposable
.- All methods in
ServiceHubContext.ClientManager
are supported with persistent transport type. - Remove limitation on setting
ServiceManagerOptions.ServiceEndpoints
with transient transport type. Now no matter what transport type is, you can useDefaultAzureCredential
as follows:
var serviceManager = new ServiceManagerBuilder().WithOptions(option =>
{
option.ServiceEndpoints = new ServiceEndpoint[] { new ServiceEndpoint(new Uri("https://<your-signalr-name>.service.signalr.net"), new DefaultAzureCredential()) };
})
.BuildServiceManager();
Protocol
- Add more property to GroupBroadcastMessage (#1429)
Bug fixes
- Fix a bug in
ServiceManager.IsServiceHealthy
that throws exception. (#1430)
Release v1.10.0
Features
- Management SDK publishes a new set of APIs to replace the old APIs mainly to support multiple Azure SignalR instances, but the new set of APIs also provide additional benefits.
- Check Migration guide from version 1.9.x and below to 1.10.0 for migration benefits and steps.
- For users who haven't used Management SDK before, you can read this doc directly for an introduction about Management SDK.
ServiceManagerBuilder.Build()
,IServiceManagerBuilder
are obsolete.
- SDK client will also send
AccessKey
request via server connection when using aad auth. [ #1361 ] - Add
ServiceEndpoint
constructor for aad scenario.var endpoint = new ServiceEndpoint(new Uri("https://canary-aad-test.service.signalr.net"), new DefaultAzureIdentity());
ServiceEndpoint.Endpoint
will convert its hostname into lowercase even when the given hostname is in uppercase. It will also influence the generated accessToken and URL. RFC4343ServiceEndpoint.Endpoint
will automatically add a port postfix if port=xxx was in the connection string and was not equal to 80 when HTTP or 443 when HTTPS.- According to 5, endpoints with the same hostname but have different ports will NOT be considered equal.
Bug fixes
- Fix a bug that will let migrated connections dropped unexpectedly when the app task on the old server could not stop immediately. [ #1376 ]
Known issues:
- In Management SDK / Serverless SDK,
ServiceHubContext.ClientManager
is not ready withPersistent
transport type.