Description
Describe the request
Automatically close compilation and upload error notifications when a subsequent compilation or upload is triggered.
🙂 The user will only be presented with relevant notifications.
Describe the current behavior
The Arduino IDE opens a notification when compilation or upload of a sketch fails. This is an excellent way of supplementing the more verbose and cryptic error messages shown in the "Output" view.
Although very valuable in the time after a failed compilation or upload, this notification is no longer relevant when a subsequent compilation/upload is triggered, since at that point the user is only interested in what the result will be of the current operation.
Currently, the notifications of errors from previous compilations/uploads are retained until the user manually closes them, which some might not think to do.
-
Create a sketch that will fail to compile:
#error void setup() {} void loop() {}
-
Select Sketch > Verify/Compile from the Arduino IDE menus.
-
Wait for compilation to finish.
🙂 A notification clearly communicates that there was a compilation error:❌ Compilation error: #error
-
Fix the problem with the sketch:
void setup() {} void loop() {}
-
Select Sketch > Verify/Compile from the Arduino IDE menus.
-
Wait for compilation to finish.
There are now two notifications, shown in this order:ⓘ Done Compiling
❌ Compilation error: #error
The "Done Compiling" notification does not clearly indicate a successful result. It also disappears after 3 seconds while the "Compilation error" notification is persistent.
🙁 It may not be clear to the user that the current compilation or upload was successful.
This is what the IDE looks like at the completion of a successful upload following some expected struggles:
Arduino IDE version
2.0.0-rc8-snapshot-1073c3f
Operating system
Windows
Operating system version
10
Additional context
Originally reported at https://forum.arduino.cc/t/imperfection-improvement/1010339
Issue checklist
- I searched for previous requests in the issue tracker
- I verified the feature was still missing when using the latest nightly build
- My request contains all necessary details