# Change Log

All notable changes to this project will be documented in this file
automatically by Versionist. DO NOT EDIT THIS FILE MANUALLY!
This project adheres to [Semantic Versioning](http://semver.org/).

## 11.6.1 - 2019-07-15

* Remove BETA suffix from Windows and macOS installers, and update INSTALL.md [Paulo Castro]

## 11.6.0 - 2019-07-09

* Add os.sshKeys to generateBaseConfig [Michel Wohlert]

## 11.5.0 - 2019-07-05

* Add release target in repo.yml [Giovanni Garufi]
* Patch oclif to use "npx npm@6.9.0 install" if npm is older than 6.9.0 [Paulo Castro]
* Balena CI: Add balena-cli executable signing step [Paulo Castro]
* Add 'npm run package' command [Paulo Castro]
* Refactor build:standalone / build:installer / run release [Paulo Castro]
* Balena CI integration: Use C:\tmp to avoid 260-char path length limit [Paulo Castro]

## 11.4.4 - 2019-07-02

* Add 'patches' to files section of package.json for npm publishing [Paulo Castro]
* Add npm-shrinkwrap in package.json so that it gets published to the registry [Giovanni Garufi]

## 11.4.3 - 2019-07-01

* Fix "Error: Cannot find module 'web-streams-polyfill'" Fix npm-shrinkwrap.json produced by npm v6.4.1, by using npm v6.9.0 [Paulo Castro]

## 11.4.2 - 2019-07-01

* Explicitly upgrade livepush version to 2.0.1 to pick up fix [Cameron Diver]

## 11.4.1 - 2019-06-28

* Unpin selected dependencies following addition of npm-shrinkwrap.json [Paulo Castro]
* Add npm-shrinkwrap.json file to control dependency updates [Paulo Castro]

## 11.4.0 - 2019-06-27

* Add options to 'balena version' to show Node.js version [Paulo Castro]
* Pin the major Node version used by standalone zip packages to Node 10 [Paulo Castro]

## 11.3.6 - 2019-06-27

* Patch 'pkg' package to resolve 'preload' issue in standalone installs [Paulo Castro]

## 11.3.5 - 2019-06-26

* Add machine-readable changelog [Gergely Imreh]

## 11.3.4 - 2019-06-26

* Patterns: Add debug logs in the getOnlineTargetUuid resolution [Thodoris Greasidis]
* Tunnel: Fix incorrect parsing of numeric short UUIDs [Thodoris Greasidis]
* Ssh: Fix incorrect parsing of numeric short UUIDs [Thodoris Greasidis]

## 11.3.3 - 2019-06-20

* Fix using an image more than once in a balena push [Cameron Diver]

## 11.3.2 - 2019-06-20

* Remove the livepush initialisation double printed log [Cameron Diver]

## 11.3.1 - 2019-06-18

* Fix output of seperation newline during livepush [Cameron Diver]

## 11.3.0 - 2019-06-18

* If a secrets file is not specified, read it from the data directory [Cameron Diver]

## 11.2.2 - 2019-06-16

* Docs: update GitHub issue template, required Node version and sample Dockerfile [Paulo Castro]

## 11.2.1 - 2019-06-12

* Livepush: Ignore the .git directory when performing a livepush [Cameron Diver]

## 11.2.0 - 2019-06-11

* Add device OS update action [Thodoris Greasidis]

## 11.1.0 - 2019-06-10

* Cancel ongoing livepushes when a new change occurs [Cameron Diver]
* Fix ts-node invocation in balena-dev [Cameron Diver]

## 11.0.7 - 2019-06-07

* Fix "catch-uncommitted" build failure (npm run prettify) [Paulo Castro]
* Update tunnel documentation after argument changes [Cameron Diver]

## 11.0.6 - 2019-06-06

* Fix: Add single code path to get full, online-only device UUIDs [Rich Bayliss]

## 11.0.5 - 2019-06-06

* Add initial typings for resin-cli-form [Thodoris Greasidis]

## 11.0.4 - 2019-06-05

* Add 'scan' command to the website reference documentation [Paulo Castro]

## 11.0.3 - 2019-06-05

* Fix 'npm help' SyntaxError on Node 8 (invalid 's' regex flag) [Paulo Castro]

## 11.0.2 - 2019-06-05

* Fix "--production" installation (missing patch-package dependency) [Paulo Castro]

## 11.0.1 - 2019-06-04

* Fix Travis release [Paulo Castro]

## 11.0.0 - 2019-06-04

* Remove 'signup' command [Paulo Castro]
* Revert bin/balena (previously renamed bin/run for oclif compatibility) [Paulo Castro]
* Balena CI integration: Patch @oclif/dev-cli to install 7zip on demand [Paulo Castro]
* Add warning notices for replaced 'local' commands in v11 [Paulo Castro]
* Revert 'balena flash' to 'balena local flash' [Paulo Castro]
* Fix SSH'ing into a device from application [Cameron Diver]
* Make livepush the default when pushing to a local device [Cameron Diver]
* Make the CommandDefinition option parameter a Partial [Cameron Diver]
* Allow multiple services to be tailed with balena logs and push [Cameron Diver]
* Don't require a login for commands operating on local devices [Cameron Diver]
* Remove or move most local namespaced commands [Cameron Diver]
* Update the CLI's installation instructions for executable installers [Paulo Castro]
* Add native installers for Windows and macOS [Paulo Castro]
* Bump denymount version and delete redundant patch (chore task) [Paulo Castro]
* Add CONTRIBUTING.md and some guidance on commit messages and doc files. [Paulo Castro]
* Update documentation markdown following v11-meta branch rebase [Paulo Castro]
* Fix windows straight-to-container SSH [Cameron Diver]
* Update balena ssh command to support local devices and multicontainer [Cameron Diver]
* Sort 'balena help' primary commands in manually specified order [Paulo Castro]
* Remove --dockerPort's -p alias for `balena preload` [Alexis Svinartchouk]
* Begin the transition to oclif with 'balena env add' (fix dropped leading zero in device UUID). [Paulo Castro]
* Bump min Node.js version to 8.0, ts-node to 8.1 and typescript to 3.4. Refactor typings folder for use with the tsconfig typeRoots option. [Paulo Castro]

## 10.17.5 - 2019-06-04

* Pin moment-duration-format package (ReferenceError: window is not defined) [Paulo Castro]

## 10.17.4 - 2019-06-03

* .gitignore: Add fast-boot.json generated by balena-dev command [Thodoris Greasidis]

## 10.17.3 - 2019-05-31

* Use an .npmrc to prevent creating a package-lock on each install [Thodoris Greasidis]

## 10.17.2 - 2019-05-30

* Allow newline characters in build/deploy --buildArg values [Paulo Castro]

## 10.17.1 - 2019-05-30

* Fix CI build error (missing @types/mz) [Paulo Castro]

## 10.17.0 - 2019-05-29

* Add preload --add-certificate option [Alexis Svinartchouk]

## 10.16.0 - 2019-05-27

* Compose: remove artificial 20 repo limit [Matthew McGinn]

## 10.15.0 - 2019-05-27

* Add a much faster container replacement for livepush [Cameron Diver]
* Add a containerId request function to the device api module [Cameron Diver]

## 10.14.0 - 2019-05-27

* Add the ability to specify an environment variable when pushing to local mode device [Cameron Diver]

## 10.13.6 - 2019-05-22

* Improve preload's --commit parameter description [Alexis Svinartchouk]
* Fix `balena preload --commit current` alias [Alexis Svinartchouk]

## 10.13.5 - 2019-05-21

* Rename `preload --commit latest` to `preload --commit current` [Alexis Svinartchouk]
* Update balena-preload  to 8.1.4 [Alexis Svinartchouk]

## 10.13.4 - 2019-05-20

* Fix TypeError when running 'balena apps' [Paulo Castro]

## 10.13.3 - 2019-05-17

* Apps: Fix the device count columns being empty [Thodoris Greasidis]

## 10.13.2 - 2019-05-17

* Remove intermediate containers when doing a local push [Cameron Diver]

## 10.13.1 - 2019-05-16

* Docs: Fix os configure example in os build-config docs [Thodoris Greasidis]

## 10.13.0 - 2019-05-15

* Use the open-balena-api endpoints for device type & version info [Thodoris Greasidis]

## 10.12.1 - 2019-05-15

* Preload: bump version to fix preloading on logstream supervisors [Gergely Imreh]

## 10.12.0 - 2019-05-15

* Fix video url [Daniel Andrade]

## 10.11.1 - 2019-05-15

* Debounce livepush invocations to collect changes together [Cameron Diver]

## 10.11.0 - 2019-05-15

* Update balena-cli video url [Daniel Andrade]

## 10.10.5 - 2019-05-14

* Update instructions for adding folder to path in MacOS [Jasmine Gilbert]

## 10.10.4 - 2019-05-14

* Pin pkg version to avoid node 6 error [Cameron Diver]
* Use TCP keepalive probes to detect local log stream closing [Cameron Diver]

## 10.10.3 - 2019-05-10

* Fix 'local configure' on macOS standalone installation [Paulo Castro]

## 10.10.2 - 2019-05-10

* Update dependencies including a balena-preload fix for lots of releases [Pagan Gazzard]

## 10.10.1 - 2019-05-04

* Replace 'npm' upgrade notifier message with INSTALL.md URL [Paulo Castro]

## 10.10.0 - 2019-05-03

* Qemu: use v4.0.0-balena [Gergely Imreh]

## 10.9.4 - 2019-05-02

* Improve livepush UX [Cameron Diver]
* Improve logging for detached mode + livepush [Cameron Diver]

## 10.9.3 - 2019-05-02

* Actions/auth: fix mixed indentation error [Gergely Imreh]
* Dependencies: bump gulp to v4 [Gergely Imreh]
* Dependencies: bump etcher-sdk to pull in fixes [Gergely Imreh]

## 10.9.2 - 2019-05-01

* Update README and INSTALL docs (review typos and some rewording) [Paulo Castro]

## 10.9.1 - 2019-05-01

* Allow any amount of subdomains when parsing .local addresses [Cameron Diver]

## 10.9.0 - 2019-04-29

* Unify the CLI instructions between capitanodoc.ts and README.md, move the installation instructions to INSTALL.md, and update the markdown generation scripts. [Paulo Castro]

## 10.8.2 - 2019-04-26

* Handle app names that look like a number (eg 1234) [Paulo Castro]

## 10.8.1 - 2019-04-26

* Add better semantics for detached mode + live for push [Cameron Diver]

## 10.8.0 - 2019-04-25

* Allow specifying a .local address for logs and push [Cameron Diver]

## 10.7.0 - 2019-04-24

* Allow filtering of system logs with push and logs commands [Cameron Diver]

## 10.6.0 - 2019-04-24

* Add per-service filtering to logs and push [Cameron Diver]

## 10.5.0 - 2019-04-24

* Push: Add detached flag to avoid streaming logs after local push [Cameron Diver]

## 10.4.1 - 2019-04-24

* Add ability to use balena logs with a local mode device [Cameron Diver]
* Refactor: Convert logs action to typescript [Cameron Diver]
* Logs: Make device logs consistent across the CLI [Cameron Diver]
* Refactor: Create and use validation functions for input [Cameron Diver]

## 10.4.0 - 2019-04-24

* Tunnel: allow using partial device uuids [Will Boyce]

## 10.3.0 - 2019-04-23

* Add --dockerfile option to the build, deploy and push commands [Paulo Castro]
* Fix push and deploy issues under Windows ('/' vs '\' path separators) [Paulo Castro]

## 10.2.0 - 2019-04-23

* Update livepush documentation and required versions [Cameron Diver]
* Cleanup intermediate containers on exit of livepush [Cameron Diver]
* Livepush: Perform full rebuild on Dockerfile-like file change [Cameron Diver]
* Add livepush ability to balena push [Cameron Diver]
* Log: Add livepush logging functions [Cameron Diver]
* Add device status endpoint api function [Cameron Diver]

## 10.1.1 - 2019-04-22

* Ensure not marking successful releases as canceled [Thodoris Greasidis]

## 10.1.0 - 2019-04-18

* Updated CLI installation notes on README.md and ran prettier [Paulo Castro]
* Add more information about the stantalone version [Daniel Andrade]

## 10.0.1 - 2019-04-13

* Fix docs markdown (deprecation messages for 'local push' and 'sync') [Paulo Castro]
* Fix file ignore rules matching metadata folders breaking qemu builds [Akis Kesoglou]
* Remove information about livepush in sync deprecation message [Cameron Diver]

## 10.0.0 - 2019-04-03

* Remove 'quickstart' command and deprecate 'local push'. [Paulo Castro]

## 9.15.6 - 2019-03-28

* Support nocache flag in push <ip> [Cameron Diver]

## 9.15.5 - 2019-03-27

* Bump docker-progress (4.0.0) to improve `balena deploy` error handling. [Paulo Castro]

## 9.15.4 - 2019-03-25

* Update resin-compose-parse to v2.0.4 [Pablo Carranza Velez]
* Update resin-multibuild to v2.1.5 [Pablo Carranza Velez]

## 9.15.3 - 2019-03-25

* Allow 'balena push <deviceIpAddress>' when not logged in to balenaCloud. [Paulo Castro]

## 9.15.2 - 2019-03-18

* Bump resin-multibuild (2.1.4), docker-progress (3.0.5), resin-lint (3.0.1) [Paulo Castro]

## 9.15.1 - 2019-03-12

* Add maintainer, reviewers, and devexp team as code owners [Gergely Imreh]

## 9.15.0 - 2019-03-12

* Ssh: add `--noninteractive` flag not to suggest devices to connect to [Gergely Imreh]

## 9.14.7 - 2019-03-11

* Ssh: correct the minimum OS version that allows host OS connection [Gergely Imreh]

## 9.14.6 - 2019-03-07

* Fix 'unauthorized' error for additional members of legacy apps [Paulo Castro]

## 9.14.5 - 2019-03-05

* Retry image push a few times (balena deploy, 'unknown blob') [Paulo Castro]
* Harden 'remote-build' error handling (balena push) [Paulo Castro]

## 9.14.4 - 2019-03-05

* Update resin-multibuild to pick up fixes [Cameron Diver]

## 9.14.3 - 2019-03-04

* Minor doc updates (add DEBUG hint) [Paulo Castro]

## 9.14.2 - 2019-03-01

* Bump resin-multibuild version to fix docker-compose 'context' issue [Paulo Castro]

## 9.14.1 - 2019-02-27

* Add registry-secrets help msg for build and deploy commands [Paulo Castro]

## 9.14.0 - 2019-02-27

* Extend private registry support to balena build and deploy commands [Paulo Castro]

## 9.13.0 - 2019-02-27

* Integrate new resin-multibuild major version (private docker registry authentication support for the docker-compose 'image' instruction). [Paulo Castro]

## 9.12.7 - 2019-02-26

* Fix parsing of not-really-numeric device UUID parameters [Paulo Castro]

## 9.12.6 - 2019-02-22

* Fix regression in ee75ff and restore functionality to ToC in docs [Chris Crocker-White]

## 9.12.5 - 2019-02-22

* Re-run newest prettier on master [Thodoris Greasidis]

## 9.12.4 - 2019-02-20

* Tunnel: Refactor to improve log output [Rich Bayliss]

## 9.12.3 - 2019-02-15

* Tunnel: Add the tunnel command [Rich Bayliss]

## 9.12.2 - 2019-02-07

* Remove fetching of Mixpanel token [Paulo Castro]

## 9.12.1 - 2019-02-05

* Rename localcommit to localrelease in target state for local mode [Cameron Diver]

## 9.12.0 - 2019-01-22

* Don't offer to disable automatic application updates when using pinning [Alexis Svinartchouk]

## 9.11.2 - 2019-01-17

* Update 'balena help local flash' documentation re zipped images [Paulo Castro]

## 9.11.1 - 2019-01-16

* Typescript: Add TypeScript migration notice to README file [Paulo Castro]

## 9.11.0 - 2019-01-16

* Support compressed images in `balena local flash` [Alexis Svinartchouk]

## 9.10.1 - 2019-01-15

* Fix up small docs typo [Matthew McGinn]

## 9.10.0 - 2019-01-14

* Improve startup time by adding fast-boot [Shaun Mulligan]

## 9.9.4 - 2019-01-13

* Lazy load the sdk as much as possible [Pagan Gazzard]

## 9.9.3 - 2019-01-13

* Lazy-load docker-toolbelt [Pagan Gazzard]

## 9.9.2 - 2019-01-11

* Lazy-load etcher-sdk to speed up startup [Pagan Gazzard]
* Lazy-load resin-cli-form and resin-cli-visuals to speed up startup [Pagan Gazzard]

## 9.9.1 - 2019-01-11

* Update util available-drives action [Alexis Svinartchouk]
* Update lib/actions/local/flash.coffee [Alexis Svinartchouk]

## 9.9.0 - 2019-01-10

* Request access to previously pushed release via `balena deploy` [Matthew McGinn]

## 9.8.0 - 2019-01-01

* Escape backticks in JS template literal [Trevor Sullivan]
* Moving docs from PR #1055 [Trevor Sullivan]

## 9.7.0 - 2018-12-28

* Added documentation about the dependencies required to build balena-cli [Trevor Sullivan]

## 9.6.0 - 2018-12-18

* Add push --registry-secrets option for private docker registry authentication [Paulo Castro]

## 9.5.0 - 2018-12-14

* Add explicit device type option to `os configure` & `config generate` [Thodoris Greasidis]

## 9.4.1 - 2018-12-14

* Fix deploy action on node 6 [Alexis Svinartchouk]

## 9.4.0 - 2018-12-10

* Actions: Add resource tag operations [Thodoris Greasidis]

## 9.3.6 - 2018-12-03

* Make architecture checking more stringent when installing emulators [Cameron Diver]

## 9.3.5 - 2018-11-28

* Fix potential dependency security issue [Thodoris Greasidis]

## 9.3.4 - 2018-11-28

* Update dependencies [Cameron Diver]

## 9.3.3 - 2018-11-27

* Actions/os-initialize: Convert Promise to a Bluebird one [Thodoris Greasidis]

## 9.3.2 - 2018-11-26

* Actions/os: Fix os configure using bluebird methods on plain promise [Thodoris Greasidis]

## 9.3.1 - 2018-11-23

* Actions/config: Fix examples to include --version as required [Thodoris Greasidis]

## 9.3.0 - 2018-11-22

* Stop pinning ext2fs and update preload to ^8.0.4 [Alexis Svinartchouk]

## 9.2.2 - 2018-11-20

* Fix missing import in `os configure` [Akis Kesoglou]

## 9.2.1 - 2018-11-19

* Add case-insensitive checking for application names in balena push [Cameron Diver]

## 9.2.0 - 2018-11-16

* Make specifying the version during configuration optional [Akis Kesoglou]

## 9.1.4 - 2018-11-16

* Extend the github repository templates [Thodoris Greasidis]

## 9.1.3 - 2018-11-16

* Include `join` and `leave` commands in API documentation [Akis Kesoglou]

## 9.1.2 - 2018-11-13

* Fix build & deploy commands in standalone build [Tim Perry]

## 9.1.1 - 2018-11-12

* Fix the architecture string used when downloading qemu versions [Cameron Diver]

## 9.1.0 - 2018-11-07

* Update qemu to v3, and automatically use the correct architecture (arm/aarch64) [Edward Keeble]

## 9.0.3 - 2018-11-07

* Mark api keys in the CLI as non-experimental [Tim Perry]

## 9.0.2 - 2018-11-06

* Stop validating device config, now that it's API-generated [Tim Perry]

## v9.0.1 - 2018-11-01

* Dont ignore balena metadata directories when balena pushing [Cameron Diver]

## v9.0.0 - 2018-10-29

* Change env var commands to set app-wide env vars, using the new SDK [Tim Perry]
* Utils/promote: Use the application slug for filtering & presenting [Thodoris Greasidis]
* Rename everything from 'resin' to 'balena' [Tim Perry]
* Sort device types by name [Thodoris Greasidis]
* Utils/promote: Do not rely on the user to always be there [Thodoris Greasidis]
* Add support for the Opensource provisioning flow [Thodoris Greasidis]
* Add rename notice to resin-cli [Paulo Castro]

## v8.1.0 - 2018-10-24

* README: Add development guidelines section [Thodoris Greasidis]
* Chore: Add on the fly transpiled bin [Thodoris Greasidis]

## v8.0.3 - 2018-10-22

* Ssh: Move from resin-sdk-preconfigured to resin-sdk [Will Boyce]

## v8.0.2 - 2018-10-20

* Utils/patterns: Drop resin-sdk-preconfigured [Thodoris Greasidis]
* Actions/app: Drop resin-sdk-preconfigured [Thodoris Greasidis]

## v8.0.1 - 2018-10-20

* Update dockerignore to fix escSL bug [Tim Perry]

## v8.0.0 - 2018-10-19

* Support multicontainer local mode in resin push [Cameron Diver]
* Stop accepting resin-compose.yml as a build composition definition [Cameron Diver]
* Send push source packages as gzipped data [Cameron Diver]
* Respect ignore files when tarring sources [Cameron Diver]
* Check for correct architecture when preloading, instead of correct device type [Alexis Svinartchouk]
* Default preload boolean parameters to false [Alexis Svinartchouk]
* Correctly error out on failed remote builds [Cameron Diver]
* Bump tsconfig target to es6 [Cameron Diver]

## v7.10.9 - 2018-10-18

* Update sdk references in wizzard.coffee [Scott Lowe]

## v7.10.8 - 2018-10-18

* Update sdk references in notes.coffee [Scott Lowe]
* Update sdk references in device.coffee [Scott Lowe]

## v7.10.7 - 2018-10-18

* Update sdk sdk references in auth.coffee [Scott Lowe]

## v7.10.6 - 2018-10-03

* Fix formatting of preload examples [Tim Perry]

## v7.10.5 - 2018-09-25

* README: Fix typo [Lucian Buzzo]

## v7.10.4 - 2018-09-24

* Device: When registering, print the uuid [Pablo Carranza Velez]

## v7.10.3 - 2018-09-19

* Include --emulated in the example resin build parameters [Tim Perry]

## v7.10.2 - 2018-09-18

* Dependencies: Update resin-semver version to support Balena OS [Lucian Buzzo]

## v7.10.1 - 2018-09-11

* Stop Travis deploying to npm (now handled by concourse) [Tim Perry]

## v7.10.0 - 2018-09-11

* Update resin-cli-form to 2.x [Pagan Gazzard]

## v7.9.4 - 2018-09-10

* Device api keys are no longer used in the registration process [Theodor Gherzan]

## v7.9.3 - 2018-08-20

* Fix configuration hangs with some images by expanding the threadpool #952 [Tim Perry]

## v7.9.2 - 2018-08-15

* Add warning about re-enabling automatic updates #946 [Pagan Gazzard]

## v7.9.1 - 2018-08-15

* Fix errors in `getRequestStream` not being propogated #942 [Pagan Gazzard]

## v7.9.0 - 2018-08-09

* Support emulated and nocache options for remote builds #903 [Cameron Diver]

## v7.8.6 - 2018-08-09

* Fix bug where the sudo helper failed in os initialize #939 [Tim Perry]

## v7.8.5 - 2018-08-09

* Update .resin-sync.yml docs for local push and include example env vars #934 [Tim Perry]

## v7.8.4 - 2018-08-02

* Update klaw #936 [Tim Perry]

## v7.8.3 - 2018-07-25

* Follow links found during builds #931 [Tim Perry]

## v7.8.2 - 2018-07-25

* Update reconfix to fix volume signature errors in local configure #929 [Tim Perry]

## v7.8.1 - 2018-07-20

* Be explicit about how much initial history log tailing includes #930 [Tim Perry]

## v7.8.0 - 2018-07-20

* Add join/leave commands to promote and move devices between platforms #895 [Akis Kesoglou]

## v7.7.4 - 2018-07-17

* Update TypeScript to 2.8.1 #923 [Tim Perry]
* Add --version options to os configure & config generate #923 [Tim Perry]
* Update OS & config actions to the latest SDK #923 [Tim Perry]

## v7.7.3 - 2018-07-13

* Update the deploy key since npm invalidated the old one #927 [Tim Perry]

## v7.7.2 - 2018-07-13

* Pin ext2fs to 1.0.7 to avoid temporary deployment issues #926 [Tim Perry]

## v7.7.1 - 2018-07-12

* Update CLI to SDK v10 (include new API logs) #925 [Tim Perry]

## v7.7.0 - 2018-07-11

* Add --generate-device-api-key parameter to config generate #921 [Tim Perry]

## v7.6.2 - 2018-06-28

* Make local commands more resilient to unnamed containers #910 [Tim Perry]

## v7.6.1 - 2018-06-26

* Make sure 'resin push' is included in the docs #907 [Tim Perry]

## v7.6.0 - 2018-06-20

* Support pinned release preloading #896 [Cameron Diver]

## v7.5.2 - 2018-06-12

* Document Pyhton native build dependency #893 [Tim Perry]

## v7.5.1 - 2018-06-01

* Add a multicontainer caveat to the env var commands #887 [Tim Perry]

## v7.5.0 - 2018-05-31

* Update resin-compose-parse dependency version to 1.10.2 #883 [Ariel Flesler]

## v7.4.1 - 2018-05-24

* Update SDK in resin device(s) to ensure the dashboard URL is correct #879 [Tim Perry]

## v7.4.0 - 2018-05-10

* Add push command which starts a build on remote resin servers #868 [Cameron Diver]

## v7.3.8 - 2018-05-03

* Catch require errors and provide helpful instructions #874 [Tim Perry]
* Inline the entire resin-cli-errors module #874 [Tim Perry]

## v7.3.7 - 2018-04-30

* Pin node types to v9.0.0 to avoid build errors with transient dependencies #871 [Cameron Diver]

## v7.3.6 - 2018-04-30

* Update resin-image-fs to stop non-config commands failing in node 10 #870 [Tim Perry]

## v7.3.5 - 2018-04-18

* Don't show Docker container status from devices, as it can be wrong #858 [Tim Perry]

## v7.3.4 - 2018-04-18

* Include resin compose schemas in the standalone build #865 [Tim Perry]

## v7.3.3 - 2018-04-17

* Don't report lots of user input errors #861 [Tim Perry]
* Include Sentry breadcrumbs for context in error reports #861 [Tim Perry]
* Update to Sentry 2.x #861 [Tim Perry]

## v7.3.2 - 2018-04-16

* Update Dockerode to fix local push issue in standalone builds #862 [Tim Perry]

## v7.3.1 - 2018-04-13

* Update resin-compose-parse to v1.8.1 to fix a problem parsing ports #849 [Pablo Carranza Velez]

## v7.3.0 - 2018-04-12

* Add 'api-key generate' command #854 [Tim Perry]

## v7.2.4 - 2018-04-10

* Explicitly depend on tar-stream #852 [Tim Perry]
* Correct documented node version requirement to 6+ #852 [Tim Perry]

## v7.2.3 - 2018-04-06

* Add a fast build script to package.json #847 [Cameron Diver]

## v7.2.2 - 2018-04-04

* Throw a clear error when logging in with an invalid token #846 [Tim Perry]

## v7.2.1 - 2018-03-29

* Update docker-qemu-transpose to avoid the broken 0.4.1 release #839 [Tim Perry]

## v7.2.0 - 2018-03-29

* Do not require a login for builds #835 [Tim Perry]
* Allow (experimental!) login with API keys #835 [Tim Perry]

## v7.1.6 - 2018-03-29

* Fix build emulation for multi-stage builds #838 [Tim Perry]

## v7.1.5 - 2018-03-27

* Fix crash when an app is not specified for build command #834 [Akis Kesoglou]

## v7.1.4 - 2018-03-26

* Upgrade resin-sync to pull in the fix for #824 #832 [Tim Perry]

## v7.1.3 - 2018-03-23

* Prefix all pine options with '$' in preload to avoid pine warnings. #831 [Alexis Svinartchouk]

## v7.1.2 - 2018-03-23

* Update resin-preload to 6.2.0 and resin-sdk to 9.0.0-beta16 #830 [Alexis Svinartchouk]

## v7.1.1 - 2018-03-22

* Remove explicit anchor links in CLI docs #827 [Zach Walchuk]

## v7.1.0 - 2018-03-22

* Warn early if deploying a multicontainer project to an incompatible app #818 [Akis Kesoglou]
* Add legacy deploy method back #818 [Akis Kesoglou]

## v7.0.7 - 2018-03-20

* Update resin-preload to 6.1.2 #821 [Alexis Svinartchouk]

## v7.0.6 - 2018-03-20

* Make sure image name is all lowercase #815 [Akis Kesoglou]
* Improve handling of build log output #815 [Akis Kesoglou]

## v7.0.5 - 2018-03-15

* Add bash completions #801 [Ronald McCollam]

## v7.0.4 - 2018-03-15

* Generate consistent working anchors for both our md output & resin docs #813 [Tim Perry]

## v7.0.3 - 2018-03-15

* Fix getting window size when there’s no TTY attached #812 [Akis Kesoglou]

## v7.0.2 - 2018-03-13

* Update full CLI docs with recent installation improvements too #807 [Tim Perry]

## v7.0.1 - 2018-03-12

* Recommend using unsafe-prem to avoid permission issues on install #805 [Tim Perry]
* Remove unnecessary resin-cli-auth dependency #805 [Tim Perry]

## v7.0.0 - 2018-03-09

* Add docker-compose-aware builds and deployments #792 [Akis Kesoglou]
* *BREAKING*: Remove support for plugins entirely #792 [Tim Perry]
* Update dashboard login to use the multicontainer SDK #792 [Alexis Svinartchouk]
* Multicontainer preload: Update resin-preload to 6.0.0-beta4 #792 [Alexis Svinartchouk]
* Update the keys action to use the multicontainer SDK #792 [Alexis Svinartchouk]
* Require multicontainer SDK #792 [Alexis Svinartchouk]

## v6.13.5 - 2018-03-07

* Fix prettier configuration to avoid linting errors #802 [Tim Perry]

## v6.13.4 - 2018-02-22

* Fix issue where emulated builds broke Docker `ENV` commands #796 [Gergely Imreh]

## v6.13.3 - 2018-02-20

* Tweak TS & add missing deps that may cause build failures in some envs #793 [Tim Perry]

## v6.13.2 - 2018-02-20

* Ensure login does not wait for the browser process to close #794 [Tim Perry]

## v6.13.1 - 2018-02-07

* Move to the correct coffeescript (no hyphen) dependency #786 [Tim Perry]
* Add typings for 'ent' #786 [Tim Perry]

## v6.13.0 - 2018-02-06

* Add support for Balena in local ssh #777 [Tim Perry]

## v6.12.9 - 2018-02-05

* Switch back to upstream global-tunnel-ng #781 [Alexis Svinartchouk]

## v6.12.8 - 2018-02-03

* Fix uuid params being parsed a numbers #774 [Thodoris Greasidis]

## v6.12.7 - 2018-01-30

* Add 'or mounted resinOS image' #767 [MoranF]

## v6.12.6 - 2018-01-29

* Don't use the deprecated 'os configure' format in internal calls #759 [Tim Perry]

## v6.12.5 - 2018-01-11

* Fix breakage in deploy command from recent TS conversion #754 [Tim Perry]

## v6.12.4 - 2018-01-10

* Start using Prettier #753 [Tim Perry]

## v6.12.3 - 2018-01-09

* Lint TypeScript and CoffeeScript with resin-lint #743 [Tim Perry]
* Move documentation generation to TypeScript #743 [Tim Perry]
* Convert most of utils to TypeScript #743 [Tim Perry]

## v6.12.2 - 2018-01-09

* Convert windows paths to posix when passing to tar #748 [Andrew Shirley]

## v6.12.1 - 2018-01-02

* Fix deprecation warning for os configure, when passing a bare UUID #744 [Tim Perry]

## v6.12.0 - 2017-12-19

* Add ssh option for direct host OS access #737 [Andreas Fitzek]

## v6.11.0 - 2017-12-18

* Fix docs generation when building on windows #729 [Tim Perry]
* Autodeploy built standalone binaries for all platforms to github #729 [Tim Perry]
* Package the CLI into a standalone runnable binary #729 [Tim Perry]
* Move from open to opn #729 [Tim Perry]

## v6.10.3 - 2017-12-15

* Ensure logout works even with invalid credentials, or if not logged in #730 [Tim Perry]

## v6.10.2 - 2017-11-27

* Inline the entire resin-cli-auth module #721 [Tim Perry]

## v6.10.1 - 2017-11-27

* Set up TypeScript compilation, and make a small start on converting the CLI #720 [Tim Perry]
* Don't commit raw JS build output #720 [Tim Perry]

## v6.10.0 - 2017-11-17

* Allow `os configure` to configure for an app, not just a specific device #718 [Tim Perry]
* Print help even for expected errors #718 [Tim Perry]

## v6.9.0 - 2017-11-16

* Allow non-interactice config generate for simple network settings #714 [Tim Perry]
* Fix issue where network settings were not used by `config generate` #714 [Tim Perry]

## v6.8.3 - 2017-11-16

* Remove resin promote command (which has never worked) to wait for larger resinOS provisioning updates #717 [Tim Perry]

## v6.8.2 - 2017-11-14

* Fix 'cannot read property R_OK of undefined' error in Node >=6 <6.3 #713 [Tim Perry]

## v6.8.1 - 2017-11-09

* Avoid AmbiguousApplication errors in device register when an id is used #711 [Tim Perry]

## v6.8.0 - 2017-10-27

* Allow preloading jetson-tx2 images, improve flasher images detection and remove the --dont-detect-flasher-type-images option. #706 [Alexis Svinartchouk]

## v6.7.4 - 2017-10-25

* Add preload to the CLI docs #702 [Tim Perry]

## v6.7.3 - 2017-10-25

* Allow specifying `--commit=latest` for `resin preload` #701 [Alexis Svinartchouk]

## v6.7.2 - 2017-10-24

* Make update-notifier more resilient and ensure it obeys NO_UPDATE_NOTIFIER, by updating it #699 [Tim Perry]

## v6.7.1 - 2017-10-24

* Respect the -dont-check-device-type option, fix error message #697 [Alexis Svinartchouk]

## v6.7.0 - 2017-10-18

* Added a device api key parameter to the `os configure` command. #487 [Pagan Gazzard]
* Added a `--device-api-key` option to the `config generate` command. #487 [Pagan Gazzard]
* Added a `--device-api-key` option to the `device register` command. #487 [Pagan Gazzard]

## v6.6.13 - 2017-10-18

* Fix issue where `os download` would always download prod images #689 [Tim Perry]

## v6.6.12 - 2017-10-16

* Update resin-preload to 4.0.2 to support preloading Edison images #687 [Alexis Svinartchouk]

## v6.6.11 - 2017-10-13

* Document how to `resin deploy` to an app as a collaborator #685 [Tim Perry]

## v6.6.10 - 2017-10-09

* Ensure hostname truly is optional when configuring device images #676 [Tim Perry]

## v6.6.9 - 2017-10-06

* Fix resin preload --splash-image argument handling #678 [Alexis Svinartchouk]

## v6.6.8 - 2017-10-06

* Ensure analytics failures (e.g. from broken tokens) at startup don't break commands #675 [Tim Perry]

## v6.6.7 - 2017-09-22

* Update to resin-sync, which fixes local push on windows #666 [Tim Perry]
* Add windows instructions to fix node-gyp installs #666 [Tim Perry]

## v6.6.6 - 2017-09-11

* Create ISSUE_TEMPLATE.md #655 [Kostas Lekkas]

## v6.6.5 - 2017-08-31

* Fix lodash bugs in device move & quickstart #643 [Tim Perry]

## v6.6.4 - 2017-08-31

* Catch uncommitted build output automatically in Travis #644 [Tim Perry]

## v6.6.3 - 2017-08-31

* Update README to link to the full CLI command documentation #641 [Tim Perry]

## v6.6.2 - 2017-08-31

* Use DOCKER_HOST from env if possible, and no connection options are available #642 [Tim Perry]

## v6.6.1 - 2017-08-28

* Update resin-preload to 3.1.4 #650 [Alexis Svinartchouk]

## v6.6.0 - 2017-08-28

* Add a --dont-check-device-type option for `resin preload` #647 [Alexis Svinartchouk]

## v6.5.3 - 2017-08-24

* Remove resin-preload build filtering workaround. #645 [Alexis Svinartchouk]

## v6.5.2 - 2017-08-22

### Changed

 - Progress bar when preload builds its docker image or fetches the build size;
 - Preload will do nothing if you try to preload a build that is already preloaded in the image.

## v6.5.1 - 2017-08-21

### Fixed

- Fix lodash upgrade bug that broke `resin help`

## v6.5.0 - 2017-08-18

### Changed

- Set up Travis npm autodeploy
- Upgrade to Lodash v4, drastically reducing install size (due to dedupes)
- Updated npm package description
- Added support for looking up shared apps via [owner]/[appname] strings

### Added

- Use forked global-tunnel-ng that doesn't proxy connections to socket files
- Preload support

## v6.4.0 - 2017-08-11

### Changed

- Support overlay2 in resin local push
- Support Docker versions greater than 1.X in resin sync
- Provide a helpful warning when Docker is not installed (or is unaccessible)
- Added a link to the Node download page in the warning for users with old Node versions
- Remove inconsistent (and now unneccesary) 'Tagging image as' message from local build output

## v6.3.1 - 2017-08-08

- Updated resin-cli-auth to point to the correct resin dashboard ued for authentication (for example, staging)

## v6.3.0 - 2017-08-03

### Fixed

- Fixed compatibility of `resin local push` with docker >= 1.12

## v6.2.0 - 2017-07-27

### Changed

- Support the new resinOS versions where the sample connection file is called `resin-sample.ignore`

## v6.1.1 - 2017-07-18

### Changed

- Hide the intro quickstart message for now (until it gets renovated)

## v6.1.0 - 2017-06-30

### Fixed

- Fix issue where emulated builds broke Docker `ARG` commands
- Fix issue when using resin deploy with non-standard stdin (e.g. git bash on windows)

### Added

- Bump resin-sync@8.0.1
	- Permit resin sync to collaborators
	- Fix "'cwd' must be a string" error in Node 8
- Do not explicitly disable ControlMaster option for device SSH connections

## v6.0.0 - 2017-06-26

### Added

- Added support for `--squash` parameter for `resin build`

### Fixed

- **Breaking** Remove Buffer polyfill, require Node v6+, and print warnings in older versions

## v5.11.1 - 2017-06-22

### Added

- Include Node version in Sentry logging

### Fixed

- Ensure to send .pem file contents rather than filename to docker daemon
- Add a polyfill to fix `local configure` in older (<6) Node versions

## v5.11.0 - 2017-06-19

### Added

- `package-lock.json` for `npm5` users
- Added ability to run an emulated build silently with `resin build`
- Gzip images when uploading in `resin deploy`
- Show a clear message immediately as the deploy starts, if we're deploying an image.
- Forced update to the newest resin-sdk (^6.4.1)
- Allow OS version selection when doing `resin device init`
- Actually tolerate the `--yes` param to `resin device init`
- Allows passing `--drive` to `resin device init`
- List detected drives with `resin util available-drives`
- Add the `resin os build-config` method to pass the interactive config step once
and reuse the built file for subsequent `resin os configure` calls (added the new `--config` param to it),
and for `resin device init` (same `--config` param)
- Improve the supported device types listing

### Fixed

- Ensure emulated builds use the correct relative path to qemu when called from any location
- Make emulated builds reliable in the presence for WORKDIR comands

## v5.10.2 - 2017-05-31

### Fixed

- Fixed command line arguments for `resin build`

## v5.10.1 - 2017-05-22

### Fixed

- Fixed breaking bug in `resin local ssh`

## v5.10.0 - 2017-05-22

### Added

- Reduce granularity of update checking to one day
- Include extra usage metadata in error logging to help debugging
- Add uploading of build logs when present with resin deploy
- Highlight cache usage in a local build
- Show a progress bar for upload progress
- Add ability to specify build-time variables for local builds
- Added the proxy support for the `resin ssh` command

### Fixed

- Fixed the not enough unicorns bug in resin build
- Removed the install-time warning for the `valid-email` package

## v5.9.1 - 2017-05-01

### Fixed

- Technical release because v5.9.0 was published earlier (erroneously)

## v5.9.0 - 2017-05-01

### Added

- HTTP(S) proxy support

## v5.8.1 - 2017-04-27

### Fixed

- The `ssh` command was broken

## v5.8.0 - 2017-04-26

### Added

- Add cloud builder output to local build
- Add nocache and tag options to resin deploy
- Add ability to build and deploy an image to resin's infrastructure

### Fixed

- Capture and report errors happening during the program initialization, like parsing invalid YAML config

## v5.7.2 - 2017-04-18

### Fixed

- Fixed warning on NPM install due to dependency conflicts
- Improved node v4 support (some operations are fixed, some will run faster)

## v5.7.1 - 2017-04-03

### Fixed

- Add basic support for the new ResinOS version format

## v5.7.0 - 2017-03-28

### Fixed

- The OS init issues:
	* failing to get the superuser resin auth (tried to look into `/root/.resin`)
	* failing to write to the drive

## v5.6.1 - 2017-03-23

### Added

- Add Sentry error tracking

### Fixed

- The unneeded warning about the default OS version download from the `device init` command.
- Changed the help references from gitter to forums.

## v5.6.0 - 2017-03-23

### Added

- The `--version` option to the `os download` command. Check `resin help os download` for details.

## v5.5.0 - 2017-03-10

### Added

- Require superuser for scan commands, also introduce docker timeout
- Bump resin-sync@7.0.0: use experimental rds which requires superuser permissions

## v5.4.0 - 2017-03-09

### Added

- Implement 'resin local stop'
- Implement 'resin local'
- Implement 'resin local push'
- Implement 'resin local ssh'
- Implement 'resin local scan'
- Implement 'resin local promote'
- Implement 'resin local logs'
- Implement 'resin local flash'
- Implement 'resin local configure'

### Changed

- Remove app create from primary commands

## v5.3.0 - 2017-03-03

### Added

- `resin sync` AUFS device support

### Changed

- Moved to the new version of `resin-sdk` (via `resin-sdk-preconfigured`)

## v5.2.4 - 2017-01-18

### Changed

- Fix documented requirements for resin ssh and resin sync

## v5.2.3 - 2017-01-04

### Changed

- Add missing `js-yaml` dependency.

## v5.2.2 - 2016-11-01

### Changed

- Fix `shutdown` command not being available.

## v5.2.1 - 2016-10-28

### Changed

- Fix `Boolean options can't have parameters` error in every command.

## v5.2.0 - 2016-10-27

### Added

- Add `shutdown` command.
- Add `--force` option to `device reboot` command.

## v5.1.0 - 2016-09-25

### Added

- Add `devices supported` command.

## v5.0.0 - 2016-09-15

### Added

- Automatically parse '.gitignore' for file inclusions/exclusions from resin sync by default. Skip parsing with `--skip-gitignore`.
- Automatically save options to `<sourceDirectory>/.resin-sync.yml` after every run.
- Support user-specified destination directories with `--destination/-d` option.
- Implement `--after` option to perform actions local (e.g. cleanup) after resin sync has finished.
- Implement interactive dialog for destination directory, with `/usr/src/app` being the default choice.

### Changed

- Require `resin sync` `--source/-s` option if a `.resin-sync.yml` file is not found in the current directory.
- Require `uuid` as an argument in `resin sync/ssh` (`appName` has been removed).
- Always display interactive device selection dialog when uuid is not passed as an argument.
- Disable ControlMaster ssh option (as reported in support).

## v4.5.0 - 2016-09-14

### Added

- Attempt to retrieve device type from the image's first partition.

## v4.4.0 - 2016-08-11

### Changed

- Display OS and Supervisor version in `devices` and `device` commands.

## v4.3.0 - 2016-08-11

### Added

- Implement `device public-url enable` command.
- Implement `device public-url disable` command.
- Implement `device public-url status` command.
- Implement `device public-url` command.
- Add global `--help` option.

## v4.2.1 - 2016-07-26

### Changed

- Fix log messages being `undefined`.

## v4.2.0 - 2016-06-22

### Added

- Add `verbose` option to `resin sync`.

## v4.1.0 - 2016-06-22

### Added

- Add `verbose` option to `resin ssh`.

## v4.0.3 - 2016-05-17

### Changed

- Fix `resin ssh` errors when running in `cmd.exe`.

## v4.0.2 - 2016-04-27

### Changed

- Upgrade `resin-sync` to v2.0.2.

## v4.0.1 - 2016-04-26

### Changed

- Fix unhandled exceptions in the `resin ssh` command.

## v4.0.0 - 2016-04-26

### Added

- Implement `resin ssh` command

### Changed

- Remove `resin sync` `exec` option.
- Upgrade `resin-sync` to v2.0.1.
- Upgrade `resin-sdk` to v5.3.0.

## v3.0.2 - 2016-04-08

### Changed

- Fix `os configure` command not working with shorter uuids.

## v3.0.1 - 2016-03-29

### Changed

- Log Mixpanel events based on the matching command signature.

## v3.0.0 - 2016-03-28

### Added

- Implement `config inject` command.
- Document the case where `EACCES` is thrown during login because of an expired token.
- Integrate `resin-plugin-sync` as a build-in command.

### Changed

- Allow `config generate` to generate a `config.json` for an application.
- Force update alert to always be shown.
- Only throw "Invalid 2FA code" if we're sure that's the cause during `login`.

## v2.7.0 - 2016-03-07

### Added

- Implement `config generate` command.
- Implement `device reboot` command.

## v2.6.2 - 2016-02-19

### Removed

- Remove debugging statement in `quickstart`.

## v2.6.1 - 2016-02-12

### Added

- Documented corrupted image MBR error.
- Show parser device status in `device` command.
- Show id a device is online in `devices` command.
- Make use of static images.

### Changed

- Improve analytics.
- Improve `quickstart` messages.
- Fix `device` example.

## v2.6.0 - 2016-01-21

### Added

- Add support for credential-based authentication.
- Redirect users to GitHub and Gitter in case of errors.
- Add Resin.io ASCII art header on `login`.
- Print an informative next-steps message after `login`.
- Print informative verbose help to `resin help`.
- Support for shorter uuids in all commands.

### Changed

- Change license to Apache 2.0.
- Don't make `device init` a primary command.
- Stop instructing users to run `quickstart` as root.
- Make `login` command purely interactive.
- Handle authentication in `quickstart` if user is not logged in.
- Redirect to `signup` from `login` if user doesn't have an account.
- Make sure to remove registered device resource in case of errors in `quickstart`.
- Upgrade Resin SDK to v5.0.1.
- Upgrade Resin Image Manager to v3.2.6.
- Make `devices` output shorter uuids.

## v2.5.0 - 2015-12-11

### Added

- Show device id in `resin devices`.
- Add helpful instructions after `resin quickstart`.
- Add timestamp to `resin logs` lines.

### Changed

- Lazy load command actions dependencies for performance reasons.

## v2.4.0 - 2015-12-01

### Added

- Show device types when selecting applications.
- Automatic token exchange login with the web dashboard.

### Changed

- Simplify download output messages.

## v2.3.0 - 2015-11-20

### Added

- Implement `settings` command.
- Handle Windows elevation automatically.

### Changed

- Show uuids in `devices` command.
- Clarify resin url in `login` and `whoami`.

## v2.2.0 - 2015-11-12

### Added

- Implement `device move` command.

## v2.1.0 - 2015-11-11

### Added

- Implement `config read` command.
- Implement `config write` command.

### Changed

- Clarify the need of computer password during `sudo` in `os initialize`.

## v2.0.1 - 2015-10-26

### Changed

- Fix critical error when elevating permissions.

## v2.0.0 - 2015-10-26

### Added

- Add `drive` option to `os initialize`.
- Add application name length validation.
- Allow passing a custom uuid to `device register`.
- Add `advanced` option in `device init`.
- Implement user/password login form with 2FA support.

### Changed

- Clarify the need for admin privileges on update.
- Fix non working `yes` option in `os initialize`.
- Fix non working `type` option in `app create`.
- Take device type as an option in `os initialize`.
- Improve the way the update notifier is shown.
- Ignore advanced configuration options by default.
- Fix	`device info` shadowing other command help pages.

### Removed

- Remove login with token functionality.
- Remove project directory creation logic in `device init`.
- Remove `app associate` command.

## v1.1.0 - 2015-10-13

### Added

- Implement `os download` command.
- Implement `os configure` command.
- Implement `os initialize` command.
- Implement `device register` command.
- Add TROUBLESHOOTING guide.
- Add a dynamic widget for selecting connected drives.

### Changed

- Make sure temporary files are removed on failures in `device init`.
- Prompt to select application if running `device init` with no arguments.
- Only use admin privileges in `os initialize` to avoid the cache directory to belong to `root`.
- Separate help output per relevance.
- Only print primary command help by default.
- Print plugin warnings in red as the rest of the errors.
- Shorten the length of device await message.
- Upgrade Resin SDK to v3.0.0.
- Check that a directory is a `git` repository before attempting to run `git` operations on it.
- Improve plugin scanning mechanism.
- Fix `EPERM` issue in Windows after a successfull `device init`.
- Fix SDCard burning issues in Windows 10.
- Fix plugins not being loaded in Windows 10.
- Fix bug when listing the available drives in Windows when the user name contains spaces.
- Fix an edge case that caused drives to be scanned incorrectly in OS X.
- Fix operating system not being detected correctly when initializing a device.

### Removed

- Remove outdated information from README.