Releases: Azure/azure-iot-sdk-csharp
Release list
Microsoft Azure IoT Hub SDK for .NET Release 2020-2-27
Microsoft.Azure.Devices.Client v1.23.2
- When using AMQP, application properties with a null value will now be sent to the hub, matching MQTT/HTTP behavior (#919)
- Improve AMQP reconnection resiliency
- SDK will now retry on more error codes over AMQP. For more details, see amqp transport exceptions.
amqp:internal-erroramqp:link :transfer-limit-exceededamqp:resource-locked
Microsoft Azure IoT Hub SDK for .NET Release 2020-2-18
Microsoft.Azure.Devices.Client v1.23.1
- ModuleClient configured with Mqtt_Tcp_Only fails to reconnect after edgeHub restart then never recovers (#1239)
Microsoft Azure IoT Hub SDK for C# Release 2020-2-11
Microsoft.Azure.Devices.Client v1.23.0
- Added API to enable/disable remote SSL certificate revocation check.
- Exposed the default transport settings values.
- Fixed null reference exception when device sets reported property but does not specify a desired property callback with AMPQ.
- Updated reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft.Azure.Devices v1.19.0
- Fixed proxy handling for Http client.
- Updated reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft.Azure.Devices.Shared v1.18.0
- Updated
TlsVersionsto be a singleton.
Microsoft.Azure.Devices.Provisioning.Client v1.5.0
- Updated reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft.Azure.Devices.Provisioning.Transport.Amqp v1.2.0
- Updated reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft.Azure.Devices.Provisioning.Transport.Mqtt v1.2.0
- Updated reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft.Azure.Devices.Provisioning.Transport.Http v1.2.0
- Updated reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft.Azure.Devices.Provisioning.Security.Tpm v1.2.0
- Updated reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft.Azure.Devices.Provisioning.Service v1.6.0
- Updated reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft Azure IoT Hub SDK for C# Long Term Support Release 2020-1-31
Microsoft.Azure.Devices.Client v1.22.0
- Added API to specify client side AMQP heartbeat interval.
- Centralize TLS version choice, prefer None where possible.
Microsoft.Azure.Devices v1.18.4
- Fix proxy handling on HTTP for requests with per-request timeout.
- Centralize TLS version choice, prefer None where possible.
Microsoft.Azure.Devices.Provisioning.Service v1.5.2
- Centralize TLS version choice, prefer None where possible.
Microsoft.Azure.Devices.Provisioning.Transport.Http v1.1.7
- Centralize TLS version choice, prefer None where possible.
Microsoft.Azure.Devices.Provisioning.Transport.Mqtt v1.1.9
- Centralize TLS version choice, prefer None where possible.
Microsoft.Azure.Devices.Shared v1.17.0
- Created a new resource
TlsVersionsto specify the TLS information for the project. - Update Twin object to return the parsed DateTime value.
Microsoft.Azure.Devices.Provisioning.Security.Tpm v1.1.7
- Update reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft.Azure.Devices.Provisioning.Transport.Amqp v1.1.10
- Update reference to
Microsoft.Azure.Devices.Sharednuget.
Microsoft.Azure.Devices.Provisioning.Client v1.4.1
- Update reference to
Microsoft.Azure.Devices.Sharednuget.
Azure IoT C# SDK Long Term Support Release 2020-1-24
Microsoft.Azure.Devices.Client v1.21.4
• Upgraded Newtonsoft dependency to 12.0.3
• Fixed twin parsing to use DateTimeOffset instead of DateTime (#1122)
• Fixed Mqtt adaptor not always cleaning up while closing (PR #1181)
• Fixed MqttTransportHandler not handling ConnectExceptions correctly (#648)
• Fixed the SDK not throwing an exception when the mqtt topic name was too large to publish (#1197)
Microsoft.Azure.Devices v1.18.3
• Upgraded Newtonsoft dependency to 12.0.3
Microsoft.Azure.Devices.Shared v1.16.1
• Upgraded Newtonsoft dependency to 12.0.3
Microsoft.Azure.Devices.Provisioning.Service v1.5.1
• Upgraded Newtonsoft dependency to 12.0.3
Microsoft Azure IoT Hub SDK for C# Public-Preview Release 2019-12-19
Microsoft.Azure.Devices.DigitalTwin.Client.1.0.0-preview-001
- Digital Twin Device Client supports the following feature:
- Register interfaces implemented by the Digital Twin device instance.
Microsoft.Azure.Devices.DigitalTwin.Service.1.0.0-preview-001
- Digital Twin Service Client supports the following features:
- Get Digital Twin by ID
- Get Model by ID
- Update Digital Twin properties
- Invoke commands on Digital Twin device instance.
Microsoft Azure IoT Hub SDK for C# Release 2019-12-17
Microsoft.Azure.Devices.Client v1.21.3
• Fix MQTT ReceiveAsync with cancellation token always returns null.
• Fix MQTT packet id becomes 0 on 32kth messages sent which caused MQTT connection drop.
• Fix AMQP SendEventBatchAsync always throws InvalidOperationException.
• Fix AMQP connection throws ObjectDisposedException while OpenAsync failed on open sender link.
• Fix AMQP SendTwinPatchAsync with cancellation token doesn’t cancel after cancellation token is cancelled.
• Revert to throw TimeoutException if operation times out instead of IotHubCommunicationException.
• Revert to throw OperationCancelledException if operation is cancelled instead of IotHubCommunicationException.
• Fix connection string parser to allow special characters such as semicolon.
• Fix a missing await for async task in MQTT which could cause race condition to the connection.
• Add clarification to connection status callback documentation for HTTP.
• Add clarification to device operation timeout documentation.
Microsoft Azure IoT Hub SDK for C# Public-Preview Release 2019-11-21
Microsoft.Azure.Devices.Client.1.29.0-preview-004
- Update Service API version for PnP features
- SDK fixes from
Masterbranch:- AMQP transport layer redesign to further stabilize connection pooling and multiplexing features.
- Upgrading the Amqp library dependency to v2.4.1.
- Add SQM ID to UserAgent string for non-HTTP protocols.
- Added ClosedChannelException to the list of retry-able Network Exceptions.
- Fixed IoTHub connection string parsing logic.
- Add IsUsable flag to IDelegatingHandler to check MqttTransportHandler state.
- URL encode device ID and module ID for HsmAuthentication audience.
- Fix time calculation for AMQP token refresher.
- Add AMQP token refresh cleanup on device client close or dispose.
- Fix for safe disposal of device client.
- Fix to treat exceptions as network exceptions if they are directly defined or derived from exceptions defined in network exceptions list in
ErrorDelegatingHandler. - Updated Amqp library to use the latest (Microsoft.Azure.Amqp 2.4.2).
- Fixed incorrect ifdef pragma for server certificate validation.
- Perform consistent hashing in assigning connections to the connection pool.
- AMQP resources are no longer disposed on disconnection.
- AMQP resources are locked to allow synchronized access.
- AMQP resources are created prior to access.
AmqpTransportHandleris not disposed on disconnection.- Catch exception while creation of AMQP resources, and if not recoverable, close and recover the owner resource (eg: non-recoverable link creation failure will close and recover the session, non-recoverable session creation failure will close and recover the connection).
AmqpUnitManagerwill handle the lifetime ofAmqpUnit.- Add expiration date in SharedAccessSignature exception message
- Return ConnectionStatusChangeReason
Device_Disabledas part of the ConnectionStatusChangesHandler callback if IoT hub returns a DeviceNotFoundException. - Fix of mqtt droping message while disconnected
- ReceiveAsync(timeout) changes to fix open issues regarding timeout not being respected on AMQP.
- Add null checks on Abandon/Reject/CompleteAsync in internal client
- Fix issue where integer underflow caused exponential backoff time to retry to underflow
- Fix exception mapping for openlink and opensession failure on AMQP
- Fix AMQP connection leak with valid X509 cert but invalid device id
Microsoft.Azure.Devices.1.27.0-preview-004
- SDK fixes from
Masterbranch:- Added null check for device ID and module ID.
- Make ConfigurationMetrics on Configuration settable
- Updated Amqp library to use the latest (Microsoft.Azure.Amqp 2.4.2).
Microsoft Azure IoT Hub SDK for C# Release 2019-11-12
Microsoft.Azure.Devices.Client v1.21.2
• Add expiration date in SharedAccessSignature exception message
• Return ConnectionStatusChangeReason 'Device_Disabled' as part of the ConnectionStatusChangesHandler callback if IoT hub returns a DeviceNotFoundException.
• Fix of mqtt droping message while disconnected
• ReceiveAsync(timeout) changes to fix open issues regarding timeout not being respected on AMQP.
• Add null checks on Abandon/Reject/CompleteAsync in internal client
• Fix issue where integer underflow caused exponential backoff time to retry to underflow
• Fix exception mapping for openlink and opensession failure on AMQP
• Fix AMQP connection leak with valid X509 cert but invalid device id
Microsoft.Azure.Devices v1.18.2
• Make ConfigurationMetrics on Configuration settable
Microsoft Azure IoT Hub SDK for C# Release 2019-9-12
Microsoft.Azure.Devices.Client v1.21.1
- Perform consistent hashing in assigning connections to the connection pool.
- AMQP resources are no longer disposed on disconnection.
- AMQP resources are locked to allow synchronized access.
- AMQP resources are created prior to access.
AmqpTransportHandleris not disposed on disconnection.- Catch exception while creation of AMQP resources, and if not recoverable, close and recover the owner resource (eg: non-recoverable link creation failure will close and recover the session, non-recoverable session creation failure will close and recover the connection).
AmqpUnitManagerwill handle the lifetime ofAmqpUnit.
Device Explorer v1.6.1
- Updated the reference to Microsoft.Azure.Devices v1.18.1.
- Updated the reference to Microsoft.Azure.Devices.Shared v1.16.0.
- Updated the reference to Microsoft.Azure.Amqp v2.4.2.