Friday, May 29, 2020

Re: GWTC 2.9.0 has problems compiling my generics

Log of the error in our project:
   Tracing compile failure path for type 'org.waveprotocol.wave.model.supplement.WaveletBasedSupplement'
     
[ERROR] Errors in 'jar:file:/home/tbr/.gradle/caches/modules-2/files-2.1/org.waveprotocol.waveinabox/waveinabox-model/0.3-atolcd-1206559-patched-4/4a2a46fd36d1308d05cc705a3ee055401c6cc5e3/waveinabox-model-0.3-atolcd-1206559-patched-4-sources.jar!/org/waveprotocol/wave/model/supplement/WaveletBasedSupplement.java'
         
[ERROR] Line 948: The method createWaveletSeenVersion(DocumentEventRouter<? super E,E,?>) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#88-of ?,capture#90-of ? extends N>)
         
[ERROR] Line 943: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#85-of ?,capture#86-of ?>)
         
[ERROR] Line 953: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#91-of ?,capture#92-of ?>)
         
[ERROR] Line 918: The method createMuted(DocumentEventRouter<? super E,E,?>) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#70-of ?,capture#72-of ? extends N>)
         
[ERROR] Line 933: The method createPendingNotification(DocumentEventRouter<? super E,E,?>) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#79-of ?,capture#81-of ? extends N>)
         
[ERROR] Line 938: The method createWaveletReadState(DocumentEventRouter<? super E,E,?>, ObservablePrimitiveSupplement.Listener) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#82-of ?,capture#84-of ? extends N>, ObservablePrimitiveSupplement.Listener)
         
[ERROR] Line 958: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#94-of ?,capture#95-of ?>)
         
[ERROR] Line 923: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#73-of ?,capture#74-of ?>)
         
[ERROR] Line 913: The method createFolders(DocumentEventRouter<? super E,E,?>) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#67-of ?,capture#69-of ? extends N>)
         
[ERROR] Line 913: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#67-of ?,capture#68-of ?>)
         
[ERROR] Line 938: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#82-of ?,capture#83-of ?>)
         
[ERROR] Line 933: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#79-of ?,capture#80-of ?>)
         
[ERROR] Line 943: The method createWaveletCollapsedState(DocumentEventRouter<? super E,E,?>, ObservablePrimitiveSupplement.Listener) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#85-of ?,capture#87-of ? extends N>, ObservablePrimitiveSupplement.Listener)
         
[ERROR] Line 948: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#88-of ?,capture#89-of ?>)
         
[ERROR] Line 923: The method createCleared(DocumentEventRouter<? super E,E,?>) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#73-of ?,capture#75-of ? extends N>)
         
[ERROR] Line 958: The method createAbuseStore(DocumentEventRouter<? super E,E,?>) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#94-of ?,capture#96-of ? extends N>)
         
[ERROR] Line 953: The method createWaveletNotifiedVersion(DocumentEventRouter<? super E,E,?>) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#91-of ?,capture#93-of ? extends N>)
         
[ERROR] Line 918: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#70-of ?,capture#71-of ?>)
         
[ERROR] Line 963: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#97-of ?,capture#98-of ?>)
         
[ERROR] Line 928: The method create(ObservableMutableDocument<N,E,?>) in the type DefaultDocumentEventRouter is not applicable for the arguments (ObservableMutableDocument<N,capture#76-of ?,capture#77-of ?>)
         
[ERROR] Line 963: The method createGadgetStatesDoc(DocumentEventRouter<? super E,E,?>, ObservablePrimitiveSupplement.Listener) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#97-of ?,capture#99-of ? extends N>, ObservablePrimitiveSupplement.Listener)
         
[ERROR] Line 928: The method createWaveletArchiveState(DocumentEventRouter<? super E,E,?>) in the type WaveletBasedSupplement is not applicable for the arguments (DocumentEventRouter<N,capture#76-of ?,capture#78-of ? extends N>)
   
[ERROR] Aborting compile due to errors in some input files


This is the exact file that doesn't compile (and yes, it's very, very old! not even the latest code from the Wave project)


Fortunately, we're not actually using that class, and the build actually only fails because of -failOnError. This means I can work around the issue by excluding the file with some gwt.xml trick (I want to keep the -failOnError).
But you get an idea (and repro-case, albeit a non-self-contained and quite complex one) of what can cause issues with 2.9.0.

On Friday, May 29, 2020 at 2:07:07 PM UTC+2, David Nouls wrote:
I switched from GWT 2.8.2 to GWT 2.9.0 and I get some GWTC compilation errors when compiling with certain generic constructs.
It compiles fine with JDK11 and in IntelliJ, but GWTC no longer seems to support this:

[INFO] --- gwt-maven-plugin:1.0.0:compile (default-compile) @ cloud.platform.ui.demo-app ---
[INFO] Compiling module com.swift.cloud.platform.ui.demo.Demo
[INFO]    Tracing compile failure path for type 'com.swift.cloud.platform.ui.webcomponent.widget.query.QueryEditor'
[INFO]       [ERROR] Errors in 'jar:file:/home/dnouls/liteevolutiontfr/platform/main/ui/webcomponent/target/cloud.platform.ui.webcomponent-0.0.5-SNAPSHOT.jar!/com/swift/cloud/platform/ui/webcomponent/widget/query/QueryEditor.java'
[INFO]          [ERROR] Line 376: The method byKey(IFilterKey<KEY>) in the type QueryConfiguration is not applicable for the arguments (capture#67-of ? extends IFilterKey<?>)
[INFO]    [ERROR] Aborting compile due to errors in some input files


A small piece of the QueryEditor class where this error is reported:

  public void setFilterKeys(Set<? extends IFilterKey<?>> filterKeys) {
    this.allowedFilterKeys = filterKeys.stream().filter(key -> config.byKey(key).isPresent()).collect(Collectors.toCollection(ArrayList::new));

    // sort by label
    allowedFilterKeys.sort(Comparator.comparing(config.getLabels()::getKeyLabel));
  }

This is the method that it is trying to call:
  @SuppressWarnings("unchecked")
  public <KEY, VO, CONFIG extends AbstractCriteria<KEY, VO, CONFIG>> Optional<CONFIG> byKey(IFilterKey<KEY> key) {
    return Optional.ofNullable((CONFIG) byKey.get(key));
  }

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/d95c1609-a424-42fc-9412-5a092c5cf04a%40googlegroups.com.

Re: GWTC 2.9.0 has problems compiling my generics

I changed my maven pom to select 3.20.0 of org.eclipse.jdt:ecj as that seemed to be the only dependency from eclipse.jdt.
But the compilation still failed with the same error.

I also tried 3.21.0 but there the compilation does not seem to ever finish (cpu usage goes to 0%).


On Friday, May 29, 2020 at 4:16:14 PM UTC+2, David Nouls wrote:
I don't have access to eclipse in my work environment - not allowed. 

On Friday, May 29, 2020 at 3:02:00 PM UTC+2, Jens wrote:
So the Eclipse JDT version GWT uses has a generics bug then. Have you tried open the project/code in Eclipse to see if Eclipse complains as well? If Eclipse does not complain then it is probably fixed and we can likely just upgrade JDT again in GWT.

-- J.

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/2813517e-37db-4cc2-8dde-6b14cb6a6eee%40googlegroups.com.

Re: Issue with GWT 2.9.0 and Annotations/Predicates emulation

Sorry, I created a different topic since I did not want to mix 2 problems in one group chat.

On Friday, May 29, 2020 at 4:44:46 PM UTC+2, Colin Alworth wrote:
Whoops, sorry, I see it in the other thread "https://groups.google.com/d/topic/google-web-toolkit/aCWkpXWVsD4/discussion".

On Friday, May 29, 2020 at 9:43:36 AM UTC-5, Colin Alworth wrote:
We did see type inference issues in earlier builds of the JDT version that GWT uses, but after an update was done we thought that the issues were resolved.

Can you give an example so we can check to see if JDT has handled this in a later update that we can migrate to?

On Friday, May 29, 2020 at 9:21:54 AM UTC-5, Thomas Broyer wrote:

On Friday, May 29, 2020 at 1:55:42 PM UTC+2, David Nouls wrote:

Now I have a second problem, this time with some generics that is accepted by javac or IntelliJ but GWTC seems to not support it.

Same here (on a third-party lib that hasn't been maintained for nearly 2 years 😭)

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/b600dbc8-50b2-40f3-b38e-3a326f118bd0%40googlegroups.com.

Re: Issue with GWT 2.9.0 and Annotations/Predicates emulation

Whoops, sorry, I see it in the other thread "https://groups.google.com/d/topic/google-web-toolkit/aCWkpXWVsD4/discussion".

On Friday, May 29, 2020 at 9:43:36 AM UTC-5, Colin Alworth wrote:
We did see type inference issues in earlier builds of the JDT version that GWT uses, but after an update was done we thought that the issues were resolved.

Can you give an example so we can check to see if JDT has handled this in a later update that we can migrate to?

On Friday, May 29, 2020 at 9:21:54 AM UTC-5, Thomas Broyer wrote:

On Friday, May 29, 2020 at 1:55:42 PM UTC+2, David Nouls wrote:

Now I have a second problem, this time with some generics that is accepted by javac or IntelliJ but GWTC seems to not support it.

Same here (on a third-party lib that hasn't been maintained for nearly 2 years 😭)

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/8abd3efd-c2f0-423d-8a2d-fa062d7f96a1%40googlegroups.com.

Re: Issue with GWT 2.9.0 and Annotations/Predicates emulation

We did see type inference issues in earlier builds of the JDT version that GWT uses, but after an update was done we thought that the issues were resolved.

Can you give an example so we can check to see if JDT has handled this in a later update that we can migrate to?

On Friday, May 29, 2020 at 9:21:54 AM UTC-5, Thomas Broyer wrote:

On Friday, May 29, 2020 at 1:55:42 PM UTC+2, David Nouls wrote:

Now I have a second problem, this time with some generics that is accepted by javac or IntelliJ but GWTC seems to not support it.

Same here (on a third-party lib that hasn't been maintained for nearly 2 years 😭)

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/9297b6cc-dc08-467e-88bd-0f8a61e1a79a%40googlegroups.com.

Re: Issue with GWT 2.9.0 and Annotations/Predicates emulation


On Friday, May 29, 2020 at 1:55:42 PM UTC+2, David Nouls wrote:

Now I have a second problem, this time with some generics that is accepted by javac or IntelliJ but GWTC seems to not support it.

Same here (on a third-party lib that hasn't been maintained for nearly 2 years 😭)

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/653933bc-c3fe-4ac5-9929-79903aa0cec1%40googlegroups.com.

Re: GWTC 2.9.0 has problems compiling my generics

I don't have access to eclipse in my work environment - not allowed. 

On Friday, May 29, 2020 at 3:02:00 PM UTC+2, Jens wrote:
So the Eclipse JDT version GWT uses has a generics bug then. Have you tried open the project/code in Eclipse to see if Eclipse complains as well? If Eclipse does not complain then it is probably fixed and we can likely just upgrade JDT again in GWT.

-- J.

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/7109c742-05c9-4d8b-8dcf-f96e4caa4142%40googlegroups.com.

Re: GWTC 2.9.0 has problems compiling my generics

So the Eclipse JDT version GWT uses has a generics bug then. Have you tried open the project/code in Eclipse to see if Eclipse complains as well? If Eclipse does not complain then it is probably fixed and we can likely just upgrade JDT again in GWT.

-- J.

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/1e4ad874-4106-46e6-ae82-86691ee50951%40googlegroups.com.

Re: GWTC 2.9.0 has problems compiling my generics

Interestingly, I've run into exactly the same issue yesterday, but other way
around: my code compiles in GWT 2.9 (and javac and Eclipse), but not in GWT
2.8.2 which refuses to accept parameters for one method with generics-heavy
signature.

I've even explored the possibility to force GWT 2.8.2 to use newer ecj, but
it's bundled in gwt.dev.jar.

Any help is appreciated.

-gkresic.


On 29. 05. 2020. 14:07, David Nouls wrote:
> I switched from GWT 2.8.2 to GWT 2.9.0 and I get some GWTC compilation
> errors when compiling with certain generic constructs.
> It compiles fine with JDK11 and in IntelliJ, but GWTC no longer seems to
> support this:
>
> [INFO] --- gwt-maven-plugin:1.0.0:compile (default-compile) @
> cloud.platform.ui.demo-app ---
> [INFO] Compiling module com.swift.cloud.platform.ui.demo.Demo
> [INFO]    Tracing compile failure path for type
> 'com.swift.cloud.platform.ui.webcomponent.widget.query.QueryEditor'
> [INFO]       [ERROR] Errors in
> 'jar:file:/home/dnouls/liteevolutiontfr/platform/main/ui/webcomponent/target/cloud.platform.ui.webcomponent-0.0.5-SNAPSHOT.jar!/com/swift/cloud/platform/ui/webcomponent/widget/query/QueryEditor.java'
> [INFO]          [ERROR] Line 376: The method byKey(IFilterKey<KEY>) in the
> type QueryConfiguration is not applicable for the arguments (capture#67-of ?
> extends IFilterKey<?>)
> [INFO]    [ERROR] Aborting compile due to errors in some input files
>
>
> A small piece of the QueryEditor class where this error is reported:
>
>   public void setFilterKeys(Set<? extends IFilterKey<?>> filterKeys) {
>     this.allowedFilterKeys = filterKeys.stream().filter(key ->
> config.byKey(key).isPresent()).collect(Collectors.toCollection(ArrayList::new));
>
>     // sort by label
>
> allowedFilterKeys.sort(Comparator.comparing(config.getLabels()::getKeyLabel));
>   }
>
> This is the method that it is trying to call:
>   @SuppressWarnings("unchecked")
>   public <KEY, VO, CONFIG extends AbstractCriteria<KEY, VO, CONFIG>>
> Optional<CONFIG> byKey(IFilterKey<KEY> key) {
>     return Optional.ofNullable((CONFIG) byKey.get(key));
>   }
>
> --
> 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-toolkit+unsubscribe@googlegroups.com
> <mailto:google-web-toolkit+unsubscribe@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-web-toolkit/011da579-79ee-4bf2-946f-93e095d0c58d%40googlegroups.com
> <https://groups.google.com/d/msgid/google-web-toolkit/011da579-79ee-4bf2-946f-93e095d0c58d%40googlegroups.com?utm_medium=email&utm_source=footer>.

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/c4ba1317-bac8-9682-022c-3d3e9e0c26fc%40steatoda.com.

GWTC 2.9.0 has problems compiling my generics

I switched from GWT 2.8.2 to GWT 2.9.0 and I get some GWTC compilation errors when compiling with certain generic constructs.
It compiles fine with JDK11 and in IntelliJ, but GWTC no longer seems to support this:

[INFO] --- gwt-maven-plugin:1.0.0:compile (default-compile) @ cloud.platform.ui.demo-app ---
[INFO] Compiling module com.swift.cloud.platform.ui.demo.Demo
[INFO]    Tracing compile failure path for type 'com.swift.cloud.platform.ui.webcomponent.widget.query.QueryEditor'
[INFO]       [ERROR] Errors in 'jar:file:/home/dnouls/liteevolutiontfr/platform/main/ui/webcomponent/target/cloud.platform.ui.webcomponent-0.0.5-SNAPSHOT.jar!/com/swift/cloud/platform/ui/webcomponent/widget/query/QueryEditor.java'
[INFO]          [ERROR] Line 376: The method byKey(IFilterKey<KEY>) in the type QueryConfiguration is not applicable for the arguments (capture#67-of ? extends IFilterKey<?>)
[INFO]    [ERROR] Aborting compile due to errors in some input files


A small piece of the QueryEditor class where this error is reported:

  public void setFilterKeys(Set<? extends IFilterKey<?>> filterKeys) {
    this.allowedFilterKeys = filterKeys.stream().filter(key -> config.byKey(key).isPresent()).collect(Collectors.toCollection(ArrayList::new));

    // sort by label
    allowedFilterKeys.sort(Comparator.comparing(config.getLabels()::getKeyLabel));
  }

This is the method that it is trying to call:
  @SuppressWarnings("unchecked")
  public <KEY, VO, CONFIG extends AbstractCriteria<KEY, VO, CONFIG>> Optional<CONFIG> byKey(IFilterKey<KEY> key) {
    return Optional.ofNullable((CONFIG) byKey.get(key));
  }

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/011da579-79ee-4bf2-946f-93e095d0c58d%40googlegroups.com.

Re: Issue with GWT 2.9.0 and Annotations/Predicates emulation

I was too quick to declare victory. 

I did not realize that I was no longer building with GWT 2.9.0 due to a bad merge my pom was overwritten with 2.8.2 again.

But what you just wrote helped indeed. I was still using jsinterop-base 1.0.0-RC1 and jsinterop-annotations 1.0.0.

Thanks for the help once more. Now I have a second problem, this time with some generics that is accepted by javac or IntelliJ but GWTC seems to not support it.


On Thursday, May 28, 2020 at 8:25:37 PM UTC+2, Colin Alworth wrote:
Glad you solved yours! As another update, we've seen two other cases of something that looks sort of similar to this.

In one instance, there was a dependency in the project of an old version of jsinterop-annotations, instead of the expected 2.0.0 release.

In the other instance, the project was creating a massive "reflection cache" of all annotations - the two fixes are to either exclude the jsinterop annotations from the cache (abbreviated rant: a cache like this should be based on a whitelist, not a blacklist), or provide sources and a .gwt.xml file for the annotations.

-Colin

On Thursday, May 28, 2020 at 1:03:48 PM UTC-5, David Nouls wrote:
Strange, just retried today and now the compile worked properly.

Thanks for the support!
On 19 May 2020, 16:41 +0200, Colin Alworth <nilo...@gmail.com>, wrote:
Nothing should have changed here as far as I am aware - GWT itself continues to have emulation for Annotation, Enum, etc (Predicate doesnt seem to be listed in your error)

One change was made in .gwt.xml files with their inherits - the jsinterop-annotations jar no longer contains a .gwt.xml file, and so Core.gwt.xml no longer references it (nor did it need to to begin with).

Are you compiling with -strict, and if so, is this the entire log?

I just pulled https://github.com/nmorel/gwt-jackson/ and updated it to use gwt 2.9, and it seems to run its tests cleanly for the main gwt-jackson package, and after I also update guava, the whole build passes:
[INFO] Reactor Summary for gwt-jackson :: Extensions :: Guava 0.15.5-SNAPSHOT:
[INFO]
[INFO] gwt-jackson :: Extensions :: Guava ................. SUCCESS [ 35.796 s]
[INFO] gwt-jackson :: Extensions :: Objectify ............. SUCCESS [ 27.423 s]
[INFO] gwt-jackson :: Extensions :: Remote Logging ........ SUCCESS [ 22.288 s]
[INFO] gwt-jackson :: Examples ............................ SUCCESS [  0.241 s]
[INFO] gwt-jackson :: Examples :: Minimal ................. SUCCESS [ 11.884 s]
[INFO] gwt-jackson :: Examples :: Hello World ............. SUCCESS [ 15.610 s]
[INFO] gwt-jackson :: Examples :: GWTP .................... SUCCESS [ 17.687 s]
[INFO] gwt-jackson :: Examples :: Requestor ............... SUCCESS [ 19.848 s]
[INFO] gwt-jackson :: Examples :: RestyGWT ................ SUCCESS [ 16.277 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  02:47 min
[INFO] Finished at: 2020-05-19T09:36:53-05:00
[INFO] ------------------------------------------------------------------------


Changes I made to run this:

diff --git a/extensions/guava/pom.xml b/extensions/guava/pom.xml
index 99e928a..739b629 100644
--- a/extensions/guava/pom.xml
+++ b/extensions/guava/pom.xml
@@ -29,7 +29,7 @@
   <description>Extension to support Guava types like Optional or ImmutableSet</description>
 
   <properties>
-    <guava.version>19.0</guava.version>
+    <guava.version>29.0-jre</guava.version>
   </properties>
 
   <dependencies>
diff --git a/pom.xml b/pom.xml
index 8eb1f1d..6250ad4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -86,10 +86,10 @@
     <maven-deploy-plugin.version>2.8.1</maven-deploy-plugin.version>
     <maven-jar-plugin.version>2.4</maven-jar-plugin.version>
     <maven-javadoc-plugin.version>2.10.4</maven-javadoc-plugin.version>
-    <gwt-maven-plugin.version>2.7.0</gwt-maven-plugin.version>
+    <gwt-maven-plugin.version>2.8.2</gwt-maven-plugin.version>
 
     <!-- Dependencies version -->
-    <gwt.version>2.7.0</gwt.version>
+    <gwt.version>2.9.0</gwt.version>
     <jackson.version>2.10.1</jackson.version>
     <javapoet.version>1.0.0</javapoet.version>
     <junit.version>4.12</junit.version>
@@ -201,6 +201,7 @@
             <testTimeOut>1000</testTimeOut>
             <!--Only required due to a GWT DateTimeFormat issue see https://github.com/gwtproject/gwt/issues/8259-->
             <extraJvmArgs>-Duser.timezone=UTC</extraJvmArgs>
+            <sourceLevel>1.8</sourceLevel>
           </configuration>
           <dependencies>
             <dependency>


So I don't think this is intrinsic to GWT 2.9.0 or gwt-jackson - can you verify that gwt-jackson itself doesn't have this issue for you?

The one "compiler mysteriously breaks" issue I'm aware of in GWT 2.9.0 is to do with gwt-unitCache not being removed when you change sourceLevel, but perhaps there is another case we are missing - you could try deleting this directory (it usually lives next to the war/ dir) and see if this resolves your issue. If so, we'd like a little more detail on how you ran your project before/after so that we can more completely solve this.

-Colin

On Saturday, May 16, 2020 at 5:00:54 AM UTC-5, David Nouls wrote:
Compiling module com.swift.cloud.platform.multitenant.event.SerializationTest.JUnit
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotation
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotation'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotationsInside
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotationsInside'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnyGetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnyGetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnySetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnySetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator
      Found type 'com.fasterxml.jackson.annotation.JsonCreator'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator.Mode
      Found type 'com.fasterxml.jackson.annotation.JsonCreator.Mode'
         [ERROR] Unable to find class java/lang/Enum
Compiling module com.swift.cloud.platform.multitenant.event.SerializationTest.JUnit
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotation
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotation'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotationsInside
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotationsInside'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnyGetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnyGetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnySetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnySetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator
      Found type 'com.fasterxml.jackson.annotation.JsonCreator'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator.Mode
      Found type 'com.fasterxml.jackson.annotation.JsonCreator.Mode'
         [ERROR] Unable to find class java/lang/Enum
Compiling module com.swift.cloud.platform.multitenant.event.SerializationTest.JUnit
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotation
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotation'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotationsInside
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotationsInside'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnyGetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnyGetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnySetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnySetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator
      Found type 'com.fasterxml.jackson.annotation.JsonCreator'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator.Mode
      Found type 'com.fasterxml.jackson.annotation.JsonCreator.Mode'
         [ERROR] Unable to find class java/lang/Enum


--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/cde29480-a9fc-4deb-9e07-c17429dd4a0b%40googlegroups.com.

Thursday, May 28, 2020

Re: Issue with GWT 2.9.0 and Annotations/Predicates emulation

Glad you solved yours! As another update, we've seen two other cases of something that looks sort of similar to this.

In one instance, there was a dependency in the project of an old version of jsinterop-annotations, instead of the expected 2.0.0 release.

In the other instance, the project was creating a massive "reflection cache" of all annotations - the two fixes are to either exclude the jsinterop annotations from the cache (abbreviated rant: a cache like this should be based on a whitelist, not a blacklist), or provide sources and a .gwt.xml file for the annotations.

-Colin

On Thursday, May 28, 2020 at 1:03:48 PM UTC-5, David Nouls wrote:
Strange, just retried today and now the compile worked properly.

Thanks for the support!
On 19 May 2020, 16:41 +0200, Colin Alworth <niloc132@gmail.com>, wrote:
Nothing should have changed here as far as I am aware - GWT itself continues to have emulation for Annotation, Enum, etc (Predicate doesnt seem to be listed in your error)

One change was made in .gwt.xml files with their inherits - the jsinterop-annotations jar no longer contains a .gwt.xml file, and so Core.gwt.xml no longer references it (nor did it need to to begin with).

Are you compiling with -strict, and if so, is this the entire log?

I just pulled https://github.com/nmorel/gwt-jackson/ and updated it to use gwt 2.9, and it seems to run its tests cleanly for the main gwt-jackson package, and after I also update guava, the whole build passes:
[INFO] Reactor Summary for gwt-jackson :: Extensions :: Guava 0.15.5-SNAPSHOT:
[INFO]
[INFO] gwt-jackson :: Extensions :: Guava ................. SUCCESS [ 35.796 s]
[INFO] gwt-jackson :: Extensions :: Objectify ............. SUCCESS [ 27.423 s]
[INFO] gwt-jackson :: Extensions :: Remote Logging ........ SUCCESS [ 22.288 s]
[INFO] gwt-jackson :: Examples ............................ SUCCESS [  0.241 s]
[INFO] gwt-jackson :: Examples :: Minimal ................. SUCCESS [ 11.884 s]
[INFO] gwt-jackson :: Examples :: Hello World ............. SUCCESS [ 15.610 s]
[INFO] gwt-jackson :: Examples :: GWTP .................... SUCCESS [ 17.687 s]
[INFO] gwt-jackson :: Examples :: Requestor ............... SUCCESS [ 19.848 s]
[INFO] gwt-jackson :: Examples :: RestyGWT ................ SUCCESS [ 16.277 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  02:47 min
[INFO] Finished at: 2020-05-19T09:36:53-05:00
[INFO] ------------------------------------------------------------------------


Changes I made to run this:

diff --git a/extensions/guava/pom.xml b/extensions/guava/pom.xml
index 99e928a..739b629 100644
--- a/extensions/guava/pom.xml
+++ b/extensions/guava/pom.xml
@@ -29,7 +29,7 @@
   <description>Extension to support Guava types like Optional or ImmutableSet</description>
 
   <properties>
-    <guava.version>19.0</guava.version>
+    <guava.version>29.0-jre</guava.version>
   </properties>
 
   <dependencies>
diff --git a/pom.xml b/pom.xml
index 8eb1f1d..6250ad4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -86,10 +86,10 @@
     <maven-deploy-plugin.version>2.8.1</maven-deploy-plugin.version>
     <maven-jar-plugin.version>2.4</maven-jar-plugin.version>
     <maven-javadoc-plugin.version>2.10.4</maven-javadoc-plugin.version>
-    <gwt-maven-plugin.version>2.7.0</gwt-maven-plugin.version>
+    <gwt-maven-plugin.version>2.8.2</gwt-maven-plugin.version>
 
     <!-- Dependencies version -->
-    <gwt.version>2.7.0</gwt.version>
+    <gwt.version>2.9.0</gwt.version>
     <jackson.version>2.10.1</jackson.version>
     <javapoet.version>1.0.0</javapoet.version>
     <junit.version>4.12</junit.version>
@@ -201,6 +201,7 @@
             <testTimeOut>1000</testTimeOut>
             <!--Only required due to a GWT DateTimeFormat issue see https://github.com/gwtproject/gwt/issues/8259-->
             <extraJvmArgs>-Duser.timezone=UTC</extraJvmArgs>
+            <sourceLevel>1.8</sourceLevel>
           </configuration>
           <dependencies>
             <dependency>


So I don't think this is intrinsic to GWT 2.9.0 or gwt-jackson - can you verify that gwt-jackson itself doesn't have this issue for you?

The one "compiler mysteriously breaks" issue I'm aware of in GWT 2.9.0 is to do with gwt-unitCache not being removed when you change sourceLevel, but perhaps there is another case we are missing - you could try deleting this directory (it usually lives next to the war/ dir) and see if this resolves your issue. If so, we'd like a little more detail on how you ran your project before/after so that we can more completely solve this.

-Colin

On Saturday, May 16, 2020 at 5:00:54 AM UTC-5, David Nouls wrote:
Compiling module com.swift.cloud.platform.multitenant.event.SerializationTest.JUnit
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotation
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotation'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotationsInside
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotationsInside'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnyGetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnyGetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnySetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnySetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator
      Found type 'com.fasterxml.jackson.annotation.JsonCreator'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator.Mode
      Found type 'com.fasterxml.jackson.annotation.JsonCreator.Mode'
         [ERROR] Unable to find class java/lang/Enum
Compiling module com.swift.cloud.platform.multitenant.event.SerializationTest.JUnit
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotation
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotation'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotationsInside
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotationsInside'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnyGetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnyGetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnySetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnySetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator
      Found type 'com.fasterxml.jackson.annotation.JsonCreator'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator.Mode
      Found type 'com.fasterxml.jackson.annotation.JsonCreator.Mode'
         [ERROR] Unable to find class java/lang/Enum
Compiling module com.swift.cloud.platform.multitenant.event.SerializationTest.JUnit
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotation
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotation'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JacksonAnnotationsInside
      Found type 'com.fasterxml.jackson.annotation.JacksonAnnotationsInside'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnyGetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnyGetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonAnySetter
      Found type 'com.fasterxml.jackson.annotation.JsonAnySetter'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator
      Found type 'com.fasterxml.jackson.annotation.JsonCreator'
         [WARN] Unable to resolve interface java/lang/annotation/Annotation
   Resolving com.fasterxml.jackson.annotation.JsonCreator.Mode
      Found type 'com.fasterxml.jackson.annotation.JsonCreator.Mode'
         [ERROR] Unable to find class java/lang/Enum

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/d68d95cb-db98-43ed-97f6-4a1ce5eac1cb%40googlegroups.com.

--
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-toolkit+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/bfba62f7-1a9b-419e-8a2c-fcea5ba3e6fd%40googlegroups.com.