Notable changes to this library. It follows Keep a Changelog and Semantic Versioning.
Unreleased
0.1.2 - 2026-08-24
Fixed
- The Installing snippet listed the agent as a dependency. It does not need listing: this package depends on it, so mix resolves and builds it. Verified against Hex with a project depending on nothing else.
0.1.1 - 2026-08-24
Fixed
- The Installing snippet in the README asked for git dependencies, which is
what they were before this package was on Hex, and did not say that
manager:andoverride:belong in the consuming application rather than here. Documentation only; no code changed between 0.1.0 and this.
Added
RELEASING.md, listing every file a release has to touch and the order the two packages go out in. The README dependency snippet is the one nothing checks and the one that was wrong here.
0.1.0 - 2026-08-24
First release. An Elixir face for nerves_hub_link_atomvm_esp32, verified on hardware.
Added
NervesHubLink, delegating to the agent:start_link/1andstart/1taking a keyword list,child_spec/1for a supervision tree, and the functions a device reports back with.NervesHubLink.Logger, which exists because AtomVM's:loggerraisesbadargon a binary message before any handler sees it, and Elixir strings are binaries.mix nerves_hub.sign, signing a packbeam without building an escript insidedeps, verifying the result before it can be uploaded.mix nerves_hub.atomvm.vm, building the AtomVM firmware a device needs from the files the agent ships inpriv/atomvm.examples/kiosk, a device as aGenServerunder aSupervisor, with NervesHub events arriving ashandle_info/2.- A test that reads every remote call out of the compiled BEAM files and checks it against what AtomVM actually ships, because a call to a missing module compiles cleanly, passes on the host, and takes the application down on the device.
Publishing
Hex will not take a package whose dependencies are not themselves on Hex, nor
one carrying override: or manager:, so nerves_hub_link_atomvm_esp32 is
published first and the dependency here becomes a bare version requirement.
See mix.exs.