balena-cli/CHANGELOG.md
2020-03-06 17:48:03 +02:00

2262 lines
63 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/).
## 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.