GWT 2.8 delays

1,895 views
Skip to first unread message

steve Zara

unread,
May 8, 2016, 11:26:22 AM5/8/16
to GWT Users
GWT 2.8 is now well over a year behind what seemed to be the original schedule. I'm having to deal with colleagues who say they have lost confidence in the GWT project, which is a problem as I have GWT projects to support and further develop, as part of what I hope will be a globally used and long-lived system. Confidence in software requires the presence of established releases, NOT betas, which put off investors.

Is there anything that can be done to assist with progress? Is there a problem with lack of interest in GWT from, say, Google? Does GWT 2.8 involve too many features when compared to 2.7? Is there a lack of developers working on GWT? Are more testers needed?

Regards

Steve Zara

Jens

unread,
May 8, 2016, 4:36:05 PM5/8/16
to GWT Users
Is there anything that can be done to assist with progress?  Is there a problem with lack of interest in GWT from, say, Google?  Does GWT 2.8 involve too many features when compared to 2.7? Is there a lack of developers working on GWT?  Are more testers needed?  

Basically it has been decided to ship Java 8 API support with GWT 2.8 and to make sure it works with the next Guava release which will require Java 8 APIs. If we don't do this then next Guava release would need to drop GWT support, which is bad.

Currently some dependencies of stream support are in the review process, and stream support itself has already been implemented but not yet pushed to review. Also it seems like we need to fix some compatibility issues of our emulation with future Guava. 
Google developers do not work on Java 8 API emulation so GWT relies on contributions. Three people (including me) have worked on it in the past but of course we only do it in our spare time.


You can help review Java 8 related contributions on Gerrit as most "easy" Java 8 emulations have already been covered. What nobody has touched yet is java.util.Base64 (pretty easy though), CompletableFuture (discussable but we think its useful and can be emulated using native Promises or a fallback impl) and of course java.time (generally doable but a bit more work).

-- J.

steve Zara

unread,
May 8, 2016, 4:53:17 PM5/8/16
to google-we...@googlegroups.com
Thank you - it does highlight where help can be given.  I'm really surprised at the situation with Java 8 emulation - is this something that Google is just not interested in?  It seems odd given their description of Java technologies that give them cross-platform development: Android JDK, GWT, and j2objc, especially now that Google are soon to provide Java 8 support for Android. Ah well.
--
You received this message because you are subscribed to a topic in the Google Groups "GWT Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-web-toolkit/4ISY79wAq04/unsubscribe.
To unsubscribe from this group and all its topics, send an email to google-web-tool...@googlegroups.com.
To post to this group, send email to google-we...@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.

steve Zara

unread,
May 8, 2016, 9:18:35 PM5/8/16
to google-we...@googlegroups.com
I will see if I can find time to help.

--

P.G.Taboada

unread,
May 9, 2016, 2:55:23 AM5/9/16
to GWT Users
So many people depending on GWT, GWT depending on Java 8 support/ guava and Google does not work on the Java 8 API emulation. 3 devs working on Java 8 emulation in spare time.

Is it just me having a bad feeling here?


steve Zara

unread,
May 9, 2016, 11:20:25 AM5/9/16
to google-we...@googlegroups.com
It seems to me that the answer to a bad feeling is to contribute time and resources to help out, and I am going to try and do that. I would say that the number of developers isn't the only problem.  I can't understand why an earlier release wasn't made with Java 8 syntax support. My impression is that this could have been done a year ago.  It would have been a huge benefit for developers, and a morale boost for GWT users.  Also, why hasn't there been a request for developers on the GWT groups?  There have been requests to help with testing, but this gave the impression that a new release was perhaps only weeks away.  

I'm a dedicated GWT user.  I have substantial projects soon to be released.  I don't see GWT going anywhere, as there is nothing that provides what GWT does, which is to be able to write powerful web clients using code written in a popular language with great tool support.  I have found the ability to share code with non-web platforms to be outstanding - it's a ideal demonstration of DRY.

But GWT needs better publicity and communication. Only yesterday I saw a discussion about GWT on Quora in which it was stated that GWT was dead, and also that GWT was a bad idea because it led to more code on the server!  I'd love to see good material about GWT 2.8 (when it comes) on a site like infoq, to get GWT back into the 'headlines'.  Also a GWT conference is long overdue.

On Monday, 9 May 2016, P.G.Taboada <pgta...@gmail.com> wrote:
So many people depending on GWT, GWT depending on Java 8 support/ guava and Google does not work on the Java 8 API emulation. 3 devs working on Java 8 emulation in spare time.

Is it just me having a bad feeling here?


Michael Zhou

unread,
May 9, 2016, 12:30:45 PM5/9/16
to GWT Users, st...@serf.org
Google is definitely interested in Java 8 emulation, but most efforts are being spent on J2CL, which goes from Java 8 -> Closure-style ES6.
To unsubscribe from this group and all its topics, send an email to google-web-toolkit+unsub...@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.

Thomas Broyer

unread,
May 9, 2016, 12:33:30 PM5/9/16
to GWT Users, st...@serf.org


On Monday, May 9, 2016 at 5:20:25 PM UTC+2, steve Zara wrote:
Also a GWT conference is long overdue.

What do you mean exactly?
http://gwtcreate.com/ or http://www.gwtcon.org/ ? or that there's no GWT.create 2016? (yet?)

steve Zara

unread,
May 9, 2016, 3:53:16 PM5/9/16
to GWT Users, st...@serf.org
I misunderstood.  I assumed that GWT and J2CL were basically the same thing (or that GWT would be renamed J2CL!

Michael Zhou

unread,
May 9, 2016, 4:04:46 PM5/9/16
to GWT Users, st...@serf.org
J2CL is the next-generation Java-to-JavaScript compiler that is currently being developed by Google. The GWT committee will decide if J2CL will be used for GWT 3 (or whatever the next major release of GWT will be called).

NGdeM

unread,
May 30, 2016, 2:50:02 PM5/30/16
to GWT Users
One can understand that the amount of resources behind Angular are far superior to those behind GWT.

In any case, the project's last official hear-beat dates from December 3, 2015, and this was a beta release.

For anybody watching, it is scary to see a UI framework having releases going out at such a slow pace.
It most likely far from being trivial to bring full support to the Java 8 api.

But in that case, could one say that the scope for the deliverable is not properly planned?
Could the scope of the GWT releases have not been sliced into multiple final incremental stable releases? 

None the less, even if the scope of the 2.8 release is to support the full Java 8 API, then several beta releases like the beta 1 could have already come out. Such as every 4 months there should be a goal to have something stable coming out.
One could enumerate the set of of open work tasks and APIs not yet supported...

At this point in time, would looking at the release notes in the GWT documentation just thinks the project is terminated.

Would a beta-2 be possible any time soon?
Many libraries such as Vaadin GWT widgets no longer support 2.8 beta1.

Many thanks and kind regards.

Ignacio Baca Moreno-Torres

unread,
May 30, 2016, 4:06:52 PM5/30/16
to GWT Users
I said this many times but... I strongly recommend that you create your own releases. This is what we have been doing for years...

1. create a release using something like... (tools and trunk are github clones, build-deploy.sh is the script to deploy to your company repo, you should create it yourself)
system in /Users/you/Code/gwt/  
ll
total
16
-rw-r--r--  1 you staff  247 jul 17  2015 README.md
-rwxr--r--  1 you staff  297 ago 14  2015 build-deploy.sh
-rwxr--r--  1 you staff  191 abr 12  2015 build-local.sh
-rwxr--r--  1 you staff  159 mar 12  2015 push-to-m2.sh
drwxr
-xr-x 10 you staff  340 abr  7 10:56 tools
drwxr
-xr-x 30 you staff 1020 mar 20 09:20 trunk
drwxr
-xr-x  4 you staff  136 sep  6  2014 workspace
 
system
in /Users/you/Code/gwt/  
cat build-deploy.sh  
#!/bin/sh
export GWT_VERSION=2.8.0-i`date +%Y%m%d`
export GWT_MAVEN_REPO_URL=http://maven.yourcompany.com/ext-release-local
export GWT_MAVEN_REPO_ID=maven.yourcompany.com
echo building version $GWT_VERSION
...  
cd trunk
ant clean buildonly elemental dist
-dev
maven
/push-gwt.sh
git tag
-f $GWT_VERSION

2. update your project gwt version... done. :)


Yep quite easy. We usually make 1 release a week, some time more some time less, GWT is extremely stable, usually if something is wrong is really wrong, which is a good thing because problems are detected quite early. You can spend more time, but I don't think that you are going to find any surprise if you develop during one or two week with a new version. So we usually change the GWT version just after a release, and we just continue developing using the new version, if no-one detects anything before the next release we just release. Looks like google compile most of it's projects using the gwt head, so you find frequently that if some commit makes something inestable they revert it in a few day (frequently the next day). So if you test your version during more than a week and you review the last commits since your release tag, you can see even more info if something is going to fail.


This has obvious advantages, you get used to compile gwt so if you find some bug which affect your project you can always hack it (which is far easier that find a perfect solution) and fix the problem for your clients, obviously, you get the cool advantage of being always using the last features of gwt, and finally your are going to start feeling like GWT is much live than you thought it be only seeing its releases.


Please, atleast try, make a release in your company maven report. Compile your project, and see what happen. Only good things can happens XD

Jens

unread,
May 30, 2016, 4:16:56 PM5/30/16
to GWT Users

I said this many times but... I strongly recommend that you create your own releases. This is what we have been doing for years...

Our company also does this for years, although we don't have a fixed schedule. We pull GWT from trunk if we think there are enough commits worth doing so, then apply some custom patches and use it for our projects. Usually we check http://build.gwtproject.org for builds that passed all tests and choose one of the corresponding commits to build our custom GWT from. This check could also be automated because of Jenkins REST API.

-- J.

NGdeM

unread,
May 30, 2016, 6:39:48 PM5/30/16
to GWT Users
Hi,

And thanks for the suggestion.
Something I will definitely try out.
However, I am not sure how practical this approach actually is once you depend on third party gwt libraries that do not keep a release pace matchin your internal nexus GWT 2.8 releases...
Some people seem to be keeping pace with GWT trunk, Vaadin being one such example.
I am not so sure that is a gold standard though.

In any case, I believe your approach is acceptable if you own most of the code compiled by gwt.

By the way, out of curiosity, why the main build system for GWT still ant?
This reminds of Mojarra, also still built by ant.

Kind regards.

Frank

unread,
May 31, 2016, 2:40:20 AM5/31/16
to GWT Users
I am with NGdeM on this one.
Just make a lot more smaller releases. This will give a better impression of the state of the GWT project.

I am aware you can create your own builds. But it is much better to do a lot more official releases for the state of the project.

steve Zara

unread,
May 31, 2016, 3:26:27 PM5/31/16
to google-we...@googlegroups.com
I recall a patch to 2.6 (I think) that allowed Java 8 syntax.  If I remember right this was available more than a year ago.  This would be the equivalent of the 'retrolamba' capability that is widely used to allow Java 8 syntax with the Java 7 runtimes on Android.  

An official 2.7.1 release with that patch would, I am sure, be very welcome and provide the great advantages that lambdas have for event-driven and responsive client development.
--
You received this message because you are subscribed to a topic in the Google Groups "GWT Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-web-toolkit/4ISY79wAq04/unsubscribe.
To unsubscribe from this group and all its topics, send an email to google-web-tool...@googlegroups.com.
To post to this group, send email to google-we...@googlegroups.com.

mark kevin ringor

unread,
Jun 2, 2016, 4:51:53 AM6/2/16
to GWT Users
https://www.youtube.com/watch?v=CElykwDVrBc
Here is a video about GWT 2.8

steve Zara

unread,
Jun 6, 2016, 8:25:12 PM6/6/16
to GWT Users
That is a great conversation which really gives me confidence in the future of GWT.  Thanks for posting.
Reply all
Reply to author
Forward
0 new messages