Elemental2:1.0.0-beta-2 released

338 views
Skip to first unread message

Julien Dramaix

unread,
Nov 22, 2017, 8:13:29 PM11/22/17
to google-web-tool...@googlegroups.com

The beta version of Elemental2 using the JsInterop specification has been released on Sonatype today and is available on Maven central. This release should be the last beta release and I expect to release the first RC in few weeks.


This release introduces -- among others:

- a better granularity for api with numbers. Config files list APIs using integer instead of double.

- usage of wildcard type for more flexibility.

- support for javascript constructor function

- static factory methods for dictionary type.

Elemental2 is split into small jar files:


Jar file

artifact-id

GWT module

elemental2-core.jar

elemental2-core

elemental2.core.Core

elemental2-promise.jar

elemental2-promise

elemental2.promise.Promise

elemental2-dom.jar

elemental2-dom

elemental2.dom.Dom

elemental2-svg.jar

elemental2-svg

elemental2.svg.Svg

elemental2-webgl.jar

elemental2-webgl

elemental2.webgl.WebGl

elemental2-media.jar

elemental2-media

elemental2.media.Media

elemental2-indexeddb.jar

elemental2-indexeddb

elemental2.indexeddb.IndexedDb

elemental2-webstorage.jar

elemental2-webstorage

elemental2.webstorage.WebStorage



You can try them by downloading the jar files or adding Maven dependencies:


<dependency>

 <groupId>com.google.elemental2</groupId>

 <artifactId>${artifact-id}</artifactId>

 <version>1.0.0-beta-2</version>

</dependency>


Then inherit the right gwt module in your gwt.xml file.


This beta version works only with the latest HEAD_SNAPSHOT release of GWT.


Don’t hesitate to report any bugs, issues, concerns you have on the github bug tracker.


Important note: This is a beta releases and future updates (up until the final release) may break code!  


-Julien

Colin Alworth

unread,
Nov 22, 2017, 8:57:11 PM11/22/17
to GWT Contributors
It looks like the poms weren't correctly updated - they still depend on jsinterop-base 1.0.0-beta-1, tickling https://github.com/google/elemental2/issues/20 again. The gwt2 compiler fails on this with this sort of error:
[INFO]    [ERROR] Errors in 'jar:file:/Users/colin/.m2/repository/com/google/elemental2/elemental2-dom/1.0.0-beta-2/elemental2-dom-1.0.0-beta-2.jar!/elemental2/dom/Element.java'
[INFO]       [ERROR] Line 260: The method asString(Element.ReplaceWithNodesUnionType) is undefined for the type Js
[INFO]       [ERROR] Line 303: The method asBoolean(Element.ScrollIntoViewTopUnionType) is undefined for the type Js
[INFO]       [ERROR] Line 326: The method asBoolean(Element.SetAttributeNSValueUnionType) is undefined for the type Js
[INFO]       [ERROR] Line 331: The method asDouble(Element.SetAttributeNSValueUnionType) is undefined for the type Js
[INFO]       [ERROR] Line 336: The method asString(Element.SetAttributeNSValueUnionType) is undefined for the type Js
[INFO]       [ERROR] Line 364: The method asBoolean(Element.SetAttributeValueUnionType) is undefined for the type Js
[INFO]       [ERROR] Line 369: The method asDouble(Element.SetAttributeValueUnionType) is undefined for the type Js
[INFO]       [ERROR] Line 374: The method asString(Element.SetAttributeValueUnionType) is undefined for the type Js

Simple workaround, manually add excludes on jsinterop-base, and inherit the correct version in your project:
    <dependency>
     
<groupId>com.google.elemental2</groupId>
     
<artifactId>elemental2-dom</artifactId>
     
<version>1.0.0-beta-2</version>
     
<exclusions>
       
<exclusion>
         
<groupId>com.google.jsinterop</groupId>
         
<artifactId>base</artifactId>
       
</exclusion>
     
</exclusions>
   
</dependency>
   
<dependency>
     
<groupId>com.google.jsinterop</groupId>
     
<artifactId>base</artifactId>
     
<version>1.0.0-beta-3</version>
   
</dependency>

Julien, if you do happen to release an updated beta to solve this, perhaps also update jsinterop-annotations to 1.0.2, the version that was released with GWT 2.8.2.

Julien Dramaix

unread,
Nov 22, 2017, 10:45:28 PM11/22/17
to google-web-tool...@googlegroups.com
Thanks for this feedback Colin. I'll update the pom accordingly and do a beta-3 release on Tuesday. 

Julien

--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/0860d34a-fca3-4bdd-bde2-e467f8f0bb7c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Slava Pankov

unread,
Nov 27, 2017, 9:54:00 PM11/27/17
to GWT Contributors
So it's going to be compatible with GWT 2.8.2 ?
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-contributors+unsubscribe@googlegroups.com.

Thomas Broyer

unread,
Nov 28, 2017, 1:49:41 AM11/28/17
to GWT Contributors
Well, it is already.

Hristo Stoyanov

unread,
Dec 3, 2017, 8:28:24 PM12/3/17
to GWT Contributors
Hm ... Julien states it only works with the latest get head snapshot, maybe not 2.8.2? Also, seems like beta-3 with Colin's findings was never pushed out to maven?

Colin Alworth

unread,
Dec 4, 2017, 11:20:56 AM12/4/17
to google-web-tool...@googlegroups.com
com.google.jsinterop:base:1.0.0-beta-3 was released to maven central on
nov 10:
http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.google.jsinterop%22%20AND%20a%3A%22base%22

--
Colin Alworth
co...@colinalworth.com
> --
> You received this message because you are subscribed to the Google Groups
> "GWT Contributors" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to google-web-toolkit-co...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-web-toolkit-contributors/214ed3ca-ddf7-46e4-a588-09ff28d731fc%40googlegroups.com.

Goktug Gokdogan

unread,
Dec 4, 2017, 9:55:18 PM12/4/17
to google-web-toolkit-contributors, Julien Dramaix
+dramaix

IIRC, Elemental2 beta should only work with GWT head snapshot.

On Mon, Dec 4, 2017 at 8:20 AM, Colin Alworth <co...@colinalworth.com> wrote:
com.google.jsinterop:base:1.0.0-beta-3 was released to maven central on
nov 10:
http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.google.jsinterop%22%20AND%20a%3A%22base%22

--
  Colin Alworth
  co...@colinalworth.com

On Sun, Dec 3, 2017, at 07:28 PM, Hristo Stoyanov wrote:
> Hm ... Julien states it only works with the latest get head snapshot,
> maybe not 2.8.2? Also, seems like beta-3 with Colin's findings was never
> pushed out to maven?
>
> --
> You received this message because you are subscribed to the Google Groups
> "GWT Contributors" group.
> To unsubscribe from this group and stop receiving emails from it, send an
--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.

Thomas Broyer

unread,
Dec 5, 2017, 2:08:17 AM12/5/17
to GWT Contributors
There must be some cases where it requires the current head, but so far I haven't had any issue with 2.8.2.

Julien Dramaix

unread,
Dec 5, 2017, 12:54:28 PM12/5/17
to google-web-tool...@googlegroups.com
I've released a Elemental2:1.0.0-beta-3 yesterday in order to fix the maven issue.

As usual, elemental2 is split into small jar files:

<version>1.0.0-beta-3</version>

</dependency>

 

Then inherit the right gwt module in your gwt.xml file.

 

This beta version works only with the latest HEAD_SNAPSHOT release of GWT.

 

Don’t hesitate to report any bugs, issues, concerns you have on the github bug tracker.

 

Important note: This is a beta releases and future updates (up until the final release) may break code!  

 

-Julien


On Wed, Nov 22, 2017 at 5:59 PM Colin Alworth <nilo...@gmail.com> wrote:
--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/0860d34a-fca3-4bdd-bde2-e467f8f0bb7c%40googlegroups.com.

Julien Dramaix

unread,
Dec 5, 2017, 1:49:53 PM12/5/17
to google-web-tool...@googlegroups.com
So I think Thomas is right. 
One of our change in this new release was to rename toString() method on some objects to avoid confusion with java.lang.Object methods.
That broke Elemental with J2CL because java.lang.Object is a JsType in J2CL and we need to lift up some jsinterop restriction to allows user to override an implementation with a native override (something similar to https://gwt-review.googlesource.com/c/gwt/+/20122)
But in GWT, Object is not a JsType and we don't have that problem. So we dont need https://gwt-review.googlesource.com/c/gwt/+/20122 for Elemental in GWT.

The good news is Elemental2:1.0.0-beta-3 is working with the current version of GWT. Sorry for the confusion.

On Mon, Dec 4, 2017 at 11:08 PM Thomas Broyer <t.br...@gmail.com> wrote:
There must be some cases where it requires the current head, but so far I haven't had any issue with 2.8.2.

--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/bb66fed8-82a5-4b80-a36c-c223578d7e8c%40googlegroups.com.

Julien Dramaix

unread,
Dec 5, 2017, 1:51:42 PM12/5/17
to google-web-tool...@googlegroups.com
Correction of my previous email: Elemental2:1.0.0-beta-3 is working with the current version of GWT. You don't need to use the HEAD_SNAPSHOT release of GWT.

Sorry for the confusion.

-Julien

Slava Pankov

unread,
Dec 5, 2017, 1:53:28 PM12/5/17
to GWT Contributors
Why and what for "latest HEAD_SNAPSHOT release of GWT" is requered?
I don't see any "serious" changes on GWT github comparing with 2.8.2
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-contributors+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages