balena-cli/CHANGELOG.md
2021-05-28 16:17:00 +03:00

4678 lines
135 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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.44.18 - 2021-05-27
* Update advanced installation instructions [Paulo Castro]
## 12.44.17 - 2021-05-24
* doc: Document the image nameing scheme used by deploy [Robert Günzler]
## 12.44.16 - 2021-05-18
* preload: Avoid hardcoded registry2 URLs with openBalena [Kyle Harding]
## 12.44.15 - 2021-05-16
* os configure, local configure: Fix "Unsupported filesystem" error [Roland Kajatin]
## 12.44.14 - 2021-05-09
* Add completion generator from oclif.manifest.json [Pierre Kancir]
## 12.44.13 - 2021-05-07
* Update dependencies (multibuild, dockerode, docker-toolbelt, docker-progress) [Paulo Castro]
<details>
<summary> preload: Improve error handling (stop spinning wheels) [Paulo Castro] </summary>
> ### balena-preload-10.4.6 - 2021-05-06
>
> * Update dependencies (dockerode, docker-progress) [Paulo Castro]
> * Don't assume that 'docker' argument uses Bluebird promises [Paulo Castro]
>
> ### balena-preload-10.4.5 - 2021-05-05
>
> * Enhance comms between CLI process and Python process in container [Paulo Castro]
>
> ### balena-preload-10.4.4 - 2021-05-05
>
> * Fix unhandled exception on container.wait() [Paulo Castro]
> * Emit error on container status code '137' too (OOM SIGKILL) [Paulo Castro]
> * Add flake8 npm script [Paulo Castro]
>
> ### balena-preload-10.4.3 - 2021-05-04
>
> * Don't truncate error logs (add _truncate_exc option to python sh commands) [Paulo Castro]
> * Add keyword args to RetryCounter key computation. Remove unused args. [Paulo Castro]
>
</details>
* build: Workaround issue with Docker v20.10 + single-arch base images [Paulo Castro]
* build: Fix "Total: undefined" image pull progress report [Paulo Castro]
## 12.44.12 - 2021-04-27
* preload: Update to Docker 20.10 with cgroups v2 support [Kyle Harding]
## 12.44.11 - 2021-04-21
* Add message regarding deprecation of --buildArg option in build/deploy commands [Scott Lowe]
## 12.44.10 - 2021-04-15
* ssh: fix incorrect service name parsing in local mode [Tomás Migone]
## 12.44.9 - 2021-04-13
* config inject/read/write: Fix umount errors with OS image files [Paulo Castro]
* Refactor dependency import in utils/helpers.ts for performance [Paulo Castro]
## 12.44.8 - 2021-04-09
* push, logs: Fix parsing of local mode device logs (NDJSON stream) [Paulo Castro]
## 12.44.7 - 2021-04-09
* lib/commands/local/configure: Fix local configure when resin-wifi is not available on the image [Marios Balamatsias]
## 12.44.6 - 2021-04-07
* Direct missing release installs to npm install method [Miguel Casqueira]
## 12.44.5 - 2021-04-07
* docs: Update install instructions re macOS installer notarization [Paulo Castro]
* Update resin-compose-parse from 2.1.2 to 2.1.3 [Paulo Castro]
* Update balena-config-json from 4.1.0 to 4.1.1 [Paulo Castro]
* Update etcher-sdk from 6.2.0 to 6.2.1 [Paulo Castro]
* Update balena-sdk from 15.29.0 to 15.31.0 [Paulo Castro]
## 12.44.4 - 2021-04-06
* Add notarization for macOS graphical installer [Dan Goodman]
## 12.44.3 - 2021-04-04
* docs: Further clarify Docker requirements for preload [Paulo Castro]
## 12.44.2 - 2021-04-02
* docker: Remove references to CLI docker images in the installation docs [Paulo Castro]
* docker: Remove balenalib images and docs [Kyle Harding]
## 12.44.1 - 2021-03-31
* os/configure: Fix broken NetworkManager URL [Mark Corbin]
## 12.44.0 - 2021-03-30
* osConfigure/localFlash: Add support for Node.js v14 [Marios Balamatsias]
## 12.43.2 - 2021-03-26
* docker: Improve handling of Docker-in-Docker errors [Kyle Harding]
## 12.43.1 - 2021-03-25
* Improve installation docs regarding Docker Desktop version requirements [Paulo Castro]
## 12.43.0 - 2021-03-23
* Refactor automation scripts (reduce need for MSYS to build on Windows) [Paulo Castro]
* Add macOS uninstall script (sudo /usr/local/lib/balena-cli/bin/uninstall) [Paulo Castro]
* Bump `patch-package` dependency and remove its own patch file [Paulo Castro]
## 12.42.2 - 2021-03-20
* push: Fix docker-compose.dev.yml serialization ("should be object,null" error) [Paulo Castro]
## 12.42.1 - 2021-03-19
* Make README.md bullet point spacing uniform [Genadi Naydenov]
## 12.42.0 - 2021-03-19
* balena device: Display public IP address field [Chris Wiggins]
* Update balena-sdk from 15.20.0 to 15.29.0 [Chris Wiggins]
## 12.41.3 - 2021-03-17
* Update supported npm version range in package.json (<7.0.0) [Paulo Castro]
## 12.41.2 - 2021-03-17
* Linux installation instructions: Add sudo configuration section [Paulo Castro]
## 12.41.1 - 2021-03-15
* docker: Fix path to init when workdir is changed [Kyle Harding]
## 12.41.0 - 2021-03-15
* docker: Add Docker images with the CLI and Docker-in-Docker [Kyle Harding]
## 12.40.4 - 2021-03-09
* macOS GUI installer: Update signing certificate name [Paulo Castro]
## 12.40.3 - 2021-03-06
* build, deploy: Fix error handling when QEMU download fails [Paulo Castro]
## 12.40.2 - 2021-02-23
* docs: Fix missing markdown docs for device `deactivate` and `local-mode` [Paulo Castro]
## 12.40.1 - 2021-02-23
* docs: emphasize that push emulation is not required in most cases [Kyle Harding]
## 12.40.0 - 2021-02-09
* Add support for docker-compose dev overlay in local pushes [Scott Lowe]
## 12.39.1 - 2021-02-06
* build/deploy: fix emulated builds to use fully static qemu binaries [Kyle Harding]
## 12.39.0 - 2021-02-04
* Add command `device local-mode` [Scott Lowe]
## 12.38.10 - 2021-02-04
* Improve build-time checks (automation/test-lock-deduplicated.sh) [Paulo Castro]
## 12.38.9 - 2021-02-04
* Modify push to pass app slug to builder [Scott Lowe]
## 12.38.8 - 2021-01-29
* build/deploy: Update QEMU to speed up emulated builds [Kyle Harding]
## 12.38.7 - 2021-01-25
* tunnel: Add note re openBalena version compatibility [Paulo Castro]
## 12.38.6 - 2021-01-22
* logging: note that the device supervisor version is operative [Matthew McGinn]
## 12.38.5 - 2021-01-21
* tls: Use TLS for tunnel connection [Balena CI]
## 12.38.4 - 2021-01-21
* Update supported Node.js version range in package.json (<13.0.0) [Paulo Castro]
## 12.38.3 - 2021-01-19
* Handle 'push' edge case with application access [Scott Lowe]
## 12.38.2 - 2021-01-18
* Delete old config files for Travis and AppVeyor to avoid confusion [Paulo Castro]
## 12.38.1 - 2021-01-15
* Fix handling of thrown strings [Scott Lowe]
## 12.38.0 - 2021-01-14
* deploy: Add --release-tag flag [Marios Balamatsias]
## 12.37.2 - 2021-01-13
* docs: americanize the spelling of words in sourced markdown [Matthew McGinn]
## 12.37.1 - 2021-01-06
* Refactor out command internal scandevices [Scott Lowe]
## 12.37.0 - 2020-12-28
* Add --additional-space flag to preload [Alexis Svinartchouk]
* Update balena-preload to 10.4.1 [Alexis Svinartchouk]
## 12.36.1 - 2020-12-23
* Update push command for organizations [Scott Lowe]
## 12.36.0 - 2020-12-22
* errors: Make all exclusive flag errors expected [Marios Balamatsias]
* push: Add --release-tag flag [Marios Balamatsias]
## 12.35.3 - 2020-12-21
* Improve id disambiguation for tag commands [Scott Lowe]
## 12.35.2 - 2020-12-18
* Modify handling of SIGINT in balena-dev [Scott Lowe]
## 12.35.1 - 2020-12-17
* Update commands ssh, tunnel to support orgs [Scott Lowe]
## 12.35.0 - 2020-12-15
* Update various commands to support organizations [Scott Lowe]
## 12.34.0 - 2020-12-15
* Add organizations support to app create command [Scott Lowe]
## 12.33.2 - 2020-12-15
* Improve error message for issues to access balena settings [josecoelho]
## 12.33.1 - 2020-12-11
* Fix preload command support for application IDs [Scott Lowe]
## 12.33.0 - 2020-12-11
* Add orgs command [Scott Lowe]
## 12.32.2 - 2020-12-11
* apps: Fix "column.match is not a function" when --verbose is used [Paulo Castro]
## 12.32.1 - 2020-12-10
* Make balena-cli build on refreshed on-prem workers [Paulo Castro]
## 12.32.0 - 2020-12-10
* Add organizations support to app rename command [Scott Lowe]
## 12.31.0 - 2020-12-10
* Livepush: Extend CTRL-C availability (don't ignore CTRL-C during image build) [Paulo Castro]
* Livepush, logs: Automatically reconnect on 'Connection to device lost' [Paulo Castro]
* logs: Fix CTRL-C ignored on Windows (PowerShell, MSYS, Git for Windows) [Paulo Castro]
* Livepush: Fix process not exiting on "Connection to device lost" [Paulo Castro]
## 12.30.4 - 2020-12-10
* Fix app name output in app command [Scott Lowe]
## 12.30.3 - 2020-12-09
* errors: Add expected errors for device deactivation [Marios Balamatsias]
## 12.30.2 - 2020-12-08
* Remove remaining v12 switches [Scott Lowe]
## 12.30.1 - 2020-12-07
* Standardize boolean flag typing [Scott Lowe]
## 12.30.0 - 2020-12-07
<details>
<summary> packages: Bump balena-sdk and balena-errors [Marios Balamatsias] </summary>
> ### balena-sdk-15.20.0 - 2020-12-04
>
> * device: Add deactivate method [Marios Balamatsias]
>
> ### balena-sdk-15.19.0 - 2020-12-02
>
> * Add missing application and release typings [Stevche Radevski]
>
> ### balena-sdk-15.18.1 - 2020-11-20
>
> * Bump typescript to 4.1 [Thodoris Greasidis]
>
> ### balena-sdk-15.18.0 - 2020-11-19
>
> * typings: Deprecate PineWithSelectOnGet variant in favor of PineStrict [Thodoris Greasidis]
>
> <details>
> <summary> Update balena-auth from 4.0.2 to 4.1.0 [josecoelho] </summary>
>
>> #### balena-request-11.2.0 - 2020-11-12
>>
>> * Update balena-auth from 4.0.0 to 4.1.0 [josecoelho]
>>
> </details>
>
>
> ### balena-sdk-15.17.0 - 2020-10-27
>
> * Add missing reverse navigation relations to User typings [Thodoris Greasidis]
>
> ### balena-sdk-15.16.0 - 2020-10-23
>
> * Add SDK methods for org invites [Amit Solanki]
>
> ### balena-sdk-15.15.0 - 2020-10-22
>
> * Modify the os update to check against hostapp release [Stevche Radevski]
>
> ### balena-sdk-15.14.0 - 2020-10-19
>
> * Prevent invalid $selects in strict pine.get variant calls [Thodoris Greasidis]
> * Improve the parameter type checks for the fully typed pine.get [Thodoris Greasidis]
>
> ### balena-sdk-15.13.0 - 2020-10-09
>
> * Pass shouldFlatten through when creating release from url [Stevche Radevski]
>
> ### balena-sdk-15.12.1 - 2020-09-20
>
> * Time the test suites [Thodoris Greasidis]
> * Combine test util files from before dropping coffeescript [Thodoris Greasidis]
>
> ### balena-sdk-15.12.0 - 2020-09-20
>
> * Application: add rename method [JSReds]
>
> ### balena-sdk-15.11.3 - 2020-09-19
>
> * tests/keys: Fix race condition [Thodoris Greasidis]
>
> ### balena-sdk-15.11.2 - 2020-09-19
>
> * tests/device: Combine some multicontainer app tests [Thodoris Greasidis]
> * Remove some beforeEach() from the device tests [Thodoris Greasidis]
>
> ### balena-sdk-15.11.1 - 2020-09-19
>
> * Fix the device.setSupervisorRelease() tests [Thodoris Greasidis]
>
> ### balena-sdk-15.11.0 - 2020-09-14
>
> * Typings: Extend the supported billing cycles [Thodoris Greasidis]
>
> ### balena-sdk-15.10.6 - 2020-09-14
>
> * tests: Reduce the application creations & teardowns even further [Thodoris Greasidis]
>
> ### balena-sdk-15.10.5 - 2020-09-14
>
> * Login: add new error handling, update balena-errors [JSReds]
>
> ### balena-sdk-15.10.4 - 2020-09-11
>
> * tests: Reduce the application creations & teardowns [Thodoris Greasidis]
>
> ### balena-sdk-15.10.3 - 2020-09-11
>
> * tests: Use mocha.parallel to speed up the test cases [Thodoris Greasidis]
>
> ### balena-sdk-15.10.2 - 2020-09-11
>
> * tests: Remove some before/afterEach calls to speed up the tests [Thodoris Greasidis]
>
> ### balena-sdk-15.10.1 - 2020-09-10
>
> * tests: Test that the result of device.getDeviceSlug() is a string [Thodoris Greasidis]
> * tests: Run device.getDeviceBySlug() calls in parallel to speed up tests [Thodoris Greasidis]
> * tests/os: Drop unnecessary beforeEach in getConfig() [Thodoris Greasidis]
> * tests/application: Fix incorrect skipping of unauthenticated tests [Thodoris Greasidis]
>
> ### balena-sdk-15.10.0 - 2020-09-10
>
> * typings: Make ReleaseWithImageDetails more accurate [Thodoris Greasidis]
> * Fully type the pine.get results [Thodoris Greasidis]
> * typings: Add the PineTypedResult helper type [Thodoris Greasidis]
>
> ### balena-sdk-15.9.1 - 2020-09-09
>
> * Typings: Add organization member relation to tags [Thodoris Greasidis]
>
> ### balena-sdk-15.9.0 - 2020-09-08
>
> * Add typings for pine.getOrCreate() [Thodoris Greasidis]
>
> <details>
> <summary> Bump balena-pine to add getOrCreate [Thodoris Greasidis] </summary>
>
>> #### balena-pine-12.4.0 - 2020-09-07
>>
>>
>> <details>
>> <summary> Update pinejs-client-core to 6.9.0 to support getOrCreate() [Thodoris Greasidis] </summary>
>>
>>> ##### pinejs-client-js-6.9.0 - 2020-09-07
>>>
>>> * Add 'getOrCreate' method supporting natural keys [Thodoris Greasidis]
>>>
>>> ##### pinejs-client-js-6.8.0 - 2020-09-03
>>>
>>> * Add support for $format [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.7.3 - 2020-08-26
>>>
>>> * Improve $orderby typing to allow `[{a: 'desc'}, {b: 'asc'}]` [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.7.2 - 2020-08-24
>>>
>>> * Update dev dependencies [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.7.1 - 2020-08-12
>>>
>>> * Fix prepare $count typings [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.7.0 - 2020-08-12
>>>
>>> * Improve typings for request/post/put/patch/delete [Pagan Gazzard]
>>>
>> </details>
>>
>>
> </details>
>
>
> ### balena-sdk-15.8.1 - 2020-09-08
>
> * Add mocha tests specific linting [Thodoris Greasidis]
> * Auto-fix lint errors with the test:fast script [Thodoris Greasidis]
> * Add linting checks back to the test script [Thodoris Greasidis]
>
> ### balena-sdk-15.8.0 - 2020-09-08
>
> * Add a hostapps model for fetching OS versions [Stevche Radevski]
>
> ### balena-sdk-15.7.1 - 2020-09-03
>
> * tests: Convert the device.getMACAddress tests to async await [Thodoris Greasidis]
>
> ### balena-sdk-15.7.0 - 2020-09-03
>
> * Add methods for managing organization membership tags [Thodoris Greasidis]
> * tests: Support testing tags with two word names [Thodoris Greasidis]
>
</details>
* common-flags: Add default false on yes, force and verbose flags [Marios Balamatsias]
* device: Add deactivate command [Marios Balamatsias]
## 12.29.1 - 2020-12-04
* devices: Don't truncate device UUID to 7 chars when --json is used [Paulo Castro]
## 12.29.0 - 2020-12-01
* scan: Print production devices' info on scan [Marios Balamatsias]
## 12.28.3 - 2020-11-26
* Add ability to disable analytics for performance testing [Scott Lowe]
## 12.28.2 - 2020-11-20
* docs: Add references to the masterclasses in the CLI help and README [Paulo Castro]
* Fix debug message logic (don't suggest --debug if it is already being used) [Paulo Castro]
* Fix unhandled promise rejection when ~/.balena is not accessible [Paulo Castro]
## 12.28.1 - 2020-11-20
* scan: Prevent spinner animation output to stdout when --json is used [Paulo Castro]
## 12.28.0 - 2020-11-19
* push: Reduce memory usage when filtering files with dockerignore [Paulo Castro]
* Livepush: Refactor dockerignore filtering and add test cases [Paulo Castro]
* Livepush: Ignore paths set in .dockerignore files [Josh Bowling]
## 12.27.4 - 2020-11-15
* Test code optimization: avoid running ~70 test cases twice [Paulo Castro]
* docs: Add note about macOS Big Sur notarization workaround [Paulo Castro]
## 12.27.3 - 2020-11-11
* Avoid reporting balenarc parsing errors [Scott Lowe]
## 12.27.2 - 2020-11-09
* Modify `os download` help to mention dev images [Thomas Manning]
## 12.27.1 - 2020-11-06
* Improve application-identifier disambiguation [Scott Lowe]
## 12.27.0 - 2020-11-05
* Add command app purge [Scott Lowe]
## 12.26.2 - 2020-11-05
* config generate + openBalena v3: Fix "Cannot read property '__id' of undefined" [Paulo Castro]
## 12.26.1 - 2020-10-31
* devices: Fix "TypeError: Cannot read property 'slug' of undefined" [Paulo Castro]
## 12.26.0 - 2020-10-29
* Add command device purge [Scott Lowe]
## 12.25.6 - 2020-10-28
* ssh: Fix "Found more than one container with a service name <name>" [Paulo Castro]
## 12.25.5 - 2020-10-27
* Remove need for hardcoded list of command ids [Scott Lowe]
## 12.25.4 - 2020-10-25
* Update Contributing document re commit messages / versionbot / changelog [Paulo Castro]
* config generate: Fix "Application is ambiguous" when app slug is used [Paulo Castro]
* config generate: Fix device type compatibility check [Paulo Castro]
## 12.25.3 - 2020-10-21
* build/deploy: Add more test cases (--buildArg option) [Paulo Castro]
* Fix typing (don't assume that 'docker-toolbelt' uses Bluebird promises) [Paulo Castro]
* build/deploy: Fix --buildArg option with docker-compose.yml projects [Paulo Castro]
* build/deploy: Fix image size notice at end of build [Paulo Castro]
* Convert more code to Typescript (compose.js) [Paulo Castro]
## 12.25.2 - 2020-10-21
* Revert styling of "balena CLI" as "balenaCLI" [Paulo Castro]
* Add help note regarding the version of Node.js printed by `balena version -a` [Paulo Castro]
* preload: Fix parsing of `--add-certificate` option, amend help for `--app` [Paulo Castro]
## 12.25.1 - 2020-10-13
* Treat authorization errors as expected [Scott Lowe]
## 12.25.0 - 2020-10-11
* Refactor initialization code (delete app-oclif.ts and app-common.ts) [Paulo Castro]
* Support BALENARC_NO_SENTRY env var to disable Sentry.io error reporting [Paulo Castro]
* Update Sentry package (may fix "Maximum call stack size exceeded") [Paulo Castro]
## 12.24.1 - 2020-10-07
* login: sign up at the configured balena instance [Matthew McGinn]
## 12.24.0 - 2020-10-06
* scan: Add '--json' option to help with scripting [Paulo Castro]
## 12.23.4 - 2020-10-05
* Update CONTRIBUTING.md re balena-dev workflow [Paulo Castro]
* Add bin/balena* scripts to linter paths [Paulo Castro]
* Workaround balena-dev/oclif compatibility issues [Scott Lowe]
## 12.23.3 - 2020-10-02
* Rename actions-oclif/ to commands/ [Scott Lowe]
## 12.23.2 - 2020-10-02
* push: Fix accidental rename of `-e` (emulated) option [Paulo Castro]
## 12.23.1 - 2020-09-28
* Update the CONTRIBUTING.md document [Paulo Castro]
## 12.23.0 - 2020-09-25
* Add new command `support` [Scott Lowe]
## 12.22.2 - 2020-09-19
* deploy: Fix unexpected exit with "Everything is up to date" [Paulo Castro]
## 12.22.1 - 2020-09-19
* Style "balena CLI" as "balenaCLI" and "balena cloud" as "balenaCloud" [Paulo Castro]
* Reorganize and simplify installation instructions [Paulo Castro]
## 12.22.0 - 2020-09-18
* Add new command `device restart` [Scott Lowe]
## 12.21.1 - 2020-09-16
* scan: Fix "CLI could not be loaded" with the standalone zip installer [Paulo Castro]
## 12.21.0 - 2020-09-16
* Add new command `app rename` [Scott Lowe]
## 12.20.0 - 2020-09-10
* Minor fix to device rm [Scott Lowe]
* Update registry secrets example URL [Scott Lowe]
* Improve command suggestions, add topic help [Scott Lowe]
## 12.19.0 - 2020-09-10
* Fix numerical id support in device rm [Scott Lowe]
* Fix numerical id support in device move [Scott Lowe]
* Fix required status of param in os versions [Scott Lowe]
* Add ability to specify poll interval in join command [Scott Lowe]
* Improve error handling in internal scandevices [Scott Lowe]
## 12.18.0 - 2020-09-09
* push (local device): Add --pull option to force pulling base images again [Paulo Castro]
* push: Reformat help output to fit in 80 characters [Paulo Castro]
## 12.17.2 - 2020-09-08
* Fix error displaying info for devices without commits [Scott Lowe]
## 12.17.1 - 2020-09-08
* Fix usage info for env rename [Scott Lowe]
* Fix typo in docs help section [Scott Lowe]
* Fix issue with replaced command checks [Scott Lowe]
## 12.17.0 - 2020-09-07
* Display command suggestions, when command not recognized [Scott Lowe]
* Convert help to oclif, remove capitano [Scott Lowe]
## 12.16.0 - 2020-09-04
* build, deploy: Add --pull option to force pulling base images again [Paulo Castro]
## 12.15.1 - 2020-09-04
* Modify undervoltage status display in device command [Scott Lowe]
## 12.15.0 - 2020-09-03
* Add support for new device metrics to device command [Scott Lowe]
## 12.14.18 - 2020-08-28
* Convert oclif actions to async/await [Pagan Gazzard]
## 12.14.17 - 2020-08-27
* preload: Improve the typings [Thodoris Greasidis]
<details>
<summary> Update balena-sdk to 15.3.7 [Thodoris Greasidis] </summary>
> ### balena-sdk-15.3.7 - 2020-08-27
>
> * Improve $orderby typing to allow `[{a: 'desc'}, {b: 'asc'}]` [Pagan Gazzard]
>
> ### balena-sdk-15.3.6 - 2020-08-26
>
> * Document how to use with pkg [Thodoris Greasidis]
>
> ### balena-sdk-15.3.5 - 2020-08-26
>
> * Use a more semantic parameter name for device.getDeviceSlug [Thodoris Greasidis]
>
> ### balena-sdk-15.3.4 - 2020-08-26
>
> * tests: Update the tests for the new maximum application name size [Thodoris Greasidis]
>
> ### balena-sdk-15.3.3 - 2020-08-21
>
> * typings: Fix nested $count support in the strict pine variant [Thodoris Greasidis]
>
> ### balena-sdk-15.3.2 - 2020-08-20
>
> * Update TypeScript to 4.0 [Thodoris Greasidis]
>
</details>
## 12.14.16 - 2020-08-27
* Update to typescript 4.0 [Pagan Gazzard]
## 12.14.15 - 2020-08-27
* Convert command preload to oclif, typescript [Scott Lowe]
## 12.14.14 - 2020-08-26
* Fix device UUID parsing for 'balena tunnel' [Alexis Svinartchouk]
## 12.14.13 - 2020-08-26
* preload: Fix splash image file name for balenaOS >= 2.53.0 [Paulo Castro]
## 12.14.12 - 2020-08-22
* Convert deploy command to oclif [Scott Lowe]
## 12.14.11 - 2020-08-21
* Shorten `env add` command summary to prevent wrapping [Scott Lowe]
* Fix help template bug affecting discrete value options [Scott Lowe]
## 12.14.10 - 2020-08-14
* build: Fix --buildArg and --cache-from options (broken since v12.9.9) [Paulo Castro]
## 12.14.9 - 2020-08-14
<details>
<summary> Update dependencies [Pagan Gazzard] </summary>
> ### balena-sdk-15.3.1 - 2020-08-13
>
>
> <details>
> <summary> Bump balena-request to fix breaking user's stored token on token refresh [Thodoris Greasidis] </summary>
>
>> #### balena-request-11.1.1 - 2020-08-13
>>
>> * Stop refreshing the token on absolute urls [Thodoris Greasidis]
>>
> </details>
>
>
</details>
## 12.14.8 - 2020-08-13
* build / push: Fix sudden process crash (update tar-utils dependency) [Paulo Castro]
## 12.14.7 - 2020-08-13
<details>
<summary> Update dependencies [Pagan Gazzard] </summary>
> ### balena-sdk-15.3.0 - 2020-08-12
>
>
> <details>
> <summary> Update balena-pine and add custom typings for prepare/subscribe [Pagan Gazzard] </summary>
>
>> #### balena-pine-12.3.0 - 2020-08-12
>>
>>
>> <details>
>> <summary> Update pinejs-client-core to 6.6.1 [Pagan Gazzard] </summary>
>>
>>> ##### pinejs-client-js-6.6.1 - 2020-08-11
>>>
>>> * Fix typing when id is specified to be `AnyObject | undefined` [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.6.0 - 2020-08-11
>>>
>>> * Deprecate `$expand: { 'a/$count': {...} }` [Pagan Gazzard]
>>> * Deprecate `resource: 'a/$count'` and update typings to reflect it [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.5.0 - 2020-08-11
>>>
>>> * Add `options: { $count: { ... } }` sugar for top level $count [Pagan Gazzard]
>>> * Add `$expand: { a: { $count: { ... } } }` sugar for $count in expands [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.4.0 - 2020-08-11
>>>
>>> * Improve return typing of `subscribe` method [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.3.0 - 2020-08-11
>>>
>>> * Fix Poll.on typings [Pagan Gazzard]
>>> * Improve return typing when id is passed to GET methods [Pagan Gazzard]
>>> * Remove `PromiseResult` type, use `Promise<PromiseResultTypes>` instead [Pagan Gazzard]
>>> * Remove `PromiseObj` type, use `Promise<{}>` instead [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.2.0 - 2020-08-10
>>>
>>> * Add `$filter: { a: { $count: 1 } }` sugar for $count in filters [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.1.2 - 2020-08-10
>>>
>>> * Remove redundant ParamsObj/SubscribeParamsObj types [Pagan Gazzard]
>>>
>>> ##### pinejs-client-js-6.1.1 - 2020-08-10
>>>
>>> * Make use of `mapObj` helper in more places [Pagan Gazzard]
>>> * Use `Object.keys` in preference to `hasOwnProperty` where applicable [Pagan Gazzard]
>>>
>> </details>
>>
>>
> </details>
>
>
</details>
## 12.14.6 - 2020-08-12
* Tests: check shrinkwrap is deduped [Pagan Gazzard]
* Allow rebasing of npm-shrinkwrap [Pagan Gazzard]
## 12.14.5 - 2020-08-11
<details>
<summary> Update balena-sdk to 15.x [Pagan Gazzard] </summary>
> ### balena-sdk-15.2.1 - 2020-08-03
>
> * Convert majority to async/await [Pagan Gazzard]
>
> ### balena-sdk-15.2.0 - 2020-07-31
>
> * device: add method to update target supervisor release [Matthew McGinn]
>
> ### balena-sdk-15.1.1 - 2020-07-27
>
> * Deduplicate device update methods [Pagan Gazzard]
>
> ### balena-sdk-15.1.0 - 2020-07-27
>
>
> <details>
> <summary> Update balena-pine to add support for and make use of named keys [Pagan Gazzard] </summary>
>
>> #### balena-pine-12.2.0 - 2020-07-22
>>
>>
>> <details>
>> <summary> Update pinejs-client-core [Pagan Gazzard] </summary>
>>
>>> ##### pinejs-client-js-6.1.0 - 2020-07-21
>>>
>>> * Add support for using named ids [Pagan Gazzard]
>>>
>> </details>
>>
>>
>> #### balena-request-11.1.0 - 2020-07-16
>>
>> * Add lazy loading for most modules [Pagan Gazzard]
>>
> </details>
>
>
> ### balena-sdk-15.0.3 - 2020-07-27
>
> * typings: Fix the PineWithSelect & related type helpers [Thodoris Greasidis]
> * typings: Use the native TypeScript Omit type helper [Thodoris Greasidis]
>
> ### balena-sdk-15.0.2 - 2020-07-22
>
> * Fix code snippet for initializing balena-sdk [Vipul Gupta (@vipulgupta2048)]
>
> ### balena-sdk-15.0.1 - 2020-07-15
>
> * Fix SupportTier/includes__SLA typing [Pagan Gazzard]
>
> ### balena-sdk-15.0.0 - 2020-07-15
>
> * **BREAKING** Export setSharedOptions & fromSharedOptions separately [Thodoris Greasidis]
> * **BREAKING** Export as an ES6 module [Thodoris Greasidis]
>
> <details>
> <summary> Update dependencies and switch all returned promises to native promises [Pagan Gazzard] </summary>
>
>> #### balena-auth-4.0.2 - 2020-07-13
>>
>> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>>
>> #### balena-auth-4.0.1 - 2020-07-03
>>
>> * Explicitly add tslib dependency [Pagan Gazzard]
>>
>> #### balena-auth-4.0.0 - 2020-07-02
>>
>> * Update to balena-settings-storage 6.x [Pagan Gazzard]
>> * Update target to es2015 [Pagan Gazzard]
>> * Switch to native promises [Pagan Gazzard]
>> * Enable strict type checking [Pagan Gazzard]
>> * Specify node 10+ [Pagan Gazzard]
>>
>> #### balena-auth-3.1.1 - 2020-07-02
>>
>> * Switch to @balena/lint for linting [Pagan Gazzard]
>>
>> #### balena-pine-12.1.1 - 2020-07-13
>>
>> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>>
>> #### balena-pine-12.1.0 - 2020-07-06
>>
>> * Update balena-auth to 4.x and balena-request to 11.x [Pagan Gazzard]
>>
>> #### balena-pine-12.0.1 - 2020-07-03
>>
>> * Use typescript import helpers [Pagan Gazzard]
>>
>> #### balena-pine-12.0.0 - 2020-06-26
>>
>> * Stop actively supporting node 8 [Thodoris Greasidis]
>> * Convert to async await [Thodoris Greasidis]
>> * Add balenaCI repo.yml [Thodoris Greasidis]
>> * karma.conf.js: Combine declaration & assignment of karmaConfig [Thodoris Greasidis]
>> * Bump @balena/lint to v5 [Thodoris Greasidis]
>> * Drop getPine() in favor of an es6 export of the BalenaPine class [Thodoris Greasidis]
>> * Drop the API_PREFIX property in favor of the apiPrefix [Thodoris Greasidis]
>> * Bump to pinejs-client v6 which requires es2015 & drops Bluebird promises [Thodoris Greasidis]
>>
>> #### balena-pine-11.2.1 - 2020-06-15
>>
>> * Convert karma.conf to js [Thodoris Greasidis]
>> * Bump balena-config-karma to v3 [Thodoris Greasidis]
>>
>> #### balena-register-device-7.1.0 - 2020-07-13
>>
>> * Switch from randomstring to uuid for generating device uuids [Pagan Gazzard]
>>
>> #### balena-register-device-7.0.1 - 2020-07-13
>>
>> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>>
>> #### balena-register-device-7.0.0 - 2020-07-06
>>
>> * Convert to type checked javascript [Pagan Gazzard]
>> * Drop callback interface in favor of promise interface [Pagan Gazzard]
>> * Switch to a named export [Pagan Gazzard]
>> * Convert to typescript [Pagan Gazzard]
>> * Update to typed-error 3.x [Pagan Gazzard]
>> * Switch to returning native promises [Pagan Gazzard]
>> * Update to balena-request 11.x [Pagan Gazzard]
>> * Use typescript import helpers [Pagan Gazzard]
>>
>> #### balena-register-device-6.1.6 - 2020-05-26
>>
>> * Export ApiError [Cameron Diver]
>>
>> #### balena-register-device-6.1.5 - 2020-05-21
>>
>> * Convert tests to js [Thodoris Greasidis]
>>
>> #### balena-register-device-6.1.4 - 2020-05-21
>>
>> * Install typed-error v2 [Cameron Diver]
>>
>> #### balena-register-device-6.1.3 - 2020-05-20
>>
>> * Extend API exception to include full response object [Miguel Casqueira]
>>
>> #### balena-register-device-6.1.2 - 2020-05-20
>>
>> * Update mocha to fix node v12 deprecation warning [Thodoris Greasidis]
>>
>> #### balena-request-11.0.4 - 2020-07-14
>>
>> * Fix body overwriting on nodejs [Pagan Gazzard]
>>
>> #### balena-request-11.0.3 - 2020-07-13
>>
>> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>>
>> #### balena-request-11.0.2 - 2020-07-06
>>
>> * Fix tslib dependency [Pagan Gazzard]
>>
>> #### balena-request-11.0.1 - 2020-07-03
>>
>> * Fix passing baseUrl to refreshToken if the request uses an absolute url [Pagan Gazzard]
>>
>> #### balena-request-11.0.0 - 2020-07-03
>>
>> * Convert to type checked javascript [Pagan Gazzard]
>> * Switch to returning native promises [Pagan Gazzard]
>> * Drop support for nodejs < 10 [Pagan Gazzard]
>> * Update balena-auth to 4.x [Pagan Gazzard]
>> * Remove rindle dependency [Pagan Gazzard]
>> * Update fetch-ponyfill to 6.x [Pagan Gazzard]
>> * Remove proxy tests as global-tunnel-ng only supports nodejs < 10.16.0 [Pagan Gazzard]
>> * Switch to a named export [Pagan Gazzard]
>> * Use typescript import helpers [Pagan Gazzard]
>> * Bump balena-config-karma & convert karma.conf.coffee to js [Thodoris Greasidis]
>> * Change the browser request timeout error to be consistent with node [Thodoris Greasidis]
>>
> </details>
>
> * **BREAKING** billing: Make the organization parameter fist & required [Thodoris Greasidis]
>
> ### balena-config-json-4.1.0 - 2020-08-04
>
> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>
> <details>
> <summary> Update dependencies [Pagan Gazzard] </summary>
>
>> #### balena-sdk-15.2.1 - 2020-08-03
>>
>> * Convert majority to async/await [Pagan Gazzard]
>>
>> #### balena-sdk-15.2.0 - 2020-07-31
>>
>> * device: add method to update target supervisor release [Matthew McGinn]
>>
>> #### balena-sdk-15.1.1 - 2020-07-27
>>
>> * Deduplicate device update methods [Pagan Gazzard]
>>
>> #### balena-sdk-15.1.0 - 2020-07-27
>>
>>
>> <details>
>> <summary> Update balena-pine to add support for and make use of named keys [Pagan Gazzard] </summary>
>>
>>> ##### balena-pine-12.2.0 - 2020-07-22
>>>
>>>
>>> <details>
>>> <summary> Update pinejs-client-core [Pagan Gazzard] </summary>
>>>
>>>> ###### pinejs-client-js-6.1.0 - 2020-07-21
>>>>
>>>> * Add support for using named ids [Pagan Gazzard]
>>>>
>>> </details>
>>>
>>>
>>> ##### balena-request-11.1.0 - 2020-07-16
>>>
>>> * Add lazy loading for most modules [Pagan Gazzard]
>>>
>> </details>
>>
>>
>> #### balena-sdk-15.0.3 - 2020-07-27
>>
>> * typings: Fix the PineWithSelect & related type helpers [Thodoris Greasidis]
>> * typings: Use the native TypeScript Omit type helper [Thodoris Greasidis]
>>
>> #### balena-sdk-15.0.2 - 2020-07-22
>>
>> * Fix code snippet for initializing balena-sdk [Vipul Gupta (@vipulgupta2048)]
>>
>> #### balena-sdk-15.0.1 - 2020-07-15
>>
>> * Fix SupportTier/includes__SLA typing [Pagan Gazzard]
>>
>> #### balena-sdk-15.0.0 - 2020-07-15
>>
>> * **BREAKING** Export setSharedOptions & fromSharedOptions separately [Thodoris Greasidis]
>> * **BREAKING** Export as an ES6 module [Thodoris Greasidis]
>>
>> <details>
>> <summary> Update dependencies and switch all returned promises to native promises [Pagan Gazzard] </summary>
>>
>>> ##### balena-auth-4.0.2 - 2020-07-13
>>>
>>> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>>>
>>> ##### balena-auth-4.0.1 - 2020-07-03
>>>
>>> * Explicitly add tslib dependency [Pagan Gazzard]
>>>
>>> ##### balena-auth-4.0.0 - 2020-07-02
>>>
>>> * Update to balena-settings-storage 6.x [Pagan Gazzard]
>>> * Update target to es2015 [Pagan Gazzard]
>>> * Switch to native promises [Pagan Gazzard]
>>> * Enable strict type checking [Pagan Gazzard]
>>> * Specify node 10+ [Pagan Gazzard]
>>>
>>> ##### balena-auth-3.1.1 - 2020-07-02
>>>
>>> * Switch to @balena/lint for linting [Pagan Gazzard]
>>>
>>> ##### balena-pine-12.1.1 - 2020-07-13
>>>
>>> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>>>
>>> ##### balena-pine-12.1.0 - 2020-07-06
>>>
>>> * Update balena-auth to 4.x and balena-request to 11.x [Pagan Gazzard]
>>>
>>> ##### balena-pine-12.0.1 - 2020-07-03
>>>
>>> * Use typescript import helpers [Pagan Gazzard]
>>>
>>> ##### balena-pine-12.0.0 - 2020-06-26
>>>
>>> * Stop actively supporting node 8 [Thodoris Greasidis]
>>> * Convert to async await [Thodoris Greasidis]
>>> * Add balenaCI repo.yml [Thodoris Greasidis]
>>> * karma.conf.js: Combine declaration & assignment of karmaConfig [Thodoris Greasidis]
>>> * Bump @balena/lint to v5 [Thodoris Greasidis]
>>> * Drop getPine() in favor of an es6 export of the BalenaPine class [Thodoris Greasidis]
>>> * Drop the API_PREFIX property in favor of the apiPrefix [Thodoris Greasidis]
>>> * Bump to pinejs-client v6 which requires es2015 & drops Bluebird promises [Thodoris Greasidis]
>>>
>>> ##### balena-pine-11.2.1 - 2020-06-15
>>>
>>> * Convert karma.conf to js [Thodoris Greasidis]
>>> * Bump balena-config-karma to v3 [Thodoris Greasidis]
>>>
>>> ##### balena-register-device-7.1.0 - 2020-07-13
>>>
>>> * Switch from randomstring to uuid for generating device uuids [Pagan Gazzard]
>>>
>>> ##### balena-register-device-7.0.1 - 2020-07-13
>>>
>>> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>>>
>>> ##### balena-register-device-7.0.0 - 2020-07-06
>>>
>>> * Convert to type checked javascript [Pagan Gazzard]
>>> * Drop callback interface in favor of promise interface [Pagan Gazzard]
>>> * Switch to a named export [Pagan Gazzard]
>>> * Convert to typescript [Pagan Gazzard]
>>> * Update to typed-error 3.x [Pagan Gazzard]
>>> * Switch to returning native promises [Pagan Gazzard]
>>> * Update to balena-request 11.x [Pagan Gazzard]
>>> * Use typescript import helpers [Pagan Gazzard]
>>>
>>> ##### balena-register-device-6.1.6 - 2020-05-26
>>>
>>> * Export ApiError [Cameron Diver]
>>>
>>> ##### balena-register-device-6.1.5 - 2020-05-21
>>>
>>> * Convert tests to js [Thodoris Greasidis]
>>>
>>> ##### balena-register-device-6.1.4 - 2020-05-21
>>>
>>> * Install typed-error v2 [Cameron Diver]
>>>
>>> ##### balena-register-device-6.1.3 - 2020-05-20
>>>
>>> * Extend API exception to include full response object [Miguel Casqueira]
>>>
>>> ##### balena-register-device-6.1.2 - 2020-05-20
>>>
>>> * Update mocha to fix node v12 deprecation warning [Thodoris Greasidis]
>>>
>>> ##### balena-request-11.0.4 - 2020-07-14
>>>
>>> * Fix body overwriting on nodejs [Pagan Gazzard]
>>>
>>> ##### balena-request-11.0.3 - 2020-07-13
>>>
>>> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>>>
>>> ##### balena-request-11.0.2 - 2020-07-06
>>>
>>> * Fix tslib dependency [Pagan Gazzard]
>>>
>>> ##### balena-request-11.0.1 - 2020-07-03
>>>
>>> * Fix passing baseUrl to refreshToken if the request uses an absolute url [Pagan Gazzard]
>>>
>>> ##### balena-request-11.0.0 - 2020-07-03
>>>
>>> * Convert to type checked javascript [Pagan Gazzard]
>>> * Switch to returning native promises [Pagan Gazzard]
>>> * Drop support for nodejs < 10 [Pagan Gazzard]
>>> * Update balena-auth to 4.x [Pagan Gazzard]
>>> * Remove rindle dependency [Pagan Gazzard]
>>> * Update fetch-ponyfill to 6.x [Pagan Gazzard]
>>> * Remove proxy tests as global-tunnel-ng only supports nodejs < 10.16.0 [Pagan Gazzard]
>>> * Switch to a named export [Pagan Gazzard]
>>> * Use typescript import helpers [Pagan Gazzard]
>>> * Bump balena-config-karma & convert karma.conf.coffee to js [Thodoris Greasidis]
>>> * Change the browser request timeout error to be consistent with node [Thodoris Greasidis]
>>>
>> </details>
>>
>> * **BREAKING** billing: Make the organization parameter fist & required [Thodoris Greasidis]
>>
>> #### balena-sdk-14.8.0 - 2020-07-15
>>
>> * DeviceWithServiceDetails: preserve the image_install & gateway_downloads [Thodoris Greasidis]
>> * typings: Deprecate DeviceWithImageInstalls in favor of the Device type [Thodoris Greasidis]
>>
>> #### balena-sdk-14.7.1 - 2020-07-14
>>
>> * Fix is_private typings for device type [Stevche Radevski]
>>
>> #### balena-sdk-14.7.0 - 2020-07-14
>>
>> * Add an organization parameter to all billing methods [Thodoris Greasidis]
>>
>> #### balena-sdk-14.6.0 - 2020-07-13
>>
>> * typings: Add ApplicationHostedOnApplication [Thodoris Greasidis]
>> * typings Add RecoveryTwoFactor [Thodoris Greasidis]
>>
>> #### balena-sdk-14.5.1 - 2020-07-10
>>
>> * Tests: remove bluebird usage [Pagan Gazzard]
>>
>> #### balena-sdk-14.5.0 - 2020-07-09
>>
>> * tests/integration/setup: Convert to TypeScript [Thodoris Greasidis]
>> * typings/ImageInstall: Deprecate the image field [Thodoris Greasidis]
>> * typings/ImageInstall: Add the `installs__image` field [Thodoris Greasidis]
>> * typings: Add typings for the ReleaseImage [Thodoris Greasidis]
>> * typings/ImageInstall: Add the missing device property [Thodoris Greasidis]
>> * Convert all remaining tests away from coffeescript [Pagan Gazzard]
>>
>> #### balena-sdk-14.4.2 - 2020-07-09
>>
>> * Tests: improve typing for access to private SDK os methods [Pagan Gazzard]
>> * Tests: improve typing of tag helpers [Pagan Gazzard]
>> * Tests: import BalenaSDK types directly [Pagan Gazzard]
>>
>> #### balena-sdk-14.4.1 - 2020-07-08
>>
>> * Tests: merge multiple application deletions into a single call [Pagan Gazzard]
>>
>> #### balena-sdk-14.4.0 - 2020-07-08
>>
>> * Improve typings for `sdk.pine.post` [Pagan Gazzard]
>> * Improve typings for `sdk.request` [Pagan Gazzard]
>> * Improve typings for `models.device.getOsVersion` [Pagan Gazzard]
>> * Improve typings for `models.device.lastOnline` [Pagan Gazzard]
>> * Fix typings for `models.device.getMACAddresses` [Pagan Gazzard]
>> * Fix typings for `models.device.getLocalIPAddresses` [Pagan Gazzard]
>> * Add typings for `models.application.getDashboardUrl` [Pagan Gazzard]
>> * Device model: last_connectivity_event and os_version can be null [Pagan Gazzard]
>> * Improve typings for `models.device.getLocalModeSupport` [Pagan Gazzard]
>>
>> #### balena-sdk-14.3.3 - 2020-07-07
>>
>> * Minimize bluebird sugar usage [Pagan Gazzard]
>>
>> #### balena-sdk-14.3.2 - 2020-07-07
>>
>> * Add type checking for tests [Pagan Gazzard]
>>
>> #### balena-sdk-14.3.1 - 2020-07-07
>>
>> * Tests: cache device type lookup [Pagan Gazzard]
>>
>> #### balena-sdk-14.3.0 - 2020-07-07
>>
>> * typings: Export pine variant w/ a mandatory $select on get requests [Thodoris Greasidis]
>>
>> #### balena-sdk-14.2.9 - 2020-07-07
>>
>> * Remove `this.skip` usage as a faster workaround to afterEach skipping [Pagan Gazzard]
>>
>> #### balena-sdk-14.2.8 - 2020-07-06
>>
>> * Improve internal typings by avoiding some `any` cases [Pagan Gazzard]
>>
>> #### balena-sdk-14.2.7 - 2020-07-06
>>
>> * Include typings for all lazy loaded requires [Pagan Gazzard]
>>
>> #### balena-sdk-14.2.6 - 2020-07-06
>>
>> * Simplify balena-request custom typings [Pagan Gazzard]
>> * Use import type for declaration imports [Pagan Gazzard]
>> * Simplify balena-pine custom typings [Pagan Gazzard]
>> * Import balena-sdk type declarations via import type and not direct path [Pagan Gazzard]
>>
>> #### balena-sdk-14.2.5 - 2020-07-06
>>
>> * Use typescript import helpers [Pagan Gazzard]
>>
>> #### balena-sdk-14.2.4 - 2020-07-03
>>
>> * Drop dtslint in favor of plain @ts-expect-error [Thodoris Greasidis]
>> * Enable strict checks for the typing tests [Thodoris Greasidis]
>>
>> #### balena-sdk-14.2.3 - 2020-07-03
>>
>> * Standardize bluebird naming as `Bluebird` [Pagan Gazzard]
>>
>> #### balena-sdk-14.2.2 - 2020-07-03
>>
>> * Avoid $ExpectType b/c of issues with TS 3.9.6 [Thodoris Greasidis]
>>
>> #### balena-sdk-14.2.1 - 2020-07-01
>>
>> * model: Add build_environment_variable [Rich Bayliss]
>>
>> #### balena-sdk-14.2.0 - 2020-07-01
>>
>> * Add typings for plans & subscriptions [Thodoris Greasidis]
>>
>> #### balena-image-fs-7.0.1 - 2020-08-04
>>
>> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>>
>> #### balena-image-fs-7.0.0 - Invalid date
>>
>> * Stop using lodash [Alexis Svinartchouk]
>> * Simplify, only leave the interact function [Alexis Svinartchouk]
>> * Convert to typescript [Alexis Svinartchouk]
>> * lint on pre-commit [Alexis Svinartchouk]
>> * Rename resin -> balena [Alexis Svinartchouk]
>> * Replace wary with mocha [Alexis Svinartchouk]
>>
>> #### balena-image-fs-6.0.0 - 2020-07-24
>>
>> * Update file-disk to ^7 [Alexis Svinartchouk]
>>
> </details>
>
>
> ### balena-image-manager-7.0.3 - 2020-08-04
>
> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>
> ### balena-image-manager-7.0.2 - 2020-08-04
>
> * Update balena-sdk to 15.x [Pagan Gazzard]
>
> ### balena-preload-10.2.4 - 2020-08-10
>
> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>
> ### balena-preload-10.2.3 - 2020-08-04
>
> * Fix build dir paths [Pagan Gazzard]
>
> ### balena-preload-10.2.2 - 2020-08-04
>
> * Update balena-sdk to 15.x [Pagan Gazzard]
>
> ### balena-preload-10.2.1 - 2020-08-04
>
> * Add type checking [Pagan Gazzard]
> * Use @balena/lint for linting [Pagan Gazzard]
>
> ### balena-sync-11.0.2 - 2020-08-04
>
> * Add .versionbot/CHANGELOG.yml for nested changelogs [Pagan Gazzard]
>
> ### balena-sync-11.0.1 - 2020-08-04
>
> * Update balena-sdk to 15.x [Pagan Gazzard]
>
</details>
## 12.14.4 - 2020-08-11
* Tests: Specify es2018 as preferred, matching normal usage [Pagan Gazzard]
* Tests: Use a tmp data dir to avoid conflicts/overwriting existing data [Pagan Gazzard]
* Tests: Use a mocha file helper to always load config-tests first [Pagan Gazzard]
* Tests: Share mocha options between commands in package.json [Pagan Gazzard]
## 12.14.3 - 2020-08-11
* CI: Avoid duplicate windows/mac tests [Pagan Gazzard]
## 12.14.2 - 2020-08-10
* Lazy load tar-stream [Pagan Gazzard]
## 12.14.1 - 2020-08-07
<details>
<summary> Update balena-sdk to 14.x [Pagan Gazzard] </summary>
> ### balena-sdk-14.8.0 - 2020-07-15
>
> * DeviceWithServiceDetails: preserve the image_install & gateway_downloads [Thodoris Greasidis]
> * typings: Deprecate DeviceWithImageInstalls in favor of the Device type [Thodoris Greasidis]
>
> ### balena-sdk-14.7.1 - 2020-07-14
>
> * Fix is_private typings for device type [Stevche Radevski]
>
> ### balena-sdk-14.7.0 - 2020-07-14
>
> * Add an organization parameter to all billing methods [Thodoris Greasidis]
>
> ### balena-sdk-14.6.0 - 2020-07-13
>
> * typings: Add ApplicationHostedOnApplication [Thodoris Greasidis]
> * typings Add RecoveryTwoFactor [Thodoris Greasidis]
>
> ### balena-sdk-14.5.1 - 2020-07-10
>
> * Tests: remove bluebird usage [Pagan Gazzard]
>
> ### balena-sdk-14.5.0 - 2020-07-09
>
> * tests/integration/setup: Convert to TypeScript [Thodoris Greasidis]
> * typings/ImageInstall: Deprecate the image field [Thodoris Greasidis]
> * typings/ImageInstall: Add the `installs__image` field [Thodoris Greasidis]
> * typings: Add typings for the ReleaseImage [Thodoris Greasidis]
> * typings/ImageInstall: Add the missing device property [Thodoris Greasidis]
> * Convert all remaining tests away from coffeescript [Pagan Gazzard]
>
> ### balena-sdk-14.4.2 - 2020-07-09
>
> * Tests: improve typing for access to private SDK os methods [Pagan Gazzard]
> * Tests: improve typing of tag helpers [Pagan Gazzard]
> * Tests: import BalenaSDK types directly [Pagan Gazzard]
>
> ### balena-sdk-14.4.1 - 2020-07-08
>
> * Tests: merge multiple application deletions into a single call [Pagan Gazzard]
>
> ### balena-sdk-14.4.0 - 2020-07-08
>
> * Improve typings for `sdk.pine.post` [Pagan Gazzard]
> * Improve typings for `sdk.request` [Pagan Gazzard]
> * Improve typings for `models.device.getOsVersion` [Pagan Gazzard]
> * Improve typings for `models.device.lastOnline` [Pagan Gazzard]
> * Fix typings for `models.device.getMACAddresses` [Pagan Gazzard]
> * Fix typings for `models.device.getLocalIPAddresses` [Pagan Gazzard]
> * Add typings for `models.application.getDashboardUrl` [Pagan Gazzard]
> * Device model: last_connectivity_event and os_version can be null [Pagan Gazzard]
> * Improve typings for `models.device.getLocalModeSupport` [Pagan Gazzard]
>
> ### balena-sdk-14.3.3 - 2020-07-07
>
> * Minimize bluebird sugar usage [Pagan Gazzard]
>
> ### balena-sdk-14.3.2 - 2020-07-07
>
> * Add type checking for tests [Pagan Gazzard]
>
> ### balena-sdk-14.3.1 - 2020-07-07
>
> * Tests: cache device type lookup [Pagan Gazzard]
>
> ### balena-sdk-14.3.0 - 2020-07-07
>
> * typings: Export pine variant w/ a mandatory $select on get requests [Thodoris Greasidis]
>
> ### balena-sdk-14.2.9 - 2020-07-07
>
> * Remove `this.skip` usage as a faster workaround to afterEach skipping [Pagan Gazzard]
>
> ### balena-sdk-14.2.8 - 2020-07-06
>
> * Improve internal typings by avoiding some `any` cases [Pagan Gazzard]
>
> ### balena-sdk-14.2.7 - 2020-07-06
>
> * Include typings for all lazy loaded requires [Pagan Gazzard]
>
> ### balena-sdk-14.2.6 - 2020-07-06
>
> * Simplify balena-request custom typings [Pagan Gazzard]
> * Use import type for declaration imports [Pagan Gazzard]
> * Simplify balena-pine custom typings [Pagan Gazzard]
> * Import balena-sdk type declarations via import type and not direct path [Pagan Gazzard]
>
> ### balena-sdk-14.2.5 - 2020-07-06
>
> * Use typescript import helpers [Pagan Gazzard]
>
> ### balena-sdk-14.2.4 - 2020-07-03
>
> * Drop dtslint in favor of plain @ts-expect-error [Thodoris Greasidis]
> * Enable strict checks for the typing tests [Thodoris Greasidis]
>
> ### balena-sdk-14.2.3 - 2020-07-03
>
> * Standardize bluebird naming as `Bluebird` [Pagan Gazzard]
>
> ### balena-sdk-14.2.2 - 2020-07-03
>
> * Avoid $ExpectType b/c of issues with TS 3.9.6 [Thodoris Greasidis]
>
> ### balena-sdk-14.2.1 - 2020-07-01
>
> * model: Add build_environment_variable [Rich Bayliss]
>
> ### balena-sdk-14.2.0 - 2020-07-01
>
> * Add typings for plans & subscriptions [Thodoris Greasidis]
>
> ### balena-sdk-14.1.0 - 2020-06-29
>
> * Generate optional build for es2018 as well as the default es2015 [Pagan Gazzard]
>
> ### balena-sdk-14.0.2 - 2020-06-28
>
> * typings: Split the DeviceState namespace types to a different file [Thodoris Greasidis]
> * typings: Split the DeviceTypeJson namespace types to a different file [Thodoris Greasidis]
> * typings: Split the SBVR model types to a different file [Thodoris Greasidis]
>
> ### balena-sdk-14.0.1 - 2020-06-15
>
> * appveyor: Increase the node space size [Thodoris Greasidis]
> * Bump balena-config-karma to v3 [Thodoris Greasidis]
>
> ### balena-sdk-14.0.0 - 2020-06-11
>
> * typings: Drop the has_dependent field from the Device [Thodoris Greasidis]
> * typings: Drop the app_name field from the Device [Thodoris Greasidis]
> * Bump minimum supported Typescript to v3.9.3 [Thodoris Greasidis]
> * Add tests for arbitary pine requests [Thodoris Greasidis]
> * Add methods for the organization model [Thodoris Greasidis]
> * utils: Add overloaded typing for the mergePineOptions helper [Thodoris Greasidis]
> * typings: Add a PineOptionsWithSelect variant [Thodoris Greasidis]
> * tests: Add some $selects to make the tests faster [Thodoris Greasidis]
> * typings: Add a PineOptionsWithFilter variant [Thodoris Greasidis]
> * tests: Update to work with the required $filter change [Thodoris Greasidis]
> * **BREAKING** Make $filter or id required in pine DELETE & PATCH [Thodoris Greasidis]
> * **BREAKING** Drop the apiKey constructor option [Thodoris Greasidis]
> * **BREAKING** typings: Drop the "For" suffix on all exported Pine typings [Thodoris Greasidis]
> * typings/pinejs-client-core: Drop the nongeneric PineOptions & PineParams [Thodoris Greasidis]
> * **BREAKING** typings: Change PineParams & PineOptions to be generic [Thodoris Greasidis]
> * typings/pinejs-client-core: Support AnyObject in PineOptionsFor<T> [Thodoris Greasidis]
> * typings: Use a separate OptionalNavigationResource type in the models [Thodoris Greasidis]
> * typings: Improve the NavigationResource type [Thodoris Greasidis]
> * **BREAKING** typings: Drop duplicate service prop from ServiceInstall [Thodoris Greasidis]
> * **BREAKING** Change the device_type of all models to resource references [Thodoris Greasidis]
> * Add typings for the DeviceType resource [Thodoris Greasidis]
> * **BREAKING** Create a DeviceTypeJson namespace with all related typings [Thodoris Greasidis]
> * **BREAKING** Change application and device commit to release references [Thodoris Greasidis]
> * **BREAKING** Require an organization when creating applications [Thodoris Greasidis]
> * Clarify that application.getAppByOwner now accepts organization handles [Thodoris Greasidis]
> * Support creating applications for a specific organization [Thodoris Greasidis]
> * Add team & team_membership resources [Thodoris Greasidis]
> * **BREAKING** typings: Rename ApplicationMember to ApplicationMembership [Thodoris Greasidis]
> * **BREAKING** Drop user.application navigation property [Thodoris Greasidis]
> * **BREAKING**: Change application.user to application.organization [Thodoris Greasidis]
> * Add user.organization_membership [Thodoris Greasidis]
> * Add organization & organization_membership resources [Thodoris Greasidis]
> * Use pine.upsert() for setting tags & envars [Thodoris Greasidis]
> * Add support for pine.upsert(), requires Pinejs ^10.19.1 [Thodoris Greasidis]
> * **BREAKING** Expect a 409 status on unique constraint errors [Thodoris Greasidis]
> * **BREAKING** Use the /v6 API endpoint [Thodoris Greasidis]
>
> ### balena-sdk-13.8.0 - 2020-06-10
>
> * models/device: Add a getMACAddresses() method [Thodoris Greasidis]
> * typings: Add the mac_address field to the device [Thodoris Greasidis]
>
> ### balena-sdk-13.7.0 - 2020-06-09
>
> * typings: Add device last_vpn_event [Tom Granot-Scalosub]
>
</details>
## 12.14.0 - 2020-08-07
* Live push: Accept Dockerfile ENV instructions in live push to local device [Paulo Castro]
## 12.13.0 - 2020-08-07
* devices: Add '--json' option to help with scripting [Paulo Castro]
## 12.12.2 - 2020-08-07
* Tests: add verification of 'pkg' warnings against saved output [Paulo Castro]
## 12.12.1 - 2020-08-05
* Reduce bluebird usage [Pagan Gazzard]
## 12.12.0 - 2020-08-04
* env add: Add ability to add env var to multiple locations in one command [Nick Neisen]
## 12.11.3 - 2020-08-04
* Dont set the preloader config device type to intel-nuc [Alexis Svinartchouk]
## 12.11.2 - 2020-08-04
* os build-config: Fix output file containing 'undefined' word since v12.9.4 [Paulo Castro]
## 12.11.1 - 2020-08-04
* Update balena-release to v3 [Thodoris Greasidis]
## 12.11.0 - 2020-08-03
* login: Use any free port number instead of 8989 for web authentication [Paulo Castro]
* Testing: Increase mocha timeout from 6s to 12s (experimental) [Paulo Castro]
* Update GitHub issue template (request openBalena vs balenaCloud info) [Paulo Castro]
## 12.10.2 - 2020-08-03
* Fix performance regressions from #1967 [Pagan Gazzard]
## 12.10.1 - 2020-07-31
* Remove some bluebird usage [Pagan Gazzard]
## 12.10.0 - 2020-07-30
* device rm: Add ability to remove multiple devices in one command [Nick Neisen]
## 12.9.9 - 2020-07-30
* Convert command `build` to typescript, oclif, and refactor [Scott Lowe]
## 12.9.8 - 2020-07-30
* Tests: improve reliability of os/configure.spec.ts [Pagan Gazzard]
## 12.9.7 - 2020-07-29
* Convert command `push` to oclif [Scott Lowe]
## 12.9.6 - 2020-07-29
* Convert `config` commands to typescript, oclif [Scott Lowe]
## 12.9.5 - 2020-07-28
* Adjustments for balena-preload v10 (SDK v14). Improved error reporting. [Paulo Castro]
## 12.9.4 - 2020-07-28
* Convert `os build-config` to oclif, typescript [Scott Lowe]
## 12.9.3 - 2020-07-28
* Update net-keepalive to v1.3.3, reclaiming ~200MB disk space (npm install) [Paulo Castro]
## 12.9.2 - 2020-07-28
* devices supported: Rename 'BETA' to 'NEW' in verbose output [Paulo Castro]
* os download: Improve warning message re default balenaOS version [Paulo Castro]
## 12.9.1 - 2020-07-16
* Convert `os initialize` to oclif, typescript [Scott Lowe]
## 12.9.0 - 2020-07-15
* Update INSTALL.md re new minimum Node.js version of 10.20.0 [Paulo Castro]
* Update net-keepalive and pkg, Node.js >= v10.20.0 (steps towards Node.js v14) [Paulo Castro]
* Add ability to conditionally apply patches per platform (Linux, Mac, Windows) [Paulo Castro]
## 12.8.0 - 2020-07-15
* device move: Add ability to move multiple devices in one command [Nick]
## 12.7.7 - 2020-07-14
* Remove `os download` command dependency for `device init` [Scott Lowe]
* Convert `os download` to oclif, typescript [Scott Lowe]
## 12.7.6 - 2020-07-14
* Convert `os versions` to oclif, typescript [Scott Lowe]
## 12.7.5 - 2020-07-13
* Convert `local configure` to oclif, typescript [Scott Lowe]
## 12.7.4 - 2020-07-13
* balena ssh: Improve error message in case of misconfigured SSH keys [Nick]
## 12.7.3 - 2020-07-10
* Fix env var for standalone executable tests in package.json [Paulo Castro]
## 12.7.2 - 2020-07-10
* Convert `local flash` to oclif [Scott Lowe]
## 12.7.1 - 2020-07-09
* Disable mixpanel.track() calls while running automated tests [Paulo Castro]
* Test cases: Re-add nock checks for unexpected HTTP requests [Paulo Castro]
## 12.7.0 - 2020-07-09
* Device: Fix the last_seen field not showing up [Thodoris Greasidis]
* Device: explicitly fetch only the presented fields [Thodoris Greasidis]
## 12.6.8 - 2020-07-09
* Fix opn patch for some strange edge case [Pagan Gazzard]
## 12.6.7 - 2020-07-09
* Be lazier with imports in oclif actions [Pagan Gazzard]
## 12.6.6 - 2020-07-09
* Convert `util available-drives` to oclif [Scott Lowe]
## 12.6.5 - 2020-07-09
* Enforce and improve lazy loading of resin-cli-form [Pagan Gazzard]
## 12.6.4 - 2020-07-08
* Reduce lodash usage in oclif actions [Pagan Gazzard]
## 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
<details>
<summary> Update dependencies [Pagan Gazzard] </summary>
> ### 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]
</details>
## 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
<details>
<summary> Update dependencies [Pagan Gazzard] </summary>
> ### 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]
</details>
## 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 <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 theres 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.