# 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/).
## 12.6.3 - 2020-07-08
* Improve help description for --nocache option of `balena push` [Vipul Gupta (@vipulgupta2048)]
## 12.6.2 - 2020-07-08
* Remove rindle dependency [Pagan Gazzard]
## 12.6.1 - 2020-07-08
* preload: Expand dockerd stderr logs in case of errors [Paulo Castro]
## 12.6.0 - 2020-07-06
* build/deploy/preload: Accept DOCKER_CERT_PATH and DOCKER_TLS_VERIFY env vars [Paulo Castro]
## 12.5.2 - 2020-07-06
* Modify runCommand to accept args array instead of string [Scott Lowe]
## 12.5.1 - 2020-07-06
* Convert `logs` command to oclif [Scott Lowe]
## 12.5.0 - 2020-07-03
* config generate, os configure: Add support for mixed arch fleets [Thodoris Greasidis]
## 12.4.0 - 2020-07-03
* os download: Allow not logged in users to download images [Thodoris Greasidis]
## 12.3.15 - 2020-07-03
* Publish '.fast-boot.json' to the npm registry to avoid stale caching [Paulo Castro]
## 12.3.14 - 2020-07-03
* balena ssh: Add test cases [Paulo Castro]
* Update `os download` help re openBalena support [Paulo Castro]
## 12.3.13 - 2020-07-03
* Add explicit dependency on balena-settings-storage [Pagan Gazzard]
## 12.3.12 - 2020-07-02
* Convert `device init` to async await and oclif [Scott Lowe]
* Fix cross-framework nested commands [Scott Lowe]
## 12.3.11 - 2020-07-02
* Remove all module level bluebird usage from eagerly loaded modules [Pagan Gazzard]
## 12.3.10 - 2020-07-02
* Convert lib/actions-oclif/tunnel to async/await [Pagan Gazzard]
## 12.3.9 - 2020-07-02
* balena ssh: Refactor error handling and test cases [Paulo Castro]
* Improve pkg dependency resolution (standalone zip package reliability) [Paulo Castro]
## 12.3.8 - 2020-07-01
* Enable long stack traces for `--debug` as well as `DEBUG=1` [Pagan Gazzard]
## 12.3.7 - 2020-07-01
* Convert command `tunnel` to oclif, and fix port map spec issues. [Scott Lowe]
## 12.3.6 - 2020-06-30
* Switch from Bluebird.join to native version [Pagan Gazzard]
* Switch from new Bluebird to native version [Pagan Gazzard]
* Switch from Bluebird.each to native version [Pagan Gazzard]
* Switch from Bluebird.map to native version [Pagan Gazzard]
## 12.3.5 - 2020-06-30
* Add typing info to requires wherever possible [Pagan Gazzard]
## 12.3.4 - 2020-06-30
* Update dependencies still using balena-sdk 10.x [Pagan Gazzard]
## 12.3.3 - 2020-06-30
* Generate/include an oclif.manifest.json when packaging [Pagan Gazzard]
## 12.3.2 - 2020-06-30
* Stop importing specific lodash files [Pagan Gazzard]
## 12.3.1 - 2020-06-30
* CODEOWNERS: Change to use the respective GitHub team [Thodoris Greasidis]
## 12.3.0 - 2020-06-29
* Use @balena/es-version to set the desired es version for modules [Pagan Gazzard]
## 12.2.2 - 2020-06-29
* Prepare for field based retrieval of device overall_status [Thodoris Greasidis]
* Drop balena-device-status from the dependencies [Thodoris Greasidis]
* Stop using the removed imageMakerUrl balena-sdk argument [Thodoris Greasidis]
## 12.2.1 - 2020-06-29
* Add back the device mac_address field [Thodoris Greasidis]
## 12.2.0 - 2020-06-28
* Add --multi-dockerignore (-m) option to push/build/deploy commands [Paulo Castro]
## 12.1.16 - 2020-06-26
* Recategorize some errors as expected. [Scott Lowe]
## 12.1.15 - 2020-06-26
* Convert command ssh to oclif. [Scott Lowe]
## 12.1.14 - 2020-06-25
* Import just strip-tags from common-tags to reduce startup time [Pagan Gazzard]
## 12.1.13 - 2020-06-25
* Improve documentation regarding Windows support for `os configure`. [Scott Lowe]
## 12.1.12 - 2020-06-24
* Use native fs promises rather than promisify or mz [Pagan Gazzard]
## 12.1.11 - 2020-06-24
* Use cacheScope for fast-boot2 to allow caching when globally installed [Pagan Gazzard]
## 12.1.10 - 2020-06-24
* Simplify some exports [Pagan Gazzard]
## 12.1.9 - 2020-06-24
* Use `import type` where possible to explicitly import only type info [Pagan Gazzard]
## 12.1.8 - 2020-06-24
* Standardize all references to Bluebird [Pagan Gazzard]
## 12.1.7 - 2020-06-24
* Cache username for a given auth to avoid fetching it every time [Pagan Gazzard]
## 12.1.6 - 2020-06-24
* Make offline device error handling more robust. [Scott Lowe]
* Improve handling of oclif parser errors. [Scott Lowe]
* Convert commands login, logout, whoami to oclif. [Scott Lowe]
## 12.1.5 - 2020-06-23
* Update INSTALL.md re supported Node.js versions and '--unsafe-perm' [Paulo Castro]
## 12.1.4 - 2020-06-22
* Stub the errors module without needing two export methods [Pagan Gazzard]
## 12.1.3 - 2020-06-22
* Add runtime warning for unused .dockerignore files [Paulo Castro]
* Improve error handling for oclif "missing required arg" [Paulo Castro]
## 12.1.2 - 2020-06-19
* Convert device os-update command to oclif [Scott Lowe]
## 12.1.1 - 2020-06-18
* Convert device commands to oclif [Scott Lowe]
## 12.1.0 - 2020-06-17
* Add --gitignore (-g) option to push/build/deploy commands for v11 compatibility [Paulo Castro]
## 12.0.0 - 2020-06-16
* v12 RELEASE NOTES: see https://git.io/Jf7hz [Paulo Castro]
* Update 'balena-lint' and apply new prettier rules [Paulo Castro]
* Convert 'logs' command to async/await and add tests [Paulo Castro]
* Add tests for standalone executable via proxy server [Paulo Castro]
* Update 'global-agent' (fix proxy server issues with unauthenticated setup) [Paulo Castro]
* Update 'balena-sdk' from v12 to v13 and update code and tests as needed [Paulo Castro]
* Update 'pkg' dependency (improve support for Node v14) [Paulo Castro]
* Turn v12 feature switch on [Paulo Castro]
* Update minimum Node.js requirement from v8 to v10 [Paulo Castro]
## 11.36.0 - 2020-06-11
* balena device: Add the mac_address field [Thodoris Greasidis]
## 11.35.21 - 2020-06-11
* Allow setting the initialDeviceName [Rich Bayliss]
## 11.35.20 - 2020-06-10
* Restrict error handler typing [Scott Lowe]
## 11.35.19 - 2020-06-09
* Fix handling of BalenaExpiredToken error [Scott Lowe]
## 11.35.18 - 2020-06-05
* v12 preparations: Add feature switch for default eol-converson [Scott Lowe]
* v12 preparations: Fix dockerignore tests on Windows [Paulo Castro]
## 11.35.17 - 2020-06-02
* Convert 'balena device public-url' commands to oclif [Scott Lowe]
## 11.35.16 - 2020-06-02
* v12 preparations: Add feature switch for build/deploy `--logs` option [Paulo Castro]
## 11.35.15 - 2020-05-29
* v12 preparations: Add feature switch for project directory validation [Paulo Castro]
* v12 preparations: Add feature switch for 'balena apps --verbose' [Paulo Castro]
* v12 preparations: Add feature switch for 'devices supported' default columns [Paulo Castro]
* v12 preparations: Amend test cases for '--nogitignore' option [Paulo Castro]
## 11.35.14 - 2020-05-29
* v12 preparations: Add feature switch for 'envs --all' [Scott Lowe]
## 11.35.13 - 2020-05-29
* v12 preparations: Add feature switch to remove id from 'tags' output [Scott Lowe]
## 11.35.12 - 2020-05-29
* v12 preparations: Add feature switch for '--nogitignore' [Paulo Castro]
## 11.35.11 - 2020-05-28
* Convert `tags`, `tag set`, `tag rm` to oclif. [Scott Lowe]
## 11.35.10 - 2020-05-27
* v12 preparations: Add version switch, update login message. [Scott Lowe]
## 11.35.9 - 2020-05-25
* balena deploy: Fix "access denied" pushing images to registry [Paulo Castro]
## 11.35.8 - 2020-05-25
* Fix lazy loading in utils/compose [Pagan Gazzard]
## 11.35.7 - 2020-05-22
* Replace windows dns workaround with single lookup [Scott Lowe]
## 11.35.6 - 2020-05-21
* Convert selected functions to Typescript and async/await (compose.js) [Paulo Castro]
* Add tests for 'balena deploy' [Paulo Castro]
## 11.35.5 - 2020-05-21
* Fix caching by preserving all file stats when pushing to device or cloud [Cameron Diver]
## 11.35.4 - 2020-05-19
* Add unit tests for errors module [Scott Lowe]
## 11.35.3 - 2020-05-18
* Update typescript to 3.9 [Pagan Gazzard]
## 11.35.2 - 2020-05-16
* Fix 'balena login' web authorization hanging with Google Chrome [Paulo Castro]
* Update web page wording for 'balena login' web authorization [Paulo Castro]
* Update `balena preload` help message (clarify accepted image formats) [Paulo Castro]
* Update pre-commit script error message (automation/check-doc.js) [Paulo Castro]
## 11.35.1 - 2020-05-14
* Update GitHub templates for new issues and pull requests [Paulo Castro]
## 11.35.0 - 2020-05-14
* balena apps: add --verbose option to list application slugs (full app name) [Paulo Castro]
* balena app create: fix application existence check [Paulo Castro]
## 11.34.0 - 2020-05-13
* push/build/deploy: add --nogitignore option and update dockerignore filter library [Paulo Castro]
## 11.33.4 - 2020-05-12
* Re-create standalone zip package (release asset) for Windows [Paulo Castro]
## 11.33.3 - 2020-05-12
* Fix usage of livepush v3 features [Cameron Diver]
## 11.33.2 - 2020-05-11
* Fix 'balena app' (rm, restart, info) with numeric app IDs [Paulo Castro]
## 11.33.1 - 2020-05-11
* Update resin-multibuild [Scott Lowe]
## 11.33.0 - 2020-05-11
* Add a deprecation policy [Thodoris Greasidis]
## 11.32.15 - 2020-05-06
* Improve presentation of errors, help [Scott Lowe]
## 11.32.14 - 2020-05-04
* Disable oclif's ts-node registering when running against built code [Pagan Gazzard]
## 11.32.13 - 2020-05-04
* Convert `balena api-key generate` to oclif [Scott Lowe]
## 11.32.12 - 2020-05-04
* Configure the sentry command scope earlier [Pagan Gazzard]
## 11.32.11 - 2020-05-01
* Avoid unnecessary api calls in `balena build` and `balena deploy` [Pagan Gazzard]
## 11.32.10 - 2020-05-01
* Refactor: move error related functions into error module [Scott Lowe]
* Refactor: use checkLoggedIn() instead of exitIfNotLoggedIn() [Scott Lowe]
## 11.32.9 - 2020-05-01
* Convert qemu.js to typescript [Pagan Gazzard]
## 11.32.8 - 2020-05-01
* Enforce lazy loading via tslint import-blacklist [Pagan Gazzard]
## 11.32.7 - 2020-05-01
* Convert app commands to oclif [Scott Lowe]
## 11.32.6 - 2020-05-01
* Improve oclif missing argument/flag errors [Scott Lowe]
## 11.32.5 - 2020-05-01
* Modify oclif help to match balena conventions [Scott Lowe]
## 11.32.4 - 2020-04-30
* Convert gulpfile.coffee to javascript [Pagan Gazzard]
* Convert lib/app-capitano.coffee to javascript [Pagan Gazzard]
## 11.32.3 - 2020-04-30
* Convert lib/actions/index.coffee to typescript [Pagan Gazzard]
## 11.32.2 - 2020-04-30
* Convert lib/utils/deploy.coffee to javascript [Pagan Gazzard]
* Convert lib/actions/build.coffee to javascript [Pagan Gazzard]
## 11.32.1 - 2020-04-30
* Only notify of an update if the new version is actually newer [Pagan Gazzard]
## 11.32.0 - 2020-04-30
* Integrate livepush v3 and live directives [Scott Lowe]
## 11.31.28 - 2020-04-30
* Convert lib/utils/deploy-legacy.coffee to javascript [Pagan Gazzard]
## 11.31.27 - 2020-04-30
* Convert lib/actions/help.coffee to javascript [Pagan Gazzard]
## 11.31.26 - 2020-04-30
* balena build/deploy: Update QEMU version to support newer balenalib images [Paulo Castro]
## 11.31.25 - 2020-04-30
* Add support for global --debug flag [Scott Lowe]
## 11.31.24 - 2020-04-29
* balena deploy: Fix "TypeError: images.push is not iterable" [Paulo Castro]
## 11.31.23 - 2020-04-28
* Fix unhandled promise rejection when using `balena deploy` [Pagan Gazzard]
## 11.31.22 - 2020-04-25
* Convert lib/actions/device.coffee to javascript [Pagan Gazzard]
## 11.31.21 - 2020-04-25
* Install types for modules used in javascript to improve type checking [Pagan Gazzard]
## 11.31.20 - 2020-04-24
* Convert lib/actions/preload.coffee to javascript [Pagan Gazzard]
## 11.31.19 - 2020-04-24
* Convert lib/actions/config.coffee to javascript [Pagan Gazzard]
## 11.31.18 - 2020-04-24
* Convert lib/utils/compose.coffee to javascript [Pagan Gazzard]
## 11.31.17 - 2020-04-24
* Convert lib/utils/docker-coffee.coffee to javascript [Pagan Gazzard]
## 11.31.16 - 2020-04-24
* Convert lib/actions/os.coffee to javascript [Pagan Gazzard]
## 11.31.15 - 2020-04-24
* Convert lib/utils/qemu.coffee to javascript [Pagan Gazzard]
## 11.31.14 - 2020-04-23
* device os-update: Refactor to use the overall_progress field [Thodoris Greasidis]
## 11.31.13 - 2020-04-23
* Remove unnecessary files [Pagan Gazzard]
## 11.31.12 - 2020-04-23
* Convert lib/actions/local/index.coffee to typescript [Pagan Gazzard]
* Convert lib/actions/local/configure.coffee to javascript [Pagan Gazzard]
* Convert lib/utils/tty to typescript [Pagan Gazzard]
## 11.31.11 - 2020-04-22
* Avoid patch-package warning with 'npm install -g --production' [Paulo Castro]
## 11.31.10 - 2020-04-22
* Convert command `scan` to TypeScript, migrate to oclif [Scott Lowe]
## 11.31.9 - 2020-04-22
* Update patch-package (fix remaining source of seemingly random ENOENT error) [Paulo Castro]
## 11.31.8 - 2020-04-22
* Update to balena-release [Pagan Gazzard]
* Update dependencies to pick up performance improvements [Pagan Gazzard]
## 11.31.7 - 2020-04-21
* Update codeowners [Scott Lowe]
## 11.31.6 - 2020-04-21
* Add test coverage for validation module [Scott Lowe]
## 11.31.5 - 2020-04-20
* convert commands `key`, `keys`, `key add`, `key rm` to oclif. [Scott Lowe]
## 11.31.4 - 2020-04-18
* Review CONTRIBUTING.md and add 'instanceof' usage advice [Paulo Castro]
* Review 'instanceof' usage with classes of external packages [Paulo Castro]
* Unpin balena-sdk (bump balena-sdk to v12.33.0) [Paulo Castro]
## 11.31.3 - 2020-04-16
* Fix balena ssh "Application not found" (pin balena-sdk to v12.30.0) [Paulo Castro]
## 11.31.2 - 2020-04-15
* Fix seemingly random ENOENT error (update 'is-installed-globally' dependency) [Paulo Castro]
## 11.31.1 - 2020-04-15
* improve input validation for `key`, `key rm` [Scott Lowe]
## 11.31.0 - 2020-04-15
* device os-update: allow host OS upgrade with development balenaOS images [Scott Lowe]
## 11.30.17 - 2020-04-09
* Convert commands join, leave to oclif. [Scott Lowe]
## 11.30.16 - 2020-04-07
* Minor grammar fix in balena ssh documentation [Hugh Brown]
## 11.30.15 - 2020-04-03
* Convert `internal scandevices`, `internal osinit` to typescript & oclif [Scott Lowe]
## 11.30.14 - 2020-04-03
* Updated dependencies (vulnerability advisory CVE-2019-20149) [Paulo Castro]
## 11.30.13 - 2020-04-02
* Fix project directory validation for 'balena deploy' with pre-built image [Paulo Castro]
## 11.30.12 - 2020-04-01
* Remove unused code from balena note [Scott Lowe]
## 11.30.11 - 2020-04-01
* Check logged in for `balena build` if application specified Correct eroneous -f flag in `balena build` help [Scott Lowe]
## 11.30.10 - 2020-03-31
* Add '-t' option to 'balena ssh' to bypass TTY autodetection (force allocation) [Paulo Castro]
* Handle ssh process exit codes [Paulo Castro]
## 11.30.9 - 2020-03-31
* Convert lib/actions/local/common.coffee to javascript [Pagan Gazzard]
## 11.30.8 - 2020-03-30
* Update README regarding proxy server support [Paulo Castro]
* Fix "the input device is not a TTY" when piping to 'balena ssh' (local device) [Paulo Castro]
* Fix 'balena ssh' on MSYS Windows shell ("unexpected end of file") [Paulo Castro]
* Delete unused code (ssh.coffee) [Paulo Castro]
## 11.30.7 - 2020-03-30
* Convert command `note` to oclif Add oclif support for piped input [Scott Lowe]
* Convert command `settings` to oclif [Scott Lowe]
## 11.30.6 - 2020-03-26
* Clarify `balena device os-update` help re balenaCloud [Scott Lowe]
## 11.30.5 - 2020-03-25
* Use balena-lint for javascript linting and add javascript type-checking [Pagan Gazzard]
## 11.30.4 - 2020-03-24
* Deduplicate `balenaUrl` fetching in events [Pagan Gazzard]
## 11.30.3 - 2020-03-24
* Preserve symlinks for the sake of the balenaCI worker [Pagan Gazzard]
* Add type checking for tests [Pagan Gazzard]
## 11.30.2 - 2020-03-24
* Add support for authentication checking to oclif [Scott Lowe]
## 11.30.1 - 2020-03-19
* Add support for `root` property on oclif commands [Scott Lowe]
## 11.30.0 - 2020-03-19
* Add support for primary/secondary oclif commands [Scott Lowe]
## 11.29.5 - 2020-03-18
* INSTALL.md: emphasize the standalone zip package recommendation for WSL [Paulo Castro]
## 11.29.4 - 2020-03-16
* Switch to native number check [Pagan Gazzard]
* Switch to native string check [Pagan Gazzard]
* Switch to native `Array.isArray` instead of aliases [Pagan Gazzard]
## 11.29.3 - 2020-03-13
* Remove unused typings [Pagan Gazzard]
## 11.29.2 - 2020-03-12
* Fix opn patch (npm installation warning) [Paulo Castro]
## 11.29.1 - 2020-03-12
* Fix `balena local flash` [Pagan Gazzard]
## 11.29.0 - 2020-03-12
Update dependencies [Pagan Gazzard]
> ### balena-sdk-12.29.1 - 2020-03-09
>
> * tests: Improve the dependent application test case [Thodoris Greasidis]
> ### balena-sdk-12.29.0 - 2020-03-09
>
> * typings: Add the contract field to the Image [Thodoris Greasidis]
> * typings: Add is_of__actor on the ApiKey [Thodoris Greasidis]
> * typings: Add `is_public` to the application model [Thodoris Greasidis]
> ### balena-sdk-12.28.2 - 2020-03-06
>
> * Unify the way that the models get exported [Thodoris Greasidis]
> ### balena-sdk-12.28.1 - 2020-03-05
>
> * Convert OS model to typescript [Stevche Radevski]
> ### balena-sdk-12.28.0 - 2020-03-04
>
> * typings: Add DeviceType logoUrl property [Thodoris Greasidis]
> ### balena-sdk-12.27.1 - 2020-03-04
>
> * Update dependencies [Pagan Gazzard]
> ### balena-sdk-12.27.0 - 2020-03-03
>
> * Add missing deviceType typings to ImgConfigOptions [Stevche Radevski]
## 11.28.17 - 2020-03-12
* Make windows installer remove old files before installation. [Scott Lowe]
## 11.28.16 - 2020-03-11
* Update CONTRIBUTING.md regarding ./bin/balena-dev and oclif commands [Paulo Castro]
* Update CONTRIBUTING.md regarding Coffeescript to Typescript conversion [Paulo Castro]
* Prevent auto merge of npm-shrinkwrap.json and explain it in CONTRIBUTING.md [Paulo Castro]
* Add test case for `build --emulated` [Paulo Castro]
## 11.28.15 - 2020-03-11
* Fix 'balena login' web auth on Linux standalone zip install (xdg-open ENOENT) [Paulo Castro]
## 11.28.14 - 2020-03-10
* Avoid Sentry reporting of selected common "expected" errors [Paulo Castro]
* Fix occasional "CLI prints 'null' and exits" (replace old Raven/Sentry SDK) [Paulo Castro]
* Don't send the full command line to Sentry.io [Paulo Castro]
* Fix occasionally missed command tracking request (oclif commands) [Paulo Castro]
## 11.28.13 - 2020-03-06
* Improve the UX by only printing effective file changes in livepush [Cameron Diver]
## 11.28.12 - 2020-03-06
* Fix `build --emulated` on Linux ("exec format error") [Paulo Castro]
## 11.28.11 - 2020-03-02
* Don't ignore BALENARC_NO_PROXY env var if HTTP(S)_PROXY env vars are defined [Paulo Castro]
* Use types for global-agent and global-tunnel-ng [Pagan Gazzard]
* Remove lodash usage in proxy setup [Pagan Gazzard]
* Don't try to setup a proxy agent when there's no proxy configured [Pagan Gazzard]
## 11.28.10 - 2020-03-02
Update dependencies [Pagan Gazzard]
> ### balena-sdk-12.26.7 - 2020-02-29
>
> * Lazy-load the models props [Pagan Gazzard]
> * Lazy-load the sdk template props [Pagan Gazzard]
> ### balena-sdk-12.26.6 - 2020-02-28
>
> * Remove unnecessary lodash/forEach usage [Pagan Gazzard]
> ### balena-sdk-12.26.5 - 2020-02-28
>
> * Convert the billing model to typescript [Stevche Radevski]
> ### balena-sdk-12.26.4 - 2020-02-27
>
> * Convert image model to typescript [Stevche Radevski]
> ### balena-sdk-12.26.3 - 2020-02-26
>
> * Update dtslint to v3.1.0 [Thodoris Greasidis]
> ### balena-sdk-12.26.2 - 2020-02-26
>
> * typings_tests/pine-options: Update to work with TypeScript v3.8 [Thodoris Greasidis]
> * Bump TypeScript version to ^3.8.2, so that's used in tests [Thodoris Greasidis]
> ### balena-sdk-12.26.1 - 2020-02-26
>
> * application: Fix linter warning [Thodoris Greasidis]
> ### balena-sdk-12.26.0 - 2020-02-24
>
> * Add overall_progress typings to device model [Stevche Radevski]
> ### balena-sdk-12.25.1 - 2020-02-21
>
> * Convert service model to typescript [Stevche Radevski]
> ### balena-sdk-12.25.0 - 2020-02-19
>
> * Add device statuses enum to device resource [Stevche Radevski]
> * Add device status enum and typings [Stevche Radevski]
> ### balena-sdk-12.24.4 - 2020-02-17
>
> * Fix a test case name typo for auth.whoami() [Thodoris Greasidis]
> ### balena-sdk-12.24.3 - 2020-02-17
>
> * auth.getEmail: Fix confusing call expression [Thodoris Greasidis]
> ### balena-sdk-12.24.2 - 2020-02-17
>
> * Fix concealing network errors in auth.whoami() and auth.isLoggedIn() [Thodoris Greasidis]
> ### balena-sdk-12.24.1 - 2020-02-15
>
> * .gitignore: `.idea` directory generated by JetBrains IDE [Thomas Manning]
> ### balena-sdk-12.24.0 - 2020-02-14
>
> * Update `application.getDashboardUrl` example with `application.get` call to get application id [Thomas Manning]
> * Added `getDashboardUrl(id)` to application model [Thomas Manning]
> ### balena-sdk-12.23.9 - 2020-02-12
>
> * appveyor: Run node & browser tests in parallel [Thodoris Greasidis]
> ### balena-sdk-12.23.8 - 2020-02-11
>
> * appveyor: Set to test against node 8 [Thodoris Greasidis]
> ### balena-sdk-12.23.7 - 2020-02-07
>
> * Update balena-register-device to 6.0.1 [Pagan Gazzard]
> ### balena-sdk-12.23.6 - 2020-02-07
>
> * Re-enable balenaCI autoRebase [Thodoris Greasidis]
> ### balena-sdk-12.23.5 - 2020-02-07
>
> * Fix the tag tests failing b/c of public apps [Thodoris Greasidis]
> * Fix the dependent app test randomly failing b/c of public apps [Thodoris Greasidis]
> ### balena-sdk-12.23.4 - 2020-02-07
>
> * Fix the build failing on node v12 [Thodoris Greasidis]
> ### balena-sdk-12.23.3 - 2020-02-06
>
> * Disable balenaCI auto rebase [Thodoris Greasidis]
> ### balena-sdk-12.23.2 - 2020-02-06
>
> * Switch to resin-lint for linting [Pagan Gazzard]
> ### balena-sdk-12.23.1 - 2020-02-06
>
> * Remove unused code [Pagan Gazzard]
> ### balena-sdk-12.23.0 - 2020-01-28
>
> * app.getWithDeviceServiceDetails: Add the release commit in the services [Thodoris Greasidis]
> * device.getWithServiceDetails: Remove unused 'id' selection [Thodoris Greasidis]
> ### balena-sdk-12.22.0 - 2020-01-27
>
> * Allow retrieving applications by application case insensitive slug [Thodoris Greasidis]
> ### balena-sdk-12.21.3 - 2020-01-25
>
> * release.createFromUrl: Fix the non tar url error handling [Thodoris Greasidis]
> ### balena-sdk-12.21.2 - 2020-01-24
>
> * Convert some of the tests to TypeScript [Thodoris Greasidis]
> * Properly type billing.downloadInvoice result [Thodoris Greasidis]
> * Properly type os.download result [Thodoris Greasidis]
> * Add typings for balena-request stream [Thodoris Greasidis]
## 11.28.9 - 2020-02-29
* Switch to object spreading in favor of _.assign [Pagan Gazzard]
## 11.28.8 - 2020-02-28
* Lazy-load chalk [Pagan Gazzard]
## 11.28.7 - 2020-02-28
* Simplify lazy-loading of resin-cli-visuals with a shared function [Pagan Gazzard]
## 11.28.6 - 2020-02-28
* Make use of capitano's promise support to simplify the code [Pagan Gazzard]
## 11.28.5 - 2020-02-27
* Simplify lazy-loading of balena-sdk by utilizing a shared function [Pagan Gazzard]
## 11.28.4 - 2020-02-25
* Fix build/deploy commands with QEMU emulation and alternative Dockerfile name [Paulo Castro]
* Fix CONTRIBUTING markdown [Paulo Castro]
## 11.28.3 - 2020-02-24
* Update type deps [Pagan Gazzard]
## 11.28.2 - 2020-02-21
* Add pre-commit check for cli.markdown updates and coffeelint execution [Paulo Castro]
* Fix 'test:fast' npm script definition [Paulo Castro]
## 11.28.1 - 2020-02-21
* Add a script to automate nested changelogs [Thodoris Greasidis]
## 11.28.0 - 2020-02-18
* Update resin-multibuild and add app and release template vars [Cameron Diver]
## 11.27.0 - 2020-02-17
* Add tests for project directory validation [Paulo Castro]
* Add project directory validation for balena push / build / deploy commands [Paulo Castro]
* Refactor 'balena push' error handling [Paulo Castro]
* Add and refactor tests for push/build/deploy commands (docker-compose) [Paulo Castro]
## 11.26.0 - 2020-02-14
* Add '--cache-from' option to balena build and deploy commands [Paulo Castro]
## 11.25.18 - 2020-02-13
* Fix balena push "Segmentation fault" on Windows (replace 'mmmagic' with 'isBinaryFile') [Paulo Castro]
## 11.25.17 - 2020-02-12
* Convert lib/actions/auth to typescript [Pagan Gazzard]
## 11.25.16 - 2020-02-12
* Convert lib/auth/index to typescript [Pagan Gazzard]
## 11.25.15 - 2020-02-12
* Convert lib/auth/server to typescript [Pagan Gazzard]
## 11.25.14 - 2020-02-11
* Convert lib/actions/keys to typescript [Pagan Gazzard]
## 11.25.13 - 2020-02-10
* Convert lib/actions/notes to typescript [Pagan Gazzard]
## 11.25.12 - 2020-02-10
* Convert lib/actions/app to typescript [Pagan Gazzard]
## 11.25.11 - 2020-02-10
* Convert lib/auth/utils to typescript [Pagan Gazzard]
## 11.25.10 - 2020-02-08
* CI builds: revert patch-package upgrade to fix patch errors [Paulo Castro]
* Node 13 compatibility: upgrade ext2fs module [Scott Lowe]
## 11.25.9 - 2020-02-07
* Add .gitattributes to check out with the correct line-ending on windows [Pagan Gazzard]
## 11.25.8 - 2020-02-07
* Merge resin-lint linting and fixing steps into one [Pagan Gazzard]
* Remove redundant type checking of tests [Pagan Gazzard]
* Remove duplicate type checking of automation code [Pagan Gazzard]
## 11.25.7 - 2020-02-07
* Fix Windows standalone zip installer (missing mmmagic db for CRLF conversion) [Paulo Castro]
## 11.25.6 - 2020-02-06
* Switch from opn to its new name of open [Pagan Gazzard]
## 11.25.5 - 2020-02-06
* Add debug instructions for powershell [Pagan Gazzard]
## 11.25.4 - 2020-02-06
* Use resin-lint for automatic lint fixing [Pagan Gazzard]
## 11.25.3 - 2020-02-06
* Avoid loading 'mmmagic' on Linux (fix "could not load any valid magic files") [Paulo Castro]
## 11.25.2 - 2020-02-05
* Debug mode can now be disabled with DEBUG=0 env var Added assignment to `process.env.DEBUG` if `process.env.DEBUG` is negative string to `lib/app.ts` and `automation/run.ts` entrypoints [Thomas Manning]
## 11.25.1 - 2020-02-03
* Remove unnecessary code now that typescript understands `process.exit` [Pagan Gazzard]
## 11.25.0 - 2020-02-02
* Add more tests for push/build/deploy commands (--convert-eol) [Paulo Castro]
* Add more tests for push/build/deploy commands (--dockerfile) [Paulo Castro]
* Add support for auto-conversion of CRLF line endings. Applies to commands: balena push balena build balena deploy --build [Scott Lowe]
* Add support for deferred log messages. eg. so that info can be output at the end of the process. [Scott Lowe]
## 11.24.0 - 2020-01-27
* Fix proxy support and add proxy exclusion feature (Node.js >= 10.16.0 only) [Paulo Castro]
* Update Github's templates for new CLI pull requests and issues [Paulo Castro]
## 11.23.0 - 2020-01-24
* Update dependencies [Pagan Gazzard]
## 11.22.0 - 2020-01-21
* Configure: Allow passing system-connection files to 'os configure' command [Rich Bayliss]
## 11.21.8 - 2020-01-20
* Add `catch-uncommitted` to balena CI build [Paulo Castro]
* Update resin-lint and prettier, and re-prettify [Paulo Castro]
* Add tests for push, deploy and build commands [Paulo Castro]
## 11.21.7 - 2020-01-20
* Prevent file ignorer from ignoring Dockerfile (and variants), docker-compose.yml [Scott Lowe]
## 11.21.6 - 2020-01-20
* Add Windows-specific hint to 'balena scan' output [Graham McCulloch]
## 11.21.5 - 2020-01-14
* Change the balena app action to present the slug instead of the git_repository [Thodoris Greasidis]
## 11.21.4 - 2020-01-14
* Fix 'balena join' when the user is not logged in [Paulo Castro]
* Fix join and leave commands on Windows (hanging on stdin and argument escaping) [Paulo Castro]
## 11.21.3 - 2020-01-14
* Increase default mocha test timeout to avoid spurious CI failures [Paulo Castro]
* Fix 'balena push' hanging on Windows (CTRL-C was required after the unicorn) [Paulo Castro]
* Add hint about the 'jq' utility in the documentation of the --json option [Paulo Castro]
* Add '.nyc_output' folder to '.gitignore' (test coverage reporting) [Paulo Castro]
## 11.21.2 - 2020-01-14
* Update CONTRIBUTING.md regarding npm installation and some common gotchas [Paulo Castro]
## 11.21.1 - 2020-01-13
* Meta: Americanize all spellings [Matthew McGinn]
## 11.21.0 - 2019-12-27
* Add --verbose and --json options to the 'devices supported' command [Paulo Castro]
## 11.20.2 - 2019-12-17
* Update livepush to fix windows path issue. [Scott Lowe]
## 11.20.1 - 2019-12-13
* Fix issues with devices associated with inaccessible applications. [Scott Lowe]
## 11.20.0 - 2019-12-12
* Add multicontainer (microservices) support for 'balena env rename' [Paulo Castro]
* Add multicontainer (microservices) support for 'balena env rm' [Paulo Castro]
* Add multicontainer (microservices) support for 'balena env add' [Paulo Castro]
* Add multicontainer (microservices) support for 'balena envs' [Paulo Castro]
* Add balena envs '-j' option to produce JSON output [Paulo Castro]
* Add logged-in check for balena 'env' commands [Paulo Castro]
## 11.19.1 - 2019-12-06
* Introduce workaround that fixes windows dns issue on `balena push` using .local device names. Improve error handling in deployToDevice so that versionErrors don't mask other errors. [Scott Lowe]
## 11.19.0 - 2019-12-05
* Update app/create and device/supported tests to use new api-mock. [Scott Lowe]
* Introduce balena-api-mock module to simplify api mocking. Upgrade nock to latest. [Scott Lowe]
## 11.18.3 - 2019-11-21
* Fix 'balena help join' docs re moving devices between apps on the same server [Paulo Castro]
* Add README note regarding Git for Windows console installation choice [Paulo Castro]
## 11.18.2 - 2019-11-15
* Use helpers version of `cleanOutput` in tests. Simplify expect semantics in tests. [Scott Lowe]
* Hide discontinued device types in `balena app create`. Add basic tests for `balena app create` [Scott Lowe]
* Hide discontinued device types in `balena devices supported`. Add tests for action. Convert action to TypeScript. [Scott Lowe]
## 11.18.1 - 2019-11-15
* Fix "Invalid containerPort" error with EXPOSE instructions in local QEMU builds [Paulo Castro]
## 11.18.0 - 2019-11-12
* Fix 'os configure --config', and migrate it to oclif + TypeScript [Paulo Castro]
* Error handling: add ExpectedError type as alternative to exitWithExpectedError() [Paulo Castro]
## 11.17.5 - 2019-11-10
* Improve command usage format consistency in 'balena help' output [Paulo Castro]
* Add Scott (@srlowe) to CODEOWNERS file [Paulo Castro]
* Set the process exit code to 1 (instead of 0) for unknown commands [Paulo Castro]
* Fix logged-in check in "logs" and "ssh" commands (async/await usage) [Paulo Castro]
* Enable debug-mode "long stack traces" for Bluebird promises (async code) [Paulo Castro]
* Fix Node.js download link and improve installation instructions [Paulo Castro]
* Improve help and docs (CLI install dependencies) for the preload command [Paulo Castro]
## 11.17.4 - 2019-11-06
* Support optional containers when pushing to local target [Cameron Diver]
## 11.17.3 - 2019-11-04
* Use all available on-device images during local push [Cameron Diver]
## 11.17.2 - 2019-11-01
* Fix warnings when executing CLI without arguments. [Scott Lowe]
## 11.17.1 - 2019-10-28
* Fix potentialy undefined build task when livepushing [Cameron Diver]
## 11.17.0 - 2019-10-22
* Update livepush to support build arguments [Cameron Diver]
## 11.16.6 - 2019-10-22
* Add installation note regarding macOS Catalina (10.15) [Paulo Castro]
## 11.16.5 - 2019-10-22
* Bump livepush and reconcile husky dependency [Paulo Castro]
## 11.16.4 - 2019-10-17
* Move npm version check from npm 'preinstall' to git 'pre-commit' hook [Paulo Castro]
## 11.16.3 - 2019-10-17
* Fix npm install (missing automation/check-npm-version.js) [Paulo Castro]
## 11.16.2 - 2019-10-17
* Add npm preinstall check for npm version 6.9.0 or later [Paulo Castro]
## 11.16.1 - 2019-10-17
* Fix shrinkwrap unwanted changes from older npm version [Thodoris Greasidis]
## 11.16.0 - 2019-10-16
* Add support for private device types [Thodoris Greasidis]
## 11.15.0 - 2019-10-16
* Support managing tags using release commit hashes [Thodoris Greasidis]
## 11.14.5 - 2019-10-15
* Fix privilege elevation for standalone zip package on Windows (windosu) [Paulo Castro]
* Remove 'internal sudo' command [Paulo Castro]
* Fix privilege elevation (sudo) for 'os initialize', 'join', 'leave' [Paulo Castro]
## 11.14.4 - 2019-10-14
* Support container contracts when pushing to local devices [Cameron Diver]
## 11.14.3 - 2019-10-14
* Update/improve npm install instructions for Windows [Paulo Castro]
* Update CLI tests to pass with Node 12 [Paulo Castro]
* Avoid stack trace and Sentry report if user answers No to confirmation prompts [Paulo Castro]
* Sort the output of `balena devices supported` alphabetically by slug [Paulo Castro]
* Chore: replace `typings/intercept-stdout` with `@types/intercept-stdout` [Paulo Castro]
## 11.14.2 - 2019-10-09
* Fix 'balena build --emulated' on Windows (including default docker socket) [Paulo Castro]
## 11.14.1 - 2019-10-04
* Bump resin-multibuild to 4.3.1 (fix more cases of SecretRemovalError) [Paulo Castro]
## 11.14.0 - 2019-10-03
* Allow deleting config vars with 'env rm' [Thodoris Greasidis]
## 11.13.1 - 2019-09-30
* Update TROUBLESHOOTING doc re 'balena ssh' line wrapping / cursor behavior [Paulo Castro]
## 11.13.0 - 2019-09-30
* Bump balena-sdk to v12.12.0 to stop using image maker endpoints [Thodoris Greasidis]
## 11.12.0 - 2019-09-24
* Allow mixing armv7 & aarch64 devices in RPi 1 / zero apps [Thodoris Greasidis]
## 11.11.3 - 2019-09-19
* Send all debug output to stderr [Cameron Diver]
## 11.11.2 - 2019-09-18
* Use balena analytics project name [Roman Mazur]
## 11.11.1 - 2019-09-18
* Migrate 'envs' and 'env rename' commands to oclif [Paulo Castro]
* Simplify/refactor 'env add' and 'env rm' implementation [Paulo Castro]
* Refactor oclif integration and preparser [Paulo Castro]
## 11.11.0 - 2019-09-16
* Support `balena join` to applications of compatible architectures [Thodoris Greasidis]
## 11.10.0 - 2019-09-16
* Support moving devices to applications of a compatible architecture [Thodoris Greasidis]
## 11.9.7 - 2019-09-13
* Ci: add scrutinizer config [Stevche Radevski]
## 11.9.6 - 2019-09-12
* Mitigate "MaxListenersExceededWarning" by reusing Logger instance [Paulo Castro]
* Update balena-sdk from 11.18.0 to 12.10.0 (pre-req for #1153 and #1304) [Paulo Castro]
## 11.9.5 - 2019-09-11
* Detect Docker Desktop (Docker for Mac) and warn about architecture emulation [Paulo Castro]
## 11.9.4 - 2019-09-11
* Fix mismatched Node.js version errors in standalone package on Windows [Paulo Castro]
* Update etcher-sdk to v2.0.14 (pre-requisite to supporting Node 12) [Paulo Castro]
## 11.9.3 - 2019-09-01
* Add missing oclif-based commands to mixpanel tracking [Paulo Castro]
## 11.9.2 - 2019-08-30
* Deploy scripts: edit GitHub release descriptions given semver ranges [Paulo Castro]
## 11.9.1 - 2019-08-28
* Logging: note that tarring is occurring [Matthew McGinn]
## 11.9.0 - 2019-08-22
* Enable emulated builds on remote devices running a different OS as the CLI [Paulo Castro]
* Fix SecretRemovalError (balena build) when docker daemon arch != target arch [Paulo Castro]
## 11.8.3 - 2019-08-19
* Fix failing registry secrets authentication under certain conditions ('balena build' and 'balena deploy') [Paulo Castro]
## 11.8.2 - 2019-08-19
* Balena-ssh: add info about remote vs local connections [Matthew McGinn]
## 11.8.1 - 2019-08-15
* Fix incorrect arguments passed to oclif bootstrap function [Lucian]
## 11.8.0 - 2019-08-13
* Implement full command testing, beginning with "balena version" [Lucian]
## 11.7.10 - 2019-08-12
* Fix bug where "env rm" fails silently if an additional arg is present [Lucian]
* Exit with a warning if "env rm" id value is not an integer [Lucian]
## 11.7.9 - 2019-08-09
* Fix CI instability when building Typescript [Lucian]
* Convert test files to Typescript [Lucian]
## 11.7.8 - 2019-08-08
* Decaffeinate test files [Lucian]
## 11.7.7 - 2019-08-08
* Remove mochainon dependency and replace with direct testing dependencies [Lucian]
## 11.7.6 - 2019-08-07
* Fix incorrect start command in contributing document [Lucian]
## 11.7.5 - 2019-08-06
* Support headless remote builds [Cameron Diver]
## 11.7.4 - 2019-08-01
* Update unzip2 dependency [Gergely Imreh]
## 11.7.3 - 2019-07-22
* Update mixpanel tracking [Paulo Castro]
## 11.7.2 - 2019-07-18
* Update balena-preload to ^8.2.1 [Alexis Svinartchouk]
## 11.7.1 - 2019-07-17
* Chore: fix up small typos, remove gitter link [Matthew McGinn]
## 11.7.0 - 2019-07-15
* Add "build secrets" and "build variables" support for push/build/deploy to/on/via balena devices [Paulo Castro]
* Fix truncated logs in local multicontainer image builds (balena build/deploy) [Paulo Castro]
## 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 [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 ' 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 `/.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.