github Azure/azure-iot-sdk-csharp preview_2020-7-13
Microsoft Azure IoT Hub SDK for .NET Public-Preview Release 2020-7-13

latest releases: 2024-11-21, 2024-03-28, lts_2024-03-29_patch10...
pre-release4 years ago

Microsoft.Azure.Devices.Client.1.29.1-preview-001

  • Rename DeviceStreamRequest.Url to DeviceStreamRequest.Uri, since it represents a Uri.
    • NOTE: This is a breaking change for DeviceStreaming APIs.
  • SDK fixes from master branch:
    • Fix issue where MQTT ReceiveAsync with cancellation token always returns null.
    • Fix issue where MQTT packet id becomes 0 on 32kth messages sent, which caused MQTT connection to drop.
    • Fix issue where AMQP SendEventBatchAsync always throws InvalidOperationException.
    • Fix issue where AMQP connection throws ObjectDisposedException when OpenAsync fails to open sender link.
    • Fix issue where 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.
    • Upgraded Newtonsoft.Json 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)
    • Added API to specify client side AMQP heartbeat interval.
    • Centralize TLS version choice, prefer None where possible.
    • 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.
    • Fix issue where ModuleClient configured with Mqtt_Tcp_Only fails to reconnect after edgeHub restart then never recovers (#1239)
    • 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-error
      • amqp:link :transfer-limit-exceeded
      • amqp:resource-locked
    • Dropped support for .NET Standard 1.3, and added support for .NET Framework 4.7.2.
    • Improved XML comments
    • MqttTransportSettings.CertificateRevocationCheck and AmqpTransportSettings.CertificateRevocationCheck are now linked with TlsVersions.Instance.CertificateRevocationCheck property.
    • Made Message class partially cloneable - to be able to copy system properties to a new instance (#1923). See Message.CloneWithBody method.
    • Updated System.Net.Http package from 4.3.3 to 4.3.4 to resolve a security vulnerability in the package.
    • Add modelId support for PnP summer refresh
    • Add support for .NET Standard 2.1
    • Add a way for nested Edge to pass authentication chain to IoTHub
    • Add twin array support and update to latest service API version
    • Enable RemoteCertificateValidationCallback for websocket connections to allow users to validate remote certificates
    • Fix Mqtt C2D subscription message to set QoS of 1
    • Fix comments on twin/methods and create
    • Fix issue to require explicit subscribe to desired properties in latest Service API version
    • Fix for each subscribe request declare its topic name on mqtt messages
    • Remove DNS lookup in mqtt stack when proxy is present
    • Don't dispose a message being returned
    • Dispose CancellationTokenSource being used internally in the library
    • Deprecate file upload APIs in favor of new, more granular APIs that allow users to use their own Azure storage SDK to do the actual upload

Microsoft.Azure.Devices.1.27.1-preview-001

  • Rename DeviceStreamResponse.Url to DeviceStreamResponse.Uri, since it represents a Uri.
    • NOTE: This is a breaking change for DeviceStreaming APIs.
  • SDK fixes from master branch:
    • Add modelId support for PnP summer refresh
    • Upgraded Newtonsoft.Json dependency to 12.0.3
    • Fix proxy handling on HTTP for requests with per-request timeout.
    • Centralize TLS version choice, prefer None where possible.
    • Fixed proxy handling for Http client.
    • IotHubClientWebSocket.ConnectAsync method now respects the SslProtocol value specified in TlsVersions.Instance.Preferred.
    • Dropped support for .NET Standard 1.3, and added support for .NET Framework 4.7.2.
    • Enables new security functionality to specify how hub should authenticate when working with a storage account when running import/export devices jobs.
      • New enum StorageAuthenticationType to specify key-based or identity-based authentication.
      • New property JobProperties.StorageAuthenticationType for use in import/export devices jobs.
      • Added two overloaded methods: RegistryManager.ImportDevicesAsync and RegistryManager.ExportDevicesAsync. The overloads take a JobProperties instance so the user can pass all required and any optional parameters.
      • Two factory methods to make it easier to call ImportDevicesAsync and ExportDevicesAsync, making it clear which properties are required and which are optional. They are JobProperties.CreateForInportJob and JobProperties.CreateForExportJob respectively.
      • Removed two unreferenced classes: ImportDevicesRequest and ExportDevicesRequest.
    • Reuse HttpClient instances (#1276), avoiding a known issue with HttpClient.Dispose() that can cause TCP socket exhaustion under heavy load.
    • Use latest Service API version that is available in all regions
    • Add Support for .NET Standard 2.1
    • Add twin array support
    • Update JobQuotaExceededException to include the associated http error reason
    • Code clean up in IotHubConnectionStringBuilder based on coding standards

Don't miss a new azure-iot-sdk-csharp release

NewReleases is sending notifications on new releases.