Skip to content

Releases: Azure/azure-signalr

Release v1.16.0

08 Mar 08:09
19b81ca
Compare
Choose a tag to compare

Features

  • Support the customization of endpoints for servers to connect to ASRS in code or config. #1564
    Users have two ways to set serverEndpoint or clientEndpoint.
    • Option 1: in connection string: serverEndpoint=...
    • Option 2: in the ctor of ServiceEndpoint:
      new ServiceEndpoint(new Uri(endpoint), new DefaultAzureCredential())
      {
          ClientEndpoint = clientEndpoint,
          ServerEndpoint = serverEndpoint
      }
  • 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

22 Feb 10:09
7e51478
Compare
Choose a tag to compare

Fixes

  • Fix the bug that Management SDK connection count is fixed to 3
  • RestClient Set StatusCode on HttpRequestException on .NET 5 or above runtime.

Release v1.15.1

15 Feb 05:30
74ec5cc
Compare
Choose a tag to compare

Fixes

  • Fix dismatch behavior of empty userIs in IHubContext<THub, T>.Clients.Users(userIds).Method, between AspNetCore SignalR and SignalR service SDK #1544

Improvements

  • Improve cross-project debug experience by enabling source link. #1546

Release v1.15.0

13 Jan 07:30
6e1dff1
Compare
Choose a tag to compare

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

27 Dec 09:07
bcebc9c
Compare
Choose a tag to compare

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 or Newtonsoft.Json are both supported. See Customizing Json Serialization in Management SDK for details.

Release v1.13.0

09 Nov 08:58
2ceca1c
Compare
Choose a tag to compare

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

Release v1.12.0

22 Oct 06:56
948e9a1
Compare
Choose a tag to compare

Features

Server SDK

  • You can use ServiceOptions.TransportTypeDetector to set the HttpTransportType 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 subclasses CloseMultiConnectionsWithAckMessage, CloseConnectionWithAckMessage, CloseConnectionsWithAckMessage, CloseUserConnectionsWithAckMessage, CloseGroupConnectionsWithAckMessage.

Release v1.11.0

09 Sep 05:48
1080847
Compare
Choose a tag to compare

Features

Management SDK

  1. ServiceHubContext now implements IDisposable.
  2. All methods in ServiceHubContext.ClientManager are supported with persistent transport type.
  3. Remove limitation on setting ServiceManagerOptions.ServiceEndpoints with transient transport type. Now no matter what transport type is, you can use DefaultAzureCredential 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

  1. Add more property to GroupBroadcastMessage (#1429)

Bug fixes

  1. Fix a bug in ServiceManager.IsServiceHealthy that throws exception. (#1430)

Release v1.10.0

27 Aug 10:50
420783a
Compare
Choose a tag to compare

Features

  1. 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.
  2. SDK client will also send AccessKey request via server connection when using aad auth. [ #1361 ]
  3. Add ServiceEndpoint constructor for aad scenario.
    var endpoint = new ServiceEndpoint(new Uri("https://canary-aad-test.service.signalr.net"), new DefaultAzureIdentity());
  4. 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. RFC4343
  5. ServiceEndpoint.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.
  6. According to 5, endpoints with the same hostname but have different ports will NOT be considered equal.

Bug fixes

  1. 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:

  1. In Management SDK / Serverless SDK, ServiceHubContext.ClientManager is not ready with Persistent transport type.

Release v1.9.2

16 Jul 15:28
a7aef3e
Compare
Choose a tag to compare

Features

  1. Add a WithNewtonsoftJson method for ServiceManagerBuilder (#1351)

Bug fixes

  1. Fix #1346 that DetectedLongRunningApplicationTask warning on each websocket connection (#1350)