[ANN] (Unofficial) GWT 2.8.2-v20191108 release

993 views
Skip to first unread message

Peter Donald

unread,
Nov 10, 2019, 10:20:20 PM11/10/19
to GWT Mailing List
GWT is a development toolkit for building and optimizing complex
browser-based applications. Its goal is to enable productive
development of high-performance web applications without the
developer having to be an expert in browser quirks,
XMLHttpRequest, and JavaScript. It’s open-source, completely
free, and used by thousands of developers around the world.

https://github.com/gwtproject/gwt

This is an unofficial release to Maven Central with the groupId
prefixed with "org.realityforge.". The intent is to get the current
version of GWT into more people's hands earlier. Please don't bug
the GWT project. Versions are released on demand.

The one significant difference in the way that it has been packaged
is to release the jsinterop-annotations artifact with the coordinate

org.realityforge.com.google.jsinterop:jsinterop-annotations:jar:2.8.2-v20191108

For most Maven users, it should be sufficient to update your
dependency declarations to something like:

    <dependency>
      <groupId>org.realityforge.com.google.gwt</groupId>
      <artifactId>gwt-user</artifactId>
      <version>2.8.2-v20191108</version>
    </dependency>
    <dependency>
      <groupId>org.realityforge.com.google.gwt</groupId>
      <artifactId>gwt-dev</artifactId>
      <version>2.8.2-v20191108</version>
    </dependency>

Hope this helps,

Peter Donald

Juan Pablo Gardella

unread,
Nov 11, 2019, 6:45:50 AM11/11/19
to GWT Users
Thanks!

--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-tool...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/CACiKNc69sWBoc%3DsbNjRfNU9jwhMGcD7uRhe4THpXE%3DfBUMypDw%40mail.gmail.com.

Michael Conrad

unread,
Nov 12, 2019, 1:26:37 PM11/12/19
to google-we...@googlegroups.com
Is there a release notes link?

Filipe Sousa

unread,
Nov 12, 2019, 5:27:39 PM11/12/19
to GWT Users
No release notes but you can find some info https://gwt-review.googlesource.com/q/status:merged
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsub...@googlegroups.com.

Nick Stolwijk

unread,
Dec 2, 2019, 2:01:05 PM12/2/19
to GWT Users
Thanks.

I was able to use them in my Maven build. Only my IDE, IntelliJ doesn't pick them up. Do you if it is possible to use these as the compiler in IntelliJ?

With regards,

Nick S.

Peter Donald

unread,
Dec 3, 2019, 6:14:32 AM12/3/19
to GWT Mailing List
We use a different build tool but it works with this version of GWT. I don't use Maven so not sure how it is normally integrated. However, to configure it manually you can go to "Project Structure" dialog then "Project Settings / Facets / Default" section and set "Path to GWT installation directory" to something like "/Users/peter/.m2/repository/org/realityforge/com/google/gwt/gwt-dev/2.8.2-v20191108" and this will be picked up by any GWT facets and thus work in IDE.

HTH

--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-tool...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/313e9b2b-886f-4848-80ee-2c5deff39815%40googlegroups.com.


--
Cheers,

Peter Donald
Message has been deleted

Hristo Stoyanov

unread,
Jan 7, 2020, 8:37:47 PM1/7/20
to GWT Users
Hi Peter,
I tried to use your GWT distro, and although I see that I get the right artifacts on my classpath:

default - Configuration for default artifacts.
+--- com.peruncs.gwt:gwt-utils:0.0.6
+--- com.peruncs.gwt:gwt-stripe:0.0.6
|    \--- com.peruncs.gwt:gwt-utils:0.0.6
+--- com.peruncs.gwt:gwt-uikit:0.0.6
|    \--- com.peruncs.gwt:gwt-utils:0.0.6
+--- com.peruncs.gwt:gwt-jwt:0.0.6
|    +--- com.google.elemental2:elemental2-core:2.25 -> org.realityforge.com.google.elemental2:elemental2-core:2.25
|    |    +--- com.google.jsinterop:jsinterop-annotations:1.0.2 -> org.realityforge.com.google.jsinterop:jsinterop-annotations:2.8.2-v20191108
|    |    +--- org.realityforge.com.google.jsinterop:base:1.0.0-b2-e6d791f
|    |    |    \--- com.google.jsinterop:jsinterop-annotations:1.0.2 -> org.realityforge.com.google.jsinterop:jsinterop-annotations:2.8.2-v20191108
|    |    \--- org.realityforge.com.google.elemental2:elemental2-promise:2.25
|    |         +--- com.google.jsinterop:jsinterop-annotations:1.0.2 -> org.realityforge.com.google.jsinterop:jsinterop-annotations:2.8.2-v20191108
|    |         \--- org.realityforge.com.google.jsinterop:base:1.0.0-b2-e6d791f (*)
|    +--- com.google.elemental2:elemental2-dom:2.25 -> org.realityforge.com.google.elemental2:elemental2-dom:2.25
|    |    +--- com.google.jsinterop:jsinterop-annotations:1.0.2 -> org.realityforge.com.google.jsinterop:jsinterop-annotations:2.8.2-v20191108
|    |    +--- org.realityforge.com.google.jsinterop:base:1.0.0-b2-e6d791f (*)
|    |    +--- org.realityforge.com.google.elemental2:elemental2-core:2.25 (*)
|    |    \--- org.realityforge.com.google.elemental2:elemental2-promise:2.25 (*)
|    \--- com.google.elemental2:elemental2-webstorage:2.25 -> org.realityforge.com.google.elemental2:elemental2-webstorage:2.25
|         +--- com.google.jsinterop:jsinterop-annotations:1.0.2 -> org.realityforge.com.google.jsinterop:jsinterop-annotations:2.8.2-v20191108
|         +--- org.realityforge.com.google.jsinterop:base:1.0.0-b2-e6d791f (*)
|         +--- org.realityforge.com.google.elemental2:elemental2-core:2.25 (*)
|         \--- org.realityforge.com.google.elemental2:elemental2-dom:2.25 (*)


I think I will need more information on org.realityforge.com.google.jsinterop:base, which you did not specify in your email.


But even then Errai has some issues with generators that I don't understand:

> Task :recres-webapp:gwtCompile
Compiling module com.recres.web.MainDev
   Computing all possible rebind results for 'org.jboss.errai.marshalling.client.api.MarshallerFactory'
      Rebinding org.jboss.errai.marshalling.client.api.MarshallerFactory
         Invoking generator org.jboss.errai.marshalling.rebind.MarshallersGenerator
            Generating Marshallers Bootstrapper...
            [ERROR] Error generating MarshallerFactoryImpl
java.lang.RuntimeException: a new annotation has been introduced (javax.annotation.processing.Generated); you cannot currently introduce new annotations in devmode. Please restart.
at org.jboss.errai.config.rebind.MetaClassBridgeUtil.populateMetaClassFactoryFromTypeOracle(MetaClassBridgeUtil.java:88)
at org.jboss.errai.config.rebind.AbstractAsyncGenerator$2.run(AbstractAsyncGenerator.java:197)
at org.jboss.errai.config.rebind.AsyncGenerationJob.notifyStarting(AsyncGenerationJob.java:86)
at org.jboss.errai.config.rebind.AsyncGenerators.notifyStarting(AsyncGenerators.java:188)
at org.jboss.errai.config.rebind.AsyncGenerators.startAll(AsyncGenerators.java:144)
at org.jboss.errai.config.rebind.AsyncGenerators.getFutureFor(AsyncGenerators.java:55)
at org.jboss.errai.config.rebind.AsyncGenerationJob.submit(AsyncGenerationJob.java:109)
at org.jboss.errai.config.rebind.AbstractAsyncGenerator.startAsyncGeneratorsAndWaitFor(AbstractAsyncGenerator.java:203)
at org.jboss.errai.marshalling.rebind.MarshallersGenerator.generate(MarshallersGenerator.java:75)
at com.google.gwt.core.ext.IncrementalGenerator.generateNonIncrementally(IncrementalGenerator.java:40)
at com.google.gwt.dev.javac.StandardGeneratorContext.runGeneratorIncrementally(StandardGeneratorContext.java:745)
at com.google.gwt.dev.cfg.RuleGenerateWith.realize(RuleGenerateWith.java:103)
at com.google.gwt.dev.shell.StandardRebindOracle$Rebinder.rebind(StandardRebindOracle.java:78)
at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java:262)
at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java:251)
at com.google.gwt.dev.PrecompilationContextCreator$1.getAllPossibleRebindAnswers(PrecompilationContextCreator.java:86)
at com.google.gwt.dev.jjs.impl.UnifyAst$UnifyVisitor.createStaticRebindExpression(UnifyAst.java:519)
at com.google.gwt.dev.jjs.impl.UnifyAst$UnifyVisitor.createRebindExpression(UnifyAst.java:487)
at com.google.gwt.dev.jjs.impl.UnifyAst$UnifyVisitor.maybeHandleMagicMethodCall(UnifyAst.java:415)
at com.google.gwt.dev.jjs.impl.UnifyAst$UnifyVisitor.visit(UnifyAst.java:402)
at com.google.gwt.dev.jjs.ast.JMethodCall.traverse(JMethodCall.java:265)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse(JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:265)
at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:118)
at com.google.gwt.dev.jjs.ast.JCastOperation.traverse(JCastOperation.java:76)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse(JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:265)
at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:118)
at com.google.gwt.dev.jjs.ast.JBinaryOperation.traverse(JBinaryOperation.java:89)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse(JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:265)
at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:118)
at com.google.gwt.dev.jjs.ast.JExpressionStatement.traverse(JExpressionStatement.java:42)
at com.google.gwt.dev.jjs.ast.JModVisitor$ListContext.traverse(JModVisitor.java:88)
at com.google.gwt.dev.jjs.ast.JModVisitor.acceptWithInsertRemove(JModVisitor.java:331)
at com.google.gwt.dev.jjs.ast.JBlock.traverse(JBlock.java:94)
at com.google.gwt.dev.jjs.ast.JModVisitor$ListContext.traverse(JModVisitor.java:88)
at com.google.gwt.dev.jjs.ast.JModVisitor.acceptWithInsertRemove(JModVisitor.java:331)
at com.google.gwt.dev.jjs.ast.JBlock.traverse(JBlock.java:94)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse(JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:139)
at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:135)
at com.google.gwt.dev.jjs.ast.JMethodBody.traverse(JMethodBody.java:83)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse(JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:265)
at com.google.gwt.dev.jjs.ast.JMethod.visitChildren(JMethod.java:786)
at com.google.gwt.dev.jjs.ast.JMethod.traverse(JMethod.java:778)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse(JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept(JModVisitor.java:265)
at com.google.gwt.dev.jjs.impl.UnifyAst.mainLoop(UnifyAst.java:1401)
at com.google.gwt.dev.jjs.impl.UnifyAst.exec(UnifyAst.java:896)
at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.unifyJavaAst(JavaToJavaScriptCompiler.java:1410)
at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.constructJavaAst(JavaToJavaScriptCompiler.java:1222)
at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.precompile(JavaToJavaScriptCompiler.java:1140)
at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.precompile(JavaToJavaScriptCompiler.java:255)
at com.google.gwt.dev.Precompile.precompile(Precompile.java:243)
at com.google.gwt.dev.Precompile.precompile(Precompile.java:190)
at com.google.gwt.dev.Precompile.precompile(Precompile.java:131)
at com.google.gwt.dev.Compiler.compile(Compiler.java:192)
at com.google.gwt.dev.Compiler.compile(Compiler.java:143)
at com.google.gwt.dev.Compiler.compile(Compiler.java:132)
at com.google.gwt.dev.Compiler$1.run(Compiler.java:110)
at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:55)
at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:50)
at com.google.gwt.dev.Compiler.main(Compiler.java:113)
      Rebinding org.jboss.errai.marshalling.client.api.MarshallerFactory
         Invoking generator org.jboss.errai.marshalling.rebind.MarshallersGenerator
            Generating Marshallers Bootstrapper...
   [WARN] For the following type(s), generated source was never committed (did you forget to call commit()?)
      [WARN] org.jboss.errai.marshalling.client.api.MarshallerFactoryImpl
   [ERROR] Could not find org.jboss.errai.marshalling.client.api.MarshallerFactoryImpl in types compiled from source. Is the source glob too strict?
   [ERROR] Errors in 'org/jboss/errai/marshalling/client/api/MarshallerFramework.java'
      [ERROR] Line 46: Rebind result 'org.jboss.errai.marshalling.client.api.MarshallerFactoryImpl' could not be found
   Computing all possible rebind results for 'org.jboss.errai.enterprise.client.jaxrs.JaxrsProxyLoader'
      Rebinding org.jboss.errai.enterprise.client.jaxrs.JaxrsProxyLoader
         Invoking generator org.jboss.errai.enterprise.rebind.JaxrsProxyLoaderGenerator
            [ERROR] Error generating JaxrsProxyLoaderImpl
java.lang.RuntimeException: no generator found for interface: org.jboss.errai.enterprise.client.jaxrs.JaxrsProxyLoader

Peter Donald

unread,
Jan 10, 2020, 12:07:50 AM1/10/20
to GWT Mailing List
On Wed, Jan 8, 2020 at 12:38 PM Hristo Stoyanov <hr.st...@gmail.com> wrote:
Hi Peter,
I tried to use your GWT distro, and although I see that I get the right artifacts on my classpath:

Sorry, I missed this email...

I still use Java8, not Java9+ and don't use Errai. So I am not sure how much help I can be ;)

That said we use elemental2 version 2.27 when using the GWT version 2.8.2-v20191108

This will transitively depend upon the most recently released version of jsinterop-base (with coordinate com.google.jsinterop:base:jar:1.0.0)

So the deps look roughly like

com.google.jsinterop:base:jar:1.0.0
org.realityforge.com.google.jsinterop:jsinterop-annotations:jar:2.8.2-v20191108
com.google.elemental2:elemental2-core:2.27
org.realityforge.com.google.gwt:gwt-user:jar:2.8.2-v20191108


HTH 

--
Cheers,

Peter Donald
Message has been deleted

David Nouls

unread,
Jan 11, 2020, 1:45:14 AM1/11/20
to GWT Users
Has it only been 3 years ? I also don’t understand why dwt devs are so out of touch with their user base. Nobody will take gwt 3 as a serious option. All old GWT apps will have been migrated to other toolkits by the time it gets released.

Why are these incremental changes not officially released ? Is there no trust in the quality of these changes ? Are the unit tests not good enough to  ensure stability ?
On 11 Jan 2020, 03:03 +0100, Hristo Stoyanov <hr.st...@gmail.com>, wrote:
Peter thanks,
The real tragedy here is that 2.8.3 could have been released by now with the small incremental changes and updates like what your packages (and completely separately develop Maven/Gradle plugins for Jacl).
Instead  - the community has been chasing the GWT-over-jacl/GWT 3 pipe-dream for 3 year now, porting dead-end and old GWT APIs to jacl with no end in sight..sigh

--

You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-tool...@googlegroups.com.

Peter Donald

unread,
Jan 11, 2020, 4:35:45 AM1/11/20
to GWT Mailing List
On Sat, Jan 11, 2020 at 5:45 PM David Nouls <david...@gmail.com> wrote:
Has it only been 3 years ? I also don’t understand why dwt devs are so out of touch with their user base. Nobody will take gwt 3 as a serious option. All old GWT apps will have been migrated to other toolkits by the time it gets released.

Why are these incremental changes not officially released ? Is there no trust in the quality of these changes ? Are the unit tests not good enough to  ensure stability ?

I think it is largely because there is no one volunteering to do the work. There are enough organizations that use master of GWT (including google) so it is plenty stable. Google uses GWT master and has no need to package a release. This is largely why I ended up packaging a release.

--
Cheers,

Peter Donald

Alexandre Schmit

unread,
Jan 14, 2020, 4:29:09 AM1/14/20
to GWT Users
Hello,
This version is unofficial, why? And what is the code source base?

Thanks

Peter Donald

unread,
Jan 14, 2020, 4:08:25 PM1/14/20
to GWT Mailing List
On Tue, Jan 14, 2020 at 8:29 PM Alexandre Schmit <drpet...@gmail.com> wrote:
This version is unofficial, why?

Because I am not on the GWT team and did not go through the release process (which mostly involves making sure all examples work)
 
And what is the code source base?

It is just the last successful build on the master branch of the official GWT repository on the date that the release occurred.

--
Cheers,

Peter Donald
Reply all
Reply to author
Forward
0 new messages