[gwt-contrib] Experimental release of Elemental2

2016-07-02 Thread Paul Stockley
Would it be possible to break the project into a few packages? It would make it 
easier to find things.

-- 
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-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/127fd7d4-56ab-407e-9981-1da8d2d91a91%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Current snapshots failing with JDK 7

2016-07-02 Thread Thomas Broyer
Hi all,

Current snapshots fail with JDK 7:
[INFO] [INFO]Tracing compile failure path for type 
'java.util.Comparator'
[INFO] [INFO]   [ERROR] Errors in 
'jar:file:/home/travis/build/tbroyer/gwt-maven-plugin/target/it-repo/com/google/gwt/gwt-user/2.8.0-SNAPSHOT/gwt-user-2.8.0-SNAPSHOT.jar!/com/google/gwt/emul/java/util/Comparator.java'
[INFO] [INFO]  [ERROR] Line 1: The type 
java.lang.invoke.SerializedLambda cannot be resolved. It is indirectly 
referenced from required .class files

(see https://travis-ci.org/tbroyer/gwt-maven-plugin/jobs/141919077#L410)

Is this because the snaphots are built with JDK 8 
(see http://www.draconianoverlord.com/2014/04/01/jdk-compatibility.html for 
instance) or that we actually no longer support JDK 7 (without noticing it) 
?

-- 
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-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/bb56d241-c198-4bb6-9612-c5bd3ccfd6cc%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Bean Validation

2016-07-02 Thread Thomas Broyer

On Saturday, July 2, 2016 at 11:40:56 PM UTC+2, ManfredTremmel wrote:
>
> I've read in the 2.8rc1 release notes 
>  that JSR 303 Bean 
> Validation in GWT is unmaintaned and marked as deprecated. For me, the 
> client and server side validation is a killer feature and 
> I've already solve the problems I had and also improved the client side 
> bean validation in my gwt-bean-validators 
>  project on 
> github. In three weeks I can invest some time in working into the gwt 
> implementation of bean validation and try to port it to 1.1 api. If you are 
> interested I would also include the improvements of my project into GWT.
> Let me know if you are interested in my help or have any question.
>

We decided (a long time ago) that we wanted to modularize GWT, and move to 
side-projects what could be decoupled. The goal is to spread maintenance to 
more people (hopefully) by reducing the scope of each project, and allowing 
those side-projects to have different release cycles than GWT. This means 
that GWT does not need to wait for some bugs to be fixed or features to be 
added to some parts of the code before a release can be cut, concentrating 
on the compiler and core (emulation, etc.), and projects can release 
without waiting for a GWT release either.

So, if you can contribute some time, it'd be great to be able to move Bean 
Validation to its own project and out of GWT proper (there'd still be some 
javax.validation emulation in GWT proper, at least some interfaces; but 
there may be some work needed to make other GWT features independent of the 
Bean Validation version being used; I think there's some code in Editors or 
Request Factory that implements a javax.validation interface). Then the 
project can live its own life and update to a newer Hibernate Validator, 
etc.
FWIW, JBoss has interest in Bean Validation too, so you may want to get in 
touch with Christian Sadilek.
See https://github.com/gwtproject/gwt/issues/9367 for more on the matter.
FWIW, Putnami PWT also has some form of JSR 303 support, so I suppose 
they'd be interested in, at least, following the changes made to GWT on the 
subject.

In any case, all help is welcome. So, welcome, and thank you in advance for 
your contributions !

-- 
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-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/3e8bdbe1-04dd-4c34-a73c-9658b36e6ec2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [gwt-contrib] Re: Experimental release of Elemental2

2016-07-02 Thread Ignacio Baca Moreno-Torres
+1 to add some type-safe, in my current mini-project (almost 50 lines of
code) there are 5 cast! 2 elements, 2 events and 1 event target... the
event target is mandatory, but the events and elements will be nice to be
type-safe.

On Sat, Jul 2, 2016 at 11:07 PM Manuel Carrasco Moñino 
wrote:

> I'm wondering if it would be possible to have type-safe convenience
> methods for creating elements, so as the user does not have to provide the
> string tag name, nor cast the object, maybe something like :
>
> HTMLButtonElement button = HTMLButtonElement.createElement();
>
> instead of
>
> HTMLButtonElement button = (HTMLButtonElement)
> document.createElement("button");
>
>
>
> El sáb., 2 jul. 2016 a las 4:38, 'Goktug Gokdogan' via GWT Contributors (<
> google-web-toolkit-contributors@googlegroups.com>) escribió:
>
>> Closure extern definition uses a union type here:
>>
>> https://github.com/google/closure-compiler/blob/master/externs/browser/w3c_event.js#L34
>>
>> So it accepts either EventListener interface or a function.
>>
>> When we see a union type, we generate overloads for each type so
>> Elemental should provide overloads that includes both. And it seems like it
>> does. If not please let us know.
>>
>> On Fri, Jul 1, 2016 at 3:39 AM, Jens  wrote:
>>
>>>
>>> Thanks, now makes sense. I get confused with the JsFunction
 JsType(native) because elemental2 has some callbacks as JsFunction and
 others as JsType(native), now an actual elemental2 question; what criteria
 is used to apply JsFunction (ex. elemental2.Node.AddEventListenerCallback)
 instead of JsType (ex. elemental2.JsType)?

>>>
>>> I think its the result of definition of EventTarget.addEventListener():
>>>
>>> *listener - The object that receives a notification (an object that
>>> implements the Event
>>>  interface) when an
>>> event of the specified type occurs. This must be an object implementing the
>>> EventListener
>>>  interface,
>>> or simply a JavaScript function
>>> .*
>>>
>>> The EventListener interface is a defined API and thus a @JsType(isNative
>>> = true) interface has been generated. But to conform to "or simply a
>>> JavaScript function" there is also an AddEventListenerCallback that is a
>>> @JsFunction. Not sure if this distinction has any real value, in a hand
>>> coded elemental2 I would have only created a @JsFunction interface
>>> EventListener
>>>
>>> -- J.
>>>
>>> --
>>> 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-contributors+unsubscr...@googlegroups.com
>>> .
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/google-web-toolkit-contributors/73b36bdb-c496-4768-a221-21fe8b5a437c%40googlegroups.com
>>> 
>>> .
>>>
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
>> 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-contributors+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAN%3DyUA0ZfCbS%2Bnwtre0QuAnhDdLYz%2B3LuzXqD3WqoWqK%3DFe%2BEg%40mail.gmail.com
>> 
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
> --
> 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-contributors+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAM28XAsU1UZgkh3cjG1HPkpRBJfaiEh631fq9WdS_RQg8Z_Leg%40mail.gmail.com
> 
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msg

[gwt-contrib] Bean Validation

2016-07-02 Thread ManfredTremmel
I've read in the 2.8rc1 release notes 
 that JSR 303 Bean 
Validation in GWT is unmaintaned and marked as deprecated. For me, the 
client and server side validation is a killer feature and 
I've already solve the problems I had and also improved the client side 
bean validation in my gwt-bean-validators 
 project on github. 
In three weeks I can invest some time in working into the gwt 
implementation of bean validation and try to port it to 1.1 api. If you are 
interested I would also include the improvements of my project into GWT.
Let me know if you are interested in my help or have any question.

-- 
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-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/886a4ff5-80a0-4cc1-ae7c-6def9d781fdc%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [gwt-contrib] Re: Experimental release of Elemental2

2016-07-02 Thread Manuel Carrasco Moñino
I'm wondering if it would be possible to have type-safe convenience methods
for creating elements, so as the user does not have to provide the string
tag name, nor cast the object, maybe something like :

HTMLButtonElement button = HTMLButtonElement.createElement();

instead of

HTMLButtonElement button = (HTMLButtonElement)
document.createElement("button");



El sáb., 2 jul. 2016 a las 4:38, 'Goktug Gokdogan' via GWT Contributors (<
google-web-toolkit-contributors@googlegroups.com>) escribió:

> Closure extern definition uses a union type here:
>
> https://github.com/google/closure-compiler/blob/master/externs/browser/w3c_event.js#L34
>
> So it accepts either EventListener interface or a function.
>
> When we see a union type, we generate overloads for each type so Elemental
> should provide overloads that includes both. And it seems like it does. If
> not please let us know.
>
> On Fri, Jul 1, 2016 at 3:39 AM, Jens  wrote:
>
>>
>> Thanks, now makes sense. I get confused with the JsFunction
>>> JsType(native) because elemental2 has some callbacks as JsFunction and
>>> others as JsType(native), now an actual elemental2 question; what criteria
>>> is used to apply JsFunction (ex. elemental2.Node.AddEventListenerCallback)
>>> instead of JsType (ex. elemental2.JsType)?
>>>
>>
>> I think its the result of definition of EventTarget.addEventListener():
>>
>> *listener - The object that receives a notification (an object that
>> implements the Event
>>  interface) when an
>> event of the specified type occurs. This must be an object implementing the
>> EventListener
>>  interface,
>> or simply a JavaScript function
>> .*
>>
>> The EventListener interface is a defined API and thus a @JsType(isNative
>> = true) interface has been generated. But to conform to "or simply a
>> JavaScript function" there is also an AddEventListenerCallback that is a
>> @JsFunction. Not sure if this distinction has any real value, in a hand
>> coded elemental2 I would have only created a @JsFunction interface
>> EventListener
>>
>> -- J.
>>
>> --
>> 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-contributors+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/google-web-toolkit-contributors/73b36bdb-c496-4768-a221-21fe8b5a437c%40googlegroups.com
>> 
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> 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-contributors+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAN%3DyUA0ZfCbS%2Bnwtre0QuAnhDdLYz%2B3LuzXqD3WqoWqK%3DFe%2BEg%40mail.gmail.com
> 
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAM28XAsU1UZgkh3cjG1HPkpRBJfaiEh631fq9WdS_RQg8Z_Leg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[gwt-contrib] Re: Compile specific files only

2016-07-02 Thread Ethan Hon


Without any background, the question is how can I add a compiler option so 
>> that the source inside a module is compiled without resolving its 
>> dependency? For example, a module as simple as below
>>
>> 
>>   
>>   
>> 
>>
>> Only the .java files inside utils folder are translated into javascript.
>>
>
>
> Not sure if I understand you. If the code inside the utils folder 
> references a GWT button then the code of the GWT button must be available 
> somehow, otherwise your utils code simply won't work. Given that GWT 
> requires whole world knowledge during compilation the GWT button code is 
> pulled in from the inherited User module (or more specific the indirectly 
> inherited UI module). If you are saying you want to link against some 
> pre-existing GWT button code, then thats not possible and I would assume 
> you would need to write a new compiler instead of just adding a compiler 
> option.
>
> The code for GWT button (using your example) is already available on the 
web (AppInventor site) so that when the code inside utils is plugged in, 
the button should work. This is what I hope to achieve. 

Ok so the compilation requires whole world knowledge. But can we somehow 
(e.g. as simply as adding a compilation option) restrict the output to just 
the javascript of utils? Then the permutations only store the code for 
utils only. I know time may be wasted but let's see if it's even possible.

 

> From what I understand you want some plugin system for AppInventor to 
> circumvent the mentioned "whole world knowledge" requirement of GWT. The 
> usual way to solve this is to have AppInventor publish a JavaScript API 
> using GWT JSNI or JsInterop and then let 3rd party developers write their 
> component mocks against this stable JavaScript API. In general this would 
> also allows 3rd party developers to use something different than GWT to 
> build their component mocks. If done correctly the AppInventor app can then 
> import these 3rd party component mocks at runtime by adding an additional 
> 

[gwt-contrib] Re: Compile specific files only

2016-07-02 Thread Jens


> Without any background, the question is how can I add a compiler option so 
> that the source inside a module is compiled without resolving its 
> dependency? For example, a module as simple as below
>
> 
>   
>   
> 
>
> Only the .java files inside utils folder are translated into javascript.
>


Not sure if I understand you. If the code inside the utils folder 
references a GWT button then the code of the GWT button must be available 
somehow, otherwise your utils code simply won't work. Given that GWT 
requires whole world knowledge during compilation the GWT button code is 
pulled in from the inherited User module (or more specific the indirectly 
inherited UI module). If you are saying you want to link against some 
pre-existing GWT button code, then thats not possible and I would assume 
you would need to write a new compiler instead of just adding a compiler 
option.

>From what I understand you want some plugin system for AppInventor to 
circumvent the mentioned "whole world knowledge" requirement of GWT. The 
usual way to solve this is to have AppInventor publish a JavaScript API 
using GWT JSNI or JsInterop and then let 3rd party developers write their 
component mocks against this stable JavaScript API. In general this would 
also allows 3rd party developers to use something different than GWT to 
build their component mocks. If done correctly the AppInventor app can then 
import these 3rd party component mocks at runtime by adding an additional 

[gwt-contrib] Compile specific files only

2016-07-02 Thread Ethan Hon
Hi guys, 

Without any background, the question is how can I add a compiler option so 
that the source inside a module is compiled without resolving its 
dependency? For example, a module as simple as below


  
  


Only the .java files inside utils folder are translated into javascript.


*Background*I am working on supporting mock components for AppInventor 
's component development kit (aka CDK, link 
). 
Basically, I need to inject javascript representing a mock on-the-fly. But 
before injecting, I need to get hold of what to inject. 

*AppInventor and components*
AppInventor is written with GWT enabling users to edit their apps on the 
web before running on android. What they edit on the web is actually mock 
components, mocking the genuine visible components (e.g. TextBox, Spinner, 
etc) on android. So the mocks are developed with GWT.

*AppInventor and CDK*
Before CDK, all components are developed by the team. CDK allows other 
developers to make and use components. This requires loading necessary code 
at runtime. Currently, only the code of the component on the android side 
can be done so but not the code for the mock. In other word, it now only 
supports components without a mock (aka non-visible components).

*Goal*
To support mocks, we need to know the part of the GWT code that is written 
by the author which will then be injected on-the-fly. So I need to only 
compile those specific files but not all files. That's why I post this 
question. And I want to make use of GWT's compiler for this purpose.

The info above may be over-simplified but it may take very long to explain 
every detail. Let's see if it's already enough.

Thank you very much. Any direction or advice would be appreciated. I am 
running out of solutions. Hope this is the right one.

-- 
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-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/abdde01f-8c0e-45fd-909d-eaa4ae419fcb%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.