Closed
Description
The STDERR output from arduino-cli is not shown in the Output panel during compilation, even when the "Verbose" setting is enabled in the IDE preferences.
This has the effect of suppressing useful troubleshooting information. For instance:
% arduino-cli compile -b arduino:samd:mkrwifi1010
In file included from /Users/alranel/Documents/Arduino/OplaWidgets/OplaWidgets.ino:2:0:
/Users/alranel/Documents/Arduino/libraries/OplaUI/src/Arduino_OplaUI.h:5:10: fatal error: widget_direct.h: No such file or directory
#include "widget_direct.h"
^~~~~~~~~~~~~~~~~
compilation terminated.
Multiple libraries were found for "SD.h"
Used: /Users/alranel/Documents/Arduino/libraries/SD
Not used: /Applications/Arduino.app/Contents/Java/libraries/SD
Error during build: exit status 1
When suppressing STDERR from the same command, it becomes pretty useless:
% arduino-cli compile -b arduino:samd:mkrwifi1010 2> /dev/null
Multiple libraries were found for "SD.h"
Used: /Users/alranel/Documents/Arduino/libraries/SD
Not used: /Applications/Arduino.app/Contents/Java/libraries/SD
This is how it is displayed in the IDE, leaving user with no clue about the compilation error (it ends with "Compilation error: Error: 2 UNKNOWN: exit status 1").
I don't know if including STDERR in the output panel in the IDE is the proper solution. For sure it's a workaround. Maybe the correct solution is to have arduino-cli print that kind of output to STDOUT instead? Proper STDOUT/STDERR semantics should be designed.
Version
2.0.0 beta4