Nice, thanks John. Did you have a chance to test it with Gradle? 2016-09-29 17:21 GMT+02:00 John Wagenleitner <john.wagenleit...@gmail.com>:
> On Wed, Sep 28, 2016 at 11:35 PM, Cédric Champeau < > cedric.champ...@gmail.com> wrote: > >> Ah that's annoying. We had to do this to workaround memory leaks with >> Groovy and Java 7 (and the name states). This change basically means that >> users will start seeing errors if they upgrade Groovy. Is it on `master` or >> 2.4.8? I would consider this a blocker for the release. >> > > > It was on master and 2_4_X. A workaround has been since committed [1] > that restores compatibility and now projects build with 2.4.8-SNAPSHOT. > > > [1] https://github.com/apache/groovy/commit/ > 82c9d20a160c7e4f59630f163a68df82f5e0eba4 > > > >> >> 2016-09-19 1:49 GMT+02:00 John Wagenleitner <john.wagenleit...@gmail.com> >> : >> >>> A recent commit [1] to ClassInfo changed a private field from a Class to >>> a WeakReference<Class> (to address memory leaks). In testing a project >>> with the latest snapshot as a dependency, the compileGroovy task fails [2] >>> because that field is referenced in an internal Gradle >>> class LeakyOnJava7GroovySystemLoader [3]. >>> >>> I haven't reported it yet on the Gradle forums yet, thought I'd post >>> here first since I know there's some Gradle folks on here to see what you >>> thought would be the best way to approach this (i.e., report, revert our >>> change, etc.). >>> >>> >>> [1] https://github.com/apache/groovy/commit/a8fb776023253ebc >>> 2da35538f25eccd7d59997ed >>> >>> [2] > Could not shut down the Groovy system for >>> org.gradle.internal.classloader.VisitableURLClassLoader@69048911 >>> .... >>> .... >>> Caused by: java.lang.ClassCastException: java.lang.ref.WeakReference >>> cannot be cast to java.lang.Class >>> at org.gradle.api.internal.classloading.LeakyOnJava7GroovySyste >>> mLoader.shutdown(LeakyOnJava7GroovySystemLoader.java:74) >>> >>> [3] https://github.com/gradle/gradle/blob/711f64233b1b3ed312 >>> dee00f1215e2609ce41210/subprojects/core/src/main/java/org/ >>> gradle/api/internal/classloading/LeakyOnJava7GroovySystemLoader.java#L74 >>> >>> >> >