Skip to content

Releases: Azure/azure-iot-sdk-csharp

Microsoft Azure IoT SDK for .NET Release 2021-08-11

11 Aug 16:44
5349c3f
Compare
Choose a tag to compare

Microsoft.Azure.Devices.Client 1.38.0

  • Target new DotNetty version when not net451 (#2129)
  • Update reference to Microsoft.Azure.Devices.Shared nuget.

Bug fixes

  • Update client to accept a flag with IDisposable IAuthenticationMethod indicating if the authentication method should be disposed when the client itself is disposed. (#1911, #1954, #2003)
  • Update IoT Hub CONNACK timeout to be 60 seconds (#2042, #2043)
  • Update the amqp layer to inspect the inner exception for an amqp error code (#2053, #2055)
  • Update connection string validation param (#2061, #2063)
  • Update C2D message handler callback to not await completion of user-supplied callback (#2060)
  • Clean error codes referenced and implemented by the library (#2074, #2110)

Microsoft.Azure.Devices 1.35.0

  • Add support for DeviceScope to import/export job (#2040)
  • Update reference to Microsoft.Azure.Devices.Shared nuget.

Bug fixes

  • Clean error codes referenced and implemented by the library (#2074, #2110)
  • Update JobClient, ServiceClient, RegistryManager and DigitalTwinClient to be mockable (#2117)

Microsoft.Azure.Devices.Shared 1.29.0

  • Add ClearAllMetadata() to remove all metadata from the twin and the base metadata object (#1971, #1976)

Microsoft.Azure.Devices.Provisioning.Client 1.18.0

  • Add support for timespan timeouts to provisioning device client (#2036, #2041)
  • Update reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Transport.Mqtt 1.16.0

  • Add support for timespan timeouts to provisioning device client (#2036, #2041)
  • Target new DotNetty version when not net451 (#2129)
  • Update reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Transport.Amqp 1.15.0

  • Add support for timespan timeouts to provisioning device client (#2036, #2041)
  • Update reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Transport.Http 1.14.0

  • Add support for timespan timeouts to provisioning device client (#2036, #2041)
  • Update reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Security.Tpm 1.13.2

  • Update reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Service 1.17.2

  • Add the parameter name to the ArgumentNullException that could be thrown on IndividualEnrollment.Attestation initialization (#2129)
  • Update reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft Azure IoT SDKs for .NET LTS patch Release 2021-08-10

10 Aug 21:26
Compare
Choose a tag to compare

This release is a patch for the Microsoft Azure IoT Hub SDK for .NET LTS patch Release 2020-09-23 LTS release.

Microsoft.Azure.Devices.Client 1.28.2

  • Updated reference to DotNetty.Codecs.Mqtt and DotNetty.Handlers for non-net451 targets (#2127)

Microsoft.Azure.Devices.Provisioning.Transport.Mqtt 1.3.1

  • Updated reference to DotNetty.Codecs.Mqtt and DotNetty.Handlers for non-net451 targets (#2127)

Microsoft.Azure.Devices.Provisioning.Service 1.6.4

  • Add the parameter name to the ArgumentNullException that could be thrown on IndividualEnrollment.Attestation initialization (#2127)

Microsoft Azure IoT SDKs for .NET LTS patch Release 2021-06-23

23 Jun 19:03
Compare
Choose a tag to compare

This release is a patch for the 2021-3-18 LTS release.

Microsoft.Azure.Devices.Client.1.36.1

Bug fixes:

  • Update IoT Hub default CONNACK timeout to be 60 seconds (#2043, #2044)

Microsoft Azure IoT SDKs for .NET Preview Release 2021-6-9

09 Jun 22:27
8ee81c8
Compare
Choose a tag to compare

SDK updates from master branch.

This release is bringing changes from the master release 2021-05-13.
The previous preview release was based on the master release 2020-10-8.

Note: This preview release does not contain the device streaming feature. The device streaming feature is still available under previews/deviceStreaming, however, since there is no active development on-going for this feature, we're not including it as a part of our newer preview nugets.

Microsoft.Azure.Devices.Shared 1.29.0-preview-001

  • Updates from GA release 2021-05-13.
  • Add support for .NET 5.0 (#1900)
  • Add native support for Azure IoT Plug and Play (PnP) APIs (#2005, #2014). For details on how these APIs differ from the existing device/module APIs, see this readme.

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

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Updates from GA release 2021-05-13.
  • Add support for .NET 5.0 (#1900)
  • Add native support for Azure IoT Plug and Play (PnP) APIs (#2005, #2014). For details on how these APIs differ from the existing device/module APIs, see this readme.
  • Add support for releasing unmanaged resources asynchronously. This is available on .NET Standard 2.1 and above. (#1977)

Microsoft.Azure.Devices 1.35.0-preview-001

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Updates from GA release 2021-05-13.
  • Make all clients mockable (#1875), (#1878), (#1881), (#1892)
  • Add support for .NET 5.0 (#1900)

Microsoft.Azure.Devices.Provisioning.Client 1.18.0-preview-001

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Updates from GA release 2021-05-13.
  • Add support for .NET 5.0 (#1900)

Microsoft.Azure.Devices.Provisioning.Transport.Mqtt 1.16.0-preview-001

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Updates from GA release 2021-05-13.
  • Add support for .NET 5.0 (#1900)

Microsoft.Azure.Devices.Provisioning.Transport.Amqp 1.15.0-preview-001

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Updates from GA release 2021-05-13.
  • Add support for .NET 5.0 (#1900)

Microsoft.Azure.Devices.Provisioning.Client.Transport.Http 1.14.0-preview-001

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Updates from GA release 2021-05-13.
  • Add support for .NET 5.0 (#1900)

Microsoft.Azure.Devices.Provisioning.Security.Tpm 1.14.0-preview-001

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Updates from GA release 2021-05-13.
  • Add support for .NET 5.0 (#1900)

Microsoft.Azure.Devices.Provisioning.Service 1.18.0-preview-001

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Updates from GA release 2021-05-13.
  • Add support for .NET 5.0 (#1900)

Azure IoT SDK for .NET Release 2021-05-13

14 May 23:22
c3ff4c8
Compare
Choose a tag to compare

Microsoft.Azure.Devices.Client 1.37.2

Bug fixes

  • Allow null payload in method calls (#1940)
  • Throw during client initialization for invalid HTTP transport with a model Id (#1939)

Microsoft.Azure.Devices 1.34.0

  • Add user assigned managed identity support for IoT hub import and export jobs (#1948)

Azure IoT SDK for .NET Release 2021-05-06

06 May 21:19
3959d98
Compare
Choose a tag to compare

Microsoft.Azure.Devices.Shared 1.28.1

Bug fixes

  • Avoid possible NRE when accessing Twin.ParentScopes (#1929)

Microsoft.Azure.Devices.Client 1.37.1

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Bug fixes

  • Fix device messages with DTDL component name fail over HTTP (#1896)

Microsoft.Azure.Devices 1.33.0

  • Adding support for AAD authentication in all the service clients (#1922)
  • Update notes for service default API version (#1919)
  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Client 1.17.1

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Service 1.17.1

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Transport.Amqp 1.14.1

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Transport.Mqtt 1.15.1

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Transport.Http 1.13.1

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Security.Tpm 1.13.1

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Azure IoT SDK for .NET Release 2021-04-26

27 Apr 16:49
Compare
Choose a tag to compare

Microsoft.Azure.Devices.Client 1.37.0

  • Add support for specifying SAS token time to live in ClientOptions (#1837).
  • Documented exceptions that may be thrown by the underlying TPM library.

Bug fixes

  • URL escape the ModelId when forming the connect URI for MQTT.
  • Update web socket implementation over MQTT to not send multiple web socket frames for a single MQTT packet (#1873).

Microsoft.Azure.Devices 1.32.0

  • Add support for configuring HTTP connection lease timeouts (#1865).
    • See ConnectionLeaseTimeoutMilliseconds property added to HttpTransportSettings and ServiceClientTransportSettings.
  • Service API version updated to 2021-04-12.
  • ParentScopes added to Device class, enabling setting a parent to an Edge device.

Bug fixes

  • Default connection lease timeout changed from infinite to 5 minutes.

Microsoft.Azure.Devices.Shared 1.28.0

  • DeviceScope and ParentScopes added to Twin, enabling building representation of Edge and leaf-device hierarchy from twins.

Microsoft.Azure.Devices.Provisioning.Client 1.17.0

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning 1.17.0

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Transport.Amqp 1.14.0

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Transport.Http 1.13.0

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Microsoft.Azure.Devices.Provisioning.Transport.Mqtt 1.15.0

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Bug fixes

    • Update web socket implementation over MQTT to not send multiple web socket frames for a single MQTT packet (#1873)

Microsoft.Azure.Devices.Provisioning.Security.Tpm 1.13.0

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.

Azure IoT SDK for .NET LTS Release 2021-03-18

24 Mar 23:18
61f682d
Compare
Choose a tag to compare

Microsoft.Azure.Devices.Client 1.36.0

Improvements and Features

  • Add additional logs to MQTT implementation
  • Added extra comments to clarify true and false in dispose (#1805)
  • Make the DeviceClient and ModuleClient extensible (#1802)
  • Handle Twin failures using Amqp (#1796)

Bug Fixes

  • Fix AMQP layer not releasing a semaphore for method links after unsubscribing from methods (#1831)
  • Fix semaphore usage within InternalClient (#1823)
  • UnixDomainSocketEndPoint is available in .NET 2.1 and greater (#1816)
  • IoTHub Exception for Get and Patch Twin failures (#1815)
  • Fix MqttTransportHandler to not await on user supplied C2D callback
  • Update dotnetty task calls to use ConfigureAwait(true)
  • Update MqttTransportHandler to not use SemaphoreSlim.WaitAsync(TimeSpan, CancellationToken)

Microsoft.Azure.Devices 1.31.0

Improvements

  • Update xml comments for ServiceClient
  • Reduce the number of method overloads for ServiceClient
  • Add support for supporting custom timeout for sending C2D message to a module.

The following nuget versions have been previously released, and are being marked as LTS

  • Microsoft.Azure.Devices.Shared: 1.27.0
  • Microsoft.Azure.Devices.Provisioning.Client: 1.16.3
  • Microsoft.Azure.Devices.Provisioning.Transport.Amqp: 1.13.4
  • Microsoft.Azure.Devices.Provisioning.Transport.Http: 1.12.3
  • Microsoft.Azure.Devices.Provisioning.Transport.Mqtt: 1.14.0
  • Microsoft.Azure.Devices.Provisioning.Security.Tpm: 1.12.3
  • Microsoft.Azure.Devices.Provisioning.Service: 1.16.3

Azure IoT SDK for .NET Release 2021-02-08

08 Feb 20:45
Compare
Choose a tag to compare

Microsoft.Azure.Devices.Client 1.35.0

  • Add a log statement indicating a no-retry retry policy has been enabled (#1763)
  • Unused member removal
    • NotAllowedCharacter from UrlEncodedDictionarySerializer

Bug fixes

  • Amqp connections are not getting disposed leaving the socket open (#1770, #1771)
  • Fix issue where we inadvertently dispose client certificates (#1774)

Microsoft.Azure.Devices 1.30.0

  • Unused member removal
    • DeliveryFailureReason enum
    • EventHubPartitionKeyResolver class
    • SharedAccessSignatureAuthorizationRule class
    • SharedAccessSignature class
    • ISharedAccessSignatureCredential interface

Azure IoT SDK for .NET Release 2021-01-21

22 Jan 10:09
732ca91
Compare
Choose a tag to compare

Microsoft.Azure.Devices.Client 1.34.0

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Provide a way to pass in list of certificates in a chain for authentication while creating the device client while using MQTT_TCP and AMQP_TCP protocols (#1742).
  • Added logging to MQTT transport layer (#1694, #1709)
  • Documented a NullReferenceException instead of fixing it, avoid breaking change (#1734, Addresses #1667)
  • Added/improved doc comments on public types
  • Removal of unreferenced code

Bug fixes

  • Relaxed validation on host name from the device connection string for when using Edge as a transparent gateway (#1552, #1650)
  • Dispose all disposable objects (#1689, #1699, #1708, #1710, #1728, #1704)
  • Await asynchronous calls (#1714, #1729)
  • Use CultureInvariant for validating device connection string values (#1716)
  • Avoid System.NullReferenceException (#1735)
  • C2D messages sent while disconnected are now delivered after reconnect (when subscribed to receive C2D messages via callback) (#1686)
  • Pass down the cancellation token in places where cancellation tokens were not being passed down to underlying API calls.
  • Assembly neutral language specified (#1696)
  • Project warnings clean up

Microsoft.Azure.Devices 1.29.0

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Added logging to AMQP and HTTP transport layers (#1652)
  • Added/improved doc comments on public types
  • Improved parameter error handling:
    • UrlEncodedDictionarySerializer.Deserialize will now throw System.ArgumentNullException when parameter value is null.
    • ClientWebSocketChannel.DoWrite will now throw System.ArgumentNullException when parameter channelOutboundBuffer is null.
    • ClientWebSocketChannelConfig.SetOption will now throw System.ArgumentNullException when parameter option is null.
    • DictionaryExtensions.GetValueOrAdd<TKey, TValue> will now throw System.ArgumentNullException when parameter valueProvider is null.
    • DictionaryExtensions.GetOrAddNonNull<TKey, TValue> will now throw System.ArgumentNullException when parameter valueFactory is null.
    • PerfectHash.HashToLong and HashToShort will now throw System.ArgumentNullException when parameters data are null.
    • SharedAccessSignature.Authenticate will now throw System.ArgumentNullException when parameter sasAuthorizationRule is null.
    • TrackingHelper.GetErrorCodeFromAmqpError will now throw System.ArgumentNullException when parameter ex is null.
    • RegistryManager.CreateFromConnectionString will now throw System.ArgumentNullException when parameter transportSettings is null.
  • Dispose all disposable objects (#1656)
  • Assembly neutral language specified (#1696)
  • Project warnings clean up
  • Removal of unreferenced code

Microsoft.Azure.Devices.Shared 1.27.0

  • Fixed issue where retrieving a twin array returned null (this affected twin property retrieval calls made from Microsoft.Azure.Devices.RegistryManager) (#1736)
  • Project warnings clean up

Microsoft.Azure.Devices.Provisioning.Client 1.16.3

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Reduce sustained memory footprint when using certificates (#1679, #1676)

Microsoft.Azure.Devices.Provisioning.Transport.Amqp 1.13.4

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Dispose all disposable objects (#1699)

Microsoft.Azure.Devices.Provisioning.Transport.Http 1.12.3

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Dispose all disposable objects (#1699)

Microsoft.Azure.Devices.Provisioning.Transport.Mqtt 1.14.0

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Project warnings clean up

Microsoft.Azure.Devices.Provisioning.Security.Tpm 1.12.3

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Project warnings clean up

Microsoft.Azure.Devices.Provisioning.Service 1.16.3

  • Updated reference to Microsoft.Azure.Devices.Shared nuget.
  • Project warnings clean up