This patch will require a little rework before it gets submitted.
1) I don't know if the Arduino team will simply edit the existing binary
dependencies in place and hence NOT change the filename like I have below
(libastylej-2.05.1-3.zip -> libastylej-2.05.1-4.zip), or will indeed
upload to new a filename.
2) Since the Arduino team will build and distribute all the binaries, the
SHA values in the patch below will have to be recalculated once the actual
files are available. The values below are for my locally built versions.
* CLI: Add --version to CLI option
I added to get the Arduino IDE version from the command line
It will allow to check easily if the new Arduino is already installed.
This feature makes it easier to build external systems linked to specific versions of Arduino.
1. I added `--version` action, which shows version name and exit
1. Currently, VERSION_NAME_LONG (like `1.8.5`, `1.9.0-beta`, `1.8.6 Hourly Build XXX`, etc...) is used. Because I want to know its version number and stable/beta/hourly.
2. Finish with `0`. Because it is `SUCCESSFLLY FINISHED`.
2. Updated man page.
* Split "parse" and "action".
Move print action to probably suitable place.
This commit will fix the behavior of multiple actions about --version.
* add testcase
The serial.line_ending value was not present in the default
preferences file, so the default was implicitly 0, meaning "No line
ending". Since users often do not realize that they can even choose a
line ending, and "no line ending" is only rarely useful, it seems better
to default to sending a newline. Using both CR & NL would be more
consistent with Stream.println on the Arduino side, but just sending a
newline is probably easier to parse on the Arduino side.
This reverts commit 0c325b4ff6.
The 10.13 workaround seems to work also without this update AND it was causing a regression on testCommandLineBuildWithRelativePath (cwd() was not being exported)