aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/runtime/ExperimentalEventHandler.java
Commit message (Collapse)AuthorAge
...
* experimental UI: merge simultaneous progress bar updatesGravatar Klaus Aehlig2016-03-04
| | | | | | | | | | | | Events may reach the UI over the event bus simultaneously or with very small time difference. Updating the UI on the terminal, however is an expensive operation. So update the UI only once for simultaneous events. -- Change-Id: I3e6881f18b37626f6be3ad7b97043b42773812f3 Reviewed-on: https://bazel-review.googlesource.com/#/c/3047 MOS_MIGRATED_REVID=116352143
* experimental UI: don't update progress bar after end of buildGravatar Klaus Aehlig2016-03-04
| | | | | | | | | | | | | | | | | After completion of the build, there is no need to update the progress bar any more. Its last line can just move to the scrollback buffer. The advantage of doing so, is that we then can pass through STDOUT and STDERR events without additional interference, like line ending to be sure to know where we position the progress bar and additional control characters to position the progress bar itself. In particular, the preformated status report of the tests that were run will be displayed properly. This makes the experimental UI also minimally usable for tests. -- Change-Id: Idaa389b93fc8c9c46c0930f66b4f69b16c3d2e0b Reviewed-on: https://bazel-review.googlesource.com/#/c/3046 MOS_MIGRATED_REVID=116350626
* experimental UI: use the progress receiverGravatar Klaus Aehlig2016-03-04
| | | | | | | | | | To improve reporting, in particular about the actions to carry out, make use of the ExecutionProgressReceiver. -- Change-Id: I9295199e4c6d9626a193b48b8f332ab2af8e3014 Reviewed-on: https://bazel-review.googlesource.com/#/c/3044 MOS_MIGRATED_REVID=116347930
* Make LineWrappingAnsiTerminalWriter a public classGravatar Klaus Aehlig2016-03-01
| | | | | | | | | ...so that it can be used by other event handlers as well. -- Change-Id: Ic7b37f9041aab63611d05bdb5f18e72bb0c8f1d9 Reviewed-on: https://bazel-review.googlesource.com/#/c/3040 MOS_MIGRATED_REVID=116012068
* ExperimentalEventHandler: break lines explicitlyGravatar Klaus Aehlig2016-02-29
| | | | | | | | | | | | In order to correctly erase the current progress bar, we need to know how many lines it is long. Instead of trying to compute it, enforce explicit breaks shorter than the terminal width. -- Change-Id: Ifac16b351e1390f553d0ceac2b647b1178b58d0b Reviewed-on: https://bazel-review.googlesource.com/#/c/3024 MOS_MIGRATED_REVID=115829390
* experimental UI: only refresh progress bar if neededGravatar Klaus Aehlig2016-02-28
| | | | | | | | | | | | | The handle(Event event) method of the ExperimentalEventHandler does not produce UI changes for every event observed. Still, it used to clear and re-add the progress bar unconditionally. Move those operations into the individual cases that do produce output, so that in the ignored events nothing is sent to the terminal. -- Change-Id: I31fd8df0ee2feeb53b6686fe7350848be2a53b6a Reviewed-on: https://bazel-review.googlesource.com/#/c/3025 MOS_MIGRATED_REVID=115656142
* Experimental UI: report ERROR/WARNING/INFO as usualGravatar Klaus Aehlig2016-02-25
| | | | | | | | | | | While the eventual goal is to improve the reporting of those events, for the time being, report them as usual, so that the experimental UI is minimally usable for building. -- Change-Id: Ib26deaa70feb3be08d0827dbf1012d38e7d28b1c Reviewed-on: https://bazel-review.googlesource.com/#/c/3017 MOS_MIGRATED_REVID=115551806
* Keep track of actions currently runningGravatar Klaus Aehlig2016-02-25
| | | | | | | | | | | | | Subscribe to start and completion events of actions to keep track of which actions are currently running. In the progress bar show up to 3 actions currently running, giving preference to the ones that started the most early. Also keep track of completion of analysis and build. -- Change-Id: I9183a84821abca85e2331baa059e1f636d756caf Reviewed-on: https://bazel-review.googlesource.com/#/c/3016 MOS_MIGRATED_REVID=115549337
* Pass through STDOUT and STDERR eventsGravatar Klaus Aehlig2016-02-25
| | | | | | | | | | | These events explicitly tell out to produce a well-defined message on stdout or stderr. Also in the new UI, honor those requests. -- Change-Id: I4188c6cb3a2e277b5b805b3d4f4c96c2cdc7b51c Reviewed-on: https://bazel-review.googlesource.com/#/c/3015 MOS_MIGRATED_REVID=115546439
* Add a state tracker and show a progress barGravatar Klaus Aehlig2016-02-25
| | | | | | | | | | | Add a state tracking class that is capable of keeping track of the internal state of the computation. Use it to provide a status bar at the lower end of the terminal. -- Change-Id: I39c17a80a238b3bc0d94527652b56a793f580d02 Reviewed-on: https://bazel-review.googlesource.com/#/c/3014 MOS_MIGRATED_REVID=115538418
* Report the completion of the loading PhaseGravatar Klaus Aehlig2016-02-25
| | | | | | | | | | Once loading is completed, report this fact. Also report the number of targets for later reference. -- Change-Id: Ibffbaa7add9fed48107d8fb320bd2349b1fac503 Reviewed-on: https://bazel-review.googlesource.com/#/c/3012 MOS_MIGRATED_REVID=115533328
* Support full logging of handled events in the experimental UIGravatar Klaus Aehlig2016-02-24
| | | | | | | | | | | To allow debugging and faster development of the new experimental UI, add an additional option telling the experimental UI to log each event available to the handler. -- Change-Id: Ib14c42d2afa5f52f6c444592274c8eaeeda15a81 Reviewed-on: https://bazel-review.googlesource.com/#/c/3010/2 MOS_MIGRATED_REVID=115453031
* Add an option to enable an experimental UIGravatar Ulf Adams2016-02-24
By enabling this option (default is off), a new, still experimental UI will be used. As it is developped from scratch, this commit simply implements a UI that does not produce any output at all. -- Change-Id: I895c0e0744c008212efc7bdfca1457f7907c9b64 Reviewed-on: https://bazel-review.googlesource.com/#/c/3009/ MOS_MIGRATED_REVID=115441032