-
Added
- HTTP options (including HTTP proxy) can now be passed through to
Mint.HTTP.connect/4for both the WebSocket connection (config :nerves_hub_link, socket: [http_opts: [...]]) and the firmware downloader (config :nerves_hub_link, downloader_http_opts: [...]). The options are merged on top of the existing SSL config rather than replacing it. See the configuration guide for a proxy example. - Support resolving the network interface from Erlang's new
:socketbased sockets (#418) NervesHubLink.UpdateManager.CachingUpdaternow clears the cache directory when it sees a 404 during a partial-range download, allowing recovery from stale/invalid partial files (#411)- The
NervesHubLink.Downloadernow detects when an HTTP request finishes with fewer bytes than the advertisedcontent-lengthand surfaces:downloaded_content_length_mismatchso the updater can retry instead of treating the download as complete. A warning is also logged if the downloaded length exceeds the content length (#411)
- HTTP options (including HTTP proxy) can now be passed through to
-
Updated
NervesHubLink.status/0,1now defaults to dispatching toNervesHubLink.UpdateManager(it previously defaulted toSocket, which doesn't implement the call) (#412)- The minimum value for the downloader's worst-case timeout has been raised from 1 minute to 5 minutes so that small firmware/archive files aren't aborted prematurely on slower networks (#421)
NervesHubLink.NetworkInterface.from_socket/1now matches sockets by shape instead of relying on exact tuple structure, and falls back gracefully (with a warning) for unknown socket types instead of raising (#410)- When the connecting socket's network interface can't be determined yet, the retry now waits 60 seconds instead of 10 to avoid noisy polling (#410)
- Bumped
castoreto 1.0.18,jasonto 1.4.5,nerves_timeto 0.4.10, and dev/test depsbandit(1.11.0) andcredo(1.7.18)