Releases: Azure/azure-iot-sdk-csharp
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
TlsVersions
to 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.Shared
nuget.
Microsoft.Azure.Devices.Provisioning.Transport.Amqp v1.1.10
- Update reference to
Microsoft.Azure.Devices.Shared
nuget.
Microsoft.Azure.Devices.Provisioning.Client v1.4.1
- Update reference to
Microsoft.Azure.Devices.Shared
nuget.
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
Master
branch:- 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.
AmqpTransportHandler
is 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).
AmqpUnitManager
will handle the lifetime ofAmqpUnit
.- 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.1.27.0-preview-004
- SDK fixes from
Master
branch:- 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.
AmqpTransportHandler
is 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).
AmqpUnitManager
will 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.
Microsoft Azure IoT Hub SDK for C# Release 2019-7-26
Microsoft.Azure.Devices.Client v1.21.0
- Add support for Azure Security Center Security Client
- Fix Xamarin user agent issue
Microsoft Azure IoT Hub SDK for C# Release 2019-7-2
Microsoft.Azure.Devices.Client v1.20.3
- 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.
Microsoft.Azure.Devices v1.18.1
- Added null check for device ID and module ID.
- Updated Amqp library to use the latest (Microsoft.Azure.Amqp 2.4.2).
Microsoft.Azure.Devices.Provisioning.Transport.Amqp v1.1.9
- Updated Amqp library to use the latest (Microsoft.Azure.Amqp 2.4.2).
Microsoft.Azure.Devices.Provisioning.Security.Tpm v1.1.6
- Updated the version of Microsoft.TSS dependency used.
Microsoft Azure IoT Hub SDK for C# Release 2019-6-6
Microsoft.Azure.Devices.Client v1.20.2
- Add AMQP token refresh cleanup on device client close or dispose.
- Fix for safe disposal of device client.
Microsoft.Azure.Devices v1.18.0
- Add support for Device Scopes.
Microsoft.Azure.Devices.Provisioning.Client v1.4.0
- Add custom payload support for DPS.
Microsoft.Azure.Devices.Provisioning.Transport.Amqp v1.1.8
- Add support for Retry-After header to provisioning device client.
- Add custom payload support for DPS.
Microsoft.Azure.Devices.Provisioning.Transport.Http v1.1.6
- Add support for Retry-After header to provisioning device client.
- Add custom payload support for DPS.
Microsoft.Azure.Devices.Provisioning.Transport.Mqtt v1.1.8
- Add support for Retry-After header to provisioning device client.
- Add custom payload support for DPS.