Gradle build against Groovy trunk and a new blocker

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Gradle build against Groovy trunk and a new blocker

hans_d
Administrator
At teamcity there is now a Gradle build running against Groovy trunk. Gradle has a decent amount of unit and integration tests. This should improve the feedback for the latest Groovy.


As Groovy is also build at teamcity we have implemented it in the following way. One of Gradle's build configurations has a dependency on a Groovy build configuration. This means this Gradle build configuration gets triggered if there has been a new successful Groovy build. This particular Gradle build then uses the groovy-all jar of the Groovy build instead of groovy-all-1.5.5.

As you can see, the build fails. There are some serious issues. I have filed them as a blocker:


Both tests in the appended code fails with an uncaught exception under 1.6.

- Hans

class G16BugTest extends GroovyTestCase {    void testAssert() {        try {            new G16BugHelper().check()        } catch (AssertionError e) {            // ignore        }    }
    void testCopy() {        def inst = new Copy()        inst.sourceDir = '/Users/hans/tmp/garbage/d1/' as File        inst.targetDir = '/Users/hans/tmp/garbage/d2/' as File        inst.execute()    }}
class G16BugHelper {    void check() {        assert 0 > 1    }}
class Copy {    File sourceDir    File targetDir
    void execute() {       AntBuilder ant = new AntBuilder()        ant.copy(todir: targetDir) {            fileset(dir: sourceDir)        }    }}
testAssert fails with:org.codehaus.groovy.runtime.InvokerInvocationException: java.lang.AssertionError: Expression: (0 > 1) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:743) at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:769) at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:749) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:160) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethod0(ScriptBytecodeAdapter.java:185) at G16BugTest.testAssert(G16BugTest.groovy:6) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)Caused by: java.lang.AssertionError: Expression: (0 > 1) at org.codehaus.groovy.runtime.InvokerHelper.assertFailed(InvokerHelper.java:372) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.assertFailed(ScriptBytecodeAdapter.java:642) at G16BugHelper.check(G16BugTest.groovy:22) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98) ... 26 more

testCopy fails with
org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]} at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:743) at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:769) at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:749) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:160) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethod0(ScriptBytecodeAdapter.java:185) at G16BugTest.testCopy(G16BugTest.groovy:16) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)Caused by: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]} at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:248) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:743) at groovy.lang.Closure.call(Closure.java:292) at groovy.lang.Closure.call(Closure.java:287) at groovy.util.BuilderSupport.doInvokeMethod(BuilderSupport.java:148) at groovy.util.AntBuilder.doInvokeMethod(AntBuilder.java:149) at groovy.util.BuilderSupport.invokeMethod(BuilderSupport.java:64) at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:775) at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:749) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:160) at Copy.execute(G16BugTest.groovy:33) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98) ... 26 moreCaused by: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]} at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:248) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnCurrentN(ScriptBytecodeAdapter.java:76) at Copy$_execute_closure1.doCall(G16BugTest.groovy) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98) ... 43 moreCaused by: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]} at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:743) at org.codehaus.groovy.runtime.InvokerHelper.invokePojoMethod(InvokerHelper.java:757) at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:745) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:160) at Copy.invokeMethod(G16BugTest.groovy) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeOnDelegationObjects(ClosureMetaClass.java:371) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:322) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnCurrentN(ScriptBytecodeAdapter.java:76) at Copy$_execute_closure1.doCall(G16BugTest.groovy:34) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98) ... 52 moreCaused by: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]}

--
Hans Dockter
Gradle Project lead




Reply | Threaded
Open this post in threaded view
|

Re: Gradle build against Groovy trunk and a new blocker

hans_d
Administrator
Sorry, this was meant to be send to groovy-dev not gradle-dev. It is the second time this has happened to me.

- Hans

On Apr 30, 2008, at 9:40 AM, Hans Dockter wrote:
At teamcity there is now a Gradle build running against Groovy trunk. Gradle has a decent amount of unit and integration tests. This should improve the feedback for the latest Groovy.


As Groovy is also build at teamcity we have implemented it in the following way. One of Gradle's build configurations has a dependency on a Groovy build configuration. This means this Gradle build configuration gets triggered if there has been a new successful Groovy build. This particular Gradle build then uses the groovy-all jar of the Groovy build instead of groovy-all-1.5.5.

As you can see, the build fails. There are some serious issues. I have filed them as a blocker:


Both tests in the appended code fails with an uncaught exception under 1.6.

- Hans

class G16BugTest extends GroovyTestCase {    void testAssert() {        try {            new G16BugHelper().check()        } catch (AssertionError e) {            // ignore        }    }
    void testCopy() {        def inst = new Copy()        inst.sourceDir = '/Users/hans/tmp/garbage/d1/' as File        inst.targetDir = '/Users/hans/tmp/garbage/d2/' as File        inst.execute()    }}
class G16BugHelper {    void check() {        assert 0 > 1    }}
class Copy {    File sourceDir    File targetDir
    void execute() {       AntBuilder ant = new AntBuilder()        ant.copy(todir: targetDir) {            fileset(dir: sourceDir)        }    }}
testAssert fails with:org.codehaus.groovy.runtime.InvokerInvocationException: java.lang.AssertionError: Expression: (0 > 1) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:743) at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:769) at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:749) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:160) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethod0(ScriptBytecodeAdapter.java:185) at G16BugTest.testAssert(G16BugTest.groovy:6) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)Caused by: java.lang.AssertionError: Expression: (0 > 1) at org.codehaus.groovy.runtime.InvokerHelper.assertFailed(InvokerHelper.java:372) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.assertFailed(ScriptBytecodeAdapter.java:642) at G16BugHelper.check(G16BugTest.groovy:22) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98) ... 26 more

testCopy fails with
org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]} at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:743) at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:769) at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:749) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:160) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethod0(ScriptBytecodeAdapter.java:185) at G16BugTest.testCopy(G16BugTest.groovy:16) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)Caused by: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]} at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:248) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:743) at groovy.lang.Closure.call(Closure.java:292) at groovy.lang.Closure.call(Closure.java:287) at groovy.util.BuilderSupport.doInvokeMethod(BuilderSupport.java:148) at groovy.util.AntBuilder.doInvokeMethod(AntBuilder.java:149) at groovy.util.BuilderSupport.invokeMethod(BuilderSupport.java:64) at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:775) at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:749) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:160) at Copy.execute(G16BugTest.groovy:33) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98) ... 26 moreCaused by: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]} at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:248) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnCurrentN(ScriptBytecodeAdapter.java:76) at Copy$_execute_closure1.doCall(G16BugTest.groovy) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98) ... 43 moreCaused by: org.codehaus.groovy.runtime.InvokerInvocationException: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]} at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:743) at org.codehaus.groovy.runtime.InvokerHelper.invokePojoMethod(InvokerHelper.java:757) at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:745) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:160) at Copy.invokeMethod(G16BugTest.groovy) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeOnDelegationObjects(ClosureMetaClass.java:371) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:322) at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnCurrentN(ScriptBytecodeAdapter.java:76) at Copy$_execute_closure1.doCall(G16BugTest.groovy:34) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98) ... 52 moreCaused by: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: Copy.fileset() is applicable for argument types: (java.util.LinkedHashMap) values: {[dir:/Users/hans/tmp/garbage/d1]}

--
Hans Dockter
Gradle Project lead





--
Hans Dockter
Gradle Project lead