Hello folks,
we're using the latest GWT version in master UI now [1].
We can start using Java 8 syntax in our frontend code. GWT 2.8 also brings
partial support for Java 8 standard library APIs, see "JDK emulation" at
[2] for details.
[1]
https://gerrit.ovirt.org/#/q/topic:gwtupgrade
[2]
http://www.gwtproject.org/release-notes.html#Release_Notes_2_8_0_RC1
Effectively, all Engine (Java Maven) modules [3] are now Java 8 source &
target compilant.
[3] except backend/manager/modules/extensions-api-root
With this upgrade, the GWT UI should be a bit faster - generated JavaScript
should take advantage of new web APIs (e.g. using ES6 Maps to implement
Java HashMap) as well as general performance improvements (e.g. using a
faster "long" emulation).
GWT 2.8 removes deRPC (direct-eval RPC) mechanism but that's OK because
we're already using the standard GWT RPC [4].
[4]
https://gerrit.ovirt.org/#/c/65735/
There are no changes to existing build & development process:
- debugging via Java IDE (aka Classic Dev Mode) remains the default debug
method
- debugging via browser (aka Super Dev Mode) can be enabled via
DEV_BUILD_GWT_SUPER_DEV_MODE flag [5]
[5] example: $ make gwt-debug DEBUG_MODULE=webadmin
DEV_BUILD_GWT_SUPER_DEV_MODE=1
Note that in GWT 2.8 the Super Dev Mode is the new default debug method
(with Classic Dev Mode being deprecated).
There are still some post-upgrade tasks to do, we're tracking them on
Trello:
https://trello.com/b/o26RrVLz/post-gwt-2-8-upgrade-tasks
If you encounter any issues related to GWT compilation or debugging, let me
know.
Regards,
Vojtech