Skip to content

Releases: nerves-hub/nerves_hub_link

v2.6.0

04 Dec 20:03
8268c16
Compare
Choose a tag to compare

This update includes Extensions, a mechanism to handle extensions on a device for custom data and/or reporting outside the firmware update mechanism. These are isolated from the socket as to not get in the way of potential firmware updates and can be defined in external libs as well as this one by implementing the NervesHubLink.Extensions behavior. Extensions are controlled by NervesHub and can be adjusted at the product or device level for granular control.

  • Added

    • Add support for Extensions using the Socket (#228)
      • Initial extensions supported are NervesHubLink.Extensions.Health and
        NervesHubLink.Extensions.Geo
  • Updated

    • Bump device_api_version to 2.2.0; check README for details (#255)

v2.5.2

10 Oct 01:30
Compare
Choose a tag to compare
  • Updated
    • Change to only configure if connecting (#229)

v2.5.1

09 Aug 15:02
Compare
Choose a tag to compare
  • Updated
    • Fix issue causing shared secret authentications to fail until Erlang is able
      to catch the system time up. (#225)

v2.5.0

23 Jul 18:26
48ed672
Compare
Choose a tag to compare

This latest release requires Elixir 1.13 or later.

  • Added
    • Run a NervesHub script on device (#207)
  • Updated
    • Simplify connection settings (#214)

v2.4.0

25 Jun 14:27
207ca0e
Compare
Choose a tag to compare
  • Added
    • Configure heartbeat msec (#197)
    • Apply backpressure to downloader on slow updates (#202)
  • Updated
    • Fix no match error when uploading files (#190)
    • Make shared secret auth the default (#176)
    • Archive public keys can default to fwup public keys if not configured (#187)

v2.3.0

11 May 15:39
4275c64
Compare
Choose a tag to compare
  • Added
    • check for network connectivity before connecting (#181)
  • Updated
    • Log unknown messages from NervesHub
    • Clearer and more consistent logging

v2.2.0

19 Mar 15:55
d688e0f
Compare
Choose a tag to compare

This update includes Archives, which is an extra fwup file that is downloaded as part
of a deployment. This allows you to send an update for something smaller than the whole
firmware. Archives are validated with separate public keys for safety.

  • Added
    • Archive downloading and processing for extra packages

v2.2.1

19 Apr 13:21
Compare
Choose a tag to compare
  • Added

    • New alarms via Erlang alarm_handler
      that can be monitored directly or via libraries such as :alarmist
      • NervesHubLink.Disconnected
      • NervesHubLink.UpdateInProgress
    • NervesTime has been added as a dependency.
    • Download current firmware public keys on device connection. If no public firmware signing keys are defined in your config, NervesHubLink will request them from NervesHub when establishing a connection.
  • Updated

    • :public_key CA certificates are used by default. If CAStore is included in your project it will be preferred.

v2.1.1

05 Feb 16:57
Compare
Choose a tag to compare
  • Fixed
    • UploadFile stream changed to be backwards compatible with Elixir 1.16 and older

v2.1.0

05 Feb 13:08
Compare
Choose a tag to compare

This update should be relatively safe and backwards compatible. It introduces some new features with NervesHub including Pre-shared key authentication and file upload/download ability through the console change. If you were previously relying on NervesHubLink.Connection functions then you will need to review and update your code to use NervesHubLink connection functions instead.

  • Removed

    • NervesHubLink.Connection was removed in favor is using the connection
      state of the socket instead.
  • Added

    • Use the console channel to save files to the device (#131)
    • Send a file to an attached NervesHub web console (#130)
    • Pre-shared key authentication as an alternative to certificate authentication
  • Updated

    • Default SNI from host if none specified
    • Default to CAStore when no :ca_certs are provided