CHANGELOG.md
# Changelog
## v0.4.6
* New features
* Added `mix upload` task for Nerves users who prefer idiomatic Elixir ways of
uploading to devices. This task has some limitations especially when
ssh needs to ask for passwords. The `mix firmware.gen.script` /
`./upload.sh` approach still exists.
## v0.4.5
* Bug fixes
* Fix issue causing ssh to hang at the end of a successful firmware update.
Now the socket is properly closed before the reboot.
## v0.4.4
* Bug fixes
* fwup is now stopped immediately when the ssh connection closes prematurely.
This cancels any existing firmware update. Thanks to Troels Brødsgaard for
this fix.
## v0.4.3
* Improvements
* Minor project cleanup. No functional changes.
## v0.4.2
* Improvements
* Validate authorized ssh keys to avoid accidents that prevent firmware
updates
* Print out firmware metadata when uploading
## v0.4.1
* Improvements
* Updated upload.sh script to support Elixir 1.8 changes to output paths
## v0.4.0
Support for `mix firmware.push` has been removed. We're all very sorry for this,
but it appears to be unfixable. It was implemented using Erlang's built-in ssh
client which doesn't know about things like the `ssh-agent` or the `.ssh/config`
and can't ask for passwords. It also isn't possible to call the system's `ssh`
since Erlang runs `setsid` on child processes so they don't have a tty.
The workaround is to run `mix firmware.gen.script` and then run `./upload.sh`.
* Bug fixes
* Fix exit code parsing from fwup so that errors can be propogated over ssh
* Disabled the Erlang shell and remote command execution on the firmware
update port
## v0.3.3
* Bug fixes
* Fixed exit code returned over ssh so that uploads could be scripted and
checked that they ran successfully.
## v0.3.2
* Bug fixes
* Removed workaround for ERL-469 that prevented use of ssh-agent. This
requires Erlang >= 20.2.1 running on the target. That's been out for a while
in the official systems, so hopefully people have upgraded.
## v0.3.1
* Improvements
* Try guessing the link local interface when multiple exist on OSX. Guessing
the last one seems to work.
## v0.3.0
* Improvements
* If using the upload.sh script, there's no need to copy it anymore. Just
run `mix firmware.gen.script` to get a copy.
* Bug fixes
* Fix race condition that prevented firmware update errors from being
returned. This requires fwup v0.17.0 to work which is included in the
latest nerves_system_br release and official systems.
* Fixed a couple errors on OSX with the upload script.
## v0.2.2
* Improvements
* Remove my name from the throwaway ssh key
* Documentation updates throughout
* Some upload.sh fixes to workaround issues discovered with ssh
## v0.2.1
* Bug fixes
* Fix Elixir 1.5 warnings
* Improve docs
## v0.2.0
* Bug fixes
* Force publickey mode to avoid password prompt that will never work
* Improve docs
## v0.1.0
* Initial release