[jira] [Updated] (GROOVY-9250) NoClassDefFoundError when parsing script

2019-09-10 Thread Radoslav Ivanov (Jira)


 [ 
https://issues.apache.org/jira/browse/GROOVY-9250?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radoslav Ivanov updated GROOVY-9250:

Description: 
We are trying to jump from 2.4.15 to 2.5.8 Groovy Runtime but we get that error 
now when calling GroovyClassLoader::parseClass(script). Any help would be 
appreciated.
{code:java}
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
General error during instruction selection: java.lang.NoClassDefFoundError: 
com.some.clazz
java.lang.RuntimeException: java.lang.NoClassDefFoundError: com.some.clazz
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.convertUncaughtExceptionToCompilationError(CompilationUnit.java:1107)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1087)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:634)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:612)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:589)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:401)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.access$300(GroovyClassLoader.java:89)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:341)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:338)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.runtime.memoize.ConcurrentCommonCache.getAndPut(ConcurrentCommonCache.java:147)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:336)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:320)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:262)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:272)

Caused by: java.lang.NoClassDefFoundError: com.some.clazz
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClass(AsmReferenceResolver.java:46)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveNonArrayType(AsmReferenceResolver.java:79)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveType(AsmReferenceResolver.java:70)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.MemberSignatureParser.createFieldNode(MemberSignatureParser.java:158)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.DecompiledClassNode.lazyInitMembers(DecompiledClassNode.java:205)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.DecompiledClassNode.getDeclaredConstructors(DecompiledClassNode.java:108)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.ClassNode.getDeclaredConstructors(ClassNode.java:484)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethod(StaticTypeCheckingVisitor.java:4425)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethodOrFail(StaticTypeCheckingVisitor.java:4279)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.sc.StaticCompilationVisitor.findMethodOrFail(StaticCompilationVisitor.java:457)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitConstructorCallExpression(StaticTypeCheckingVisitor.java:2202)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.sc.StaticCompilationVisitor.visitConstructorCallExpression(StaticCompilationVisitor.java:413)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.expr.ConstructorCallExpression.visit(ConstructorCallExpression.java:43)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitBinaryExpression(StaticTypeCheckingVisitor.java:822)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.CodeVisitorSupport.visitDeclarationExpression(CodeVisitorSupport.java:296)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitDeclarationExpression(ClassCodeVisitorSupport.java:116)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.expr.DeclarationExpression.visit(DeclarationExpression.java:89)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.CodeVisitorSupport.visitExpressionStatement(CodeVisitorSupport.java:120)
at 

[jira] [Resolved] (GROOVY-9236) Avoid unnecessary resolving

2019-09-10 Thread Daniel Sun (Jira)


 [ 
https://issues.apache.org/jira/browse/GROOVY-9236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Sun resolved GROOVY-9236.

Resolution: Fixed

Fixed by 
https://github.com/apache/groovy/commit/fbc442da25335ebcb8f61623cd4a89f551c86331

> Avoid unnecessary resolving
> ---
>
> Key: GROOVY-9236
> URL: https://issues.apache.org/jira/browse/GROOVY-9236
> Project: Groovy
>  Issue Type: Improvement
>Reporter: Daniel Sun
>Assignee: Daniel Sun
>Priority: Major
> Fix For: 3.0.0-beta-4
>
>  Time Spent: 4h 20m
>  Remaining Estimate: 0h
>
> {{ResolveVisitor}}'s {{resolveFromStaticInnerClasses}}, 
> {{resolveFromDefaultImports}} and {{resolveNestedClass}} will try to guess 
> class qualified name and load. In the process of resolving, lots of time 
> wasted on finding non-existing classes. So we should try to resolve classes 
> in a determined manner.
> For example,
> For {{java.util.stream.Collectors}},  ① {{resolveFromStaticInnerClasses}} 
> will try to guess {{java.util.stream$Collectors}}, 
> {{java.util$stream$Collectors}}, {{java$util$stream$Collectors}}.
> And ② {{resolveFromDefaultImports}} will guess 
> {{java.lang.java$util$stream$Collectors}},  
> {{java.util.java$util$stream$Collectors}}, ...,  
> {{groovy.lang.java$util$stream$Collectors}}.
> After the precedence of resolving adjusted, the above unnecessary resolving 
> can be avoided.
> See the discussion in the dev mailing list: 
> http://groovy.329449.n5.nabble.com/Performance-of-the-compiler-tt5750989.html
> and its attachment: 
> http://groovy.329449.n5.nabble.com/attachment/5750989/0/CPU-hot-spots.txt



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[GitHub] [groovy] danielsun1106 merged pull request #998: GROOVY-9236: Avoid unnecessary resolving

2019-09-10 Thread GitBox
danielsun1106 merged pull request #998: GROOVY-9236: Avoid unnecessary resolving
URL: https://github.com/apache/groovy/pull/998
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [groovy] danielsun1106 commented on issue #998: GROOVY-9236: Avoid unnecessary resolving

2019-09-10 Thread GitBox
danielsun1106 commented on issue #998: GROOVY-9236: Avoid unnecessary resolving
URL: https://github.com/apache/groovy/pull/998#issuecomment-530220095
 
 
   > We can revert/tweak later if we really need to.
   I think so too :-)


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[jira] [Updated] (GROOVY-9250) NoClassDefFoundError when parsing script

2019-09-10 Thread Radoslav Ivanov (Jira)


 [ 
https://issues.apache.org/jira/browse/GROOVY-9250?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radoslav Ivanov updated GROOVY-9250:

Description: 
We are trying to jump from 2.4.15 to 2.5.8 Groovy Runtime but we get that error 
now when calling parseScript on the GroovyClassLoader. Any help would be 
appreciated.
{code:java}
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
General error during instruction selection: java.lang.NoClassDefFoundError: 
com.some.clazz
java.lang.RuntimeException: java.lang.NoClassDefFoundError: com.some.clazz
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.convertUncaughtExceptionToCompilationError(CompilationUnit.java:1107)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1087)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:634)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:612)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:589)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:401)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.access$300(GroovyClassLoader.java:89)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:341)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:338)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.runtime.memoize.ConcurrentCommonCache.getAndPut(ConcurrentCommonCache.java:147)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:336)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:320)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:262)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:272)

Caused by: java.lang.NoClassDefFoundError: com.some.clazz
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClass(AsmReferenceResolver.java:46)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveNonArrayType(AsmReferenceResolver.java:79)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveType(AsmReferenceResolver.java:70)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.MemberSignatureParser.createFieldNode(MemberSignatureParser.java:158)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.DecompiledClassNode.lazyInitMembers(DecompiledClassNode.java:205)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.DecompiledClassNode.getDeclaredConstructors(DecompiledClassNode.java:108)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.ClassNode.getDeclaredConstructors(ClassNode.java:484)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethod(StaticTypeCheckingVisitor.java:4425)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethodOrFail(StaticTypeCheckingVisitor.java:4279)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.sc.StaticCompilationVisitor.findMethodOrFail(StaticCompilationVisitor.java:457)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitConstructorCallExpression(StaticTypeCheckingVisitor.java:2202)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.sc.StaticCompilationVisitor.visitConstructorCallExpression(StaticCompilationVisitor.java:413)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.expr.ConstructorCallExpression.visit(ConstructorCallExpression.java:43)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitBinaryExpression(StaticTypeCheckingVisitor.java:822)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.CodeVisitorSupport.visitDeclarationExpression(CodeVisitorSupport.java:296)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitDeclarationExpression(ClassCodeVisitorSupport.java:116)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.expr.DeclarationExpression.visit(DeclarationExpression.java:89)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.CodeVisitorSupport.visitExpressionStatement(CodeVisitorSupport.java:120)
at 

[jira] [Updated] (GROOVY-9250) NoClassDefFoundError when parsing script

2019-09-10 Thread Radoslav Ivanov (Jira)


 [ 
https://issues.apache.org/jira/browse/GROOVY-9250?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radoslav Ivanov updated GROOVY-9250:

Description: 
We are trying to jump from 2.4.15 to 2.5.8 Groovy Runtime but we get that error 
now when calling parseScript on the GroovyClassLoader. Any help would be 
appreciated.
{code:java}
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
General error during instruction selection: java.lang.NoClassDefFoundError: 
com.some.clazzjava.lang.RuntimeException: java.lang.NoClassDefFoundError: 
com.some.clazz
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.convertUncaughtExceptionToCompilationError(CompilationUnit.java:1107)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1087)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:634)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:612)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:589)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:401)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.access$300(GroovyClassLoader.java:89)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:341)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:338)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.runtime.memoize.ConcurrentCommonCache.getAndPut(ConcurrentCommonCache.java:147)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:336)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:320)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:262)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:272)

Caused by: java.lang.NoClassDefFoundError: com.some.clazz
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClass(AsmReferenceResolver.java:46)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveNonArrayType(AsmReferenceResolver.java:79)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveType(AsmReferenceResolver.java:70)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.MemberSignatureParser.createFieldNode(MemberSignatureParser.java:158)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.DecompiledClassNode.lazyInitMembers(DecompiledClassNode.java:205)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.DecompiledClassNode.getDeclaredConstructors(DecompiledClassNode.java:108)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.ClassNode.getDeclaredConstructors(ClassNode.java:484)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethod(StaticTypeCheckingVisitor.java:4425)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethodOrFail(StaticTypeCheckingVisitor.java:4279)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.sc.StaticCompilationVisitor.findMethodOrFail(StaticCompilationVisitor.java:457)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitConstructorCallExpression(StaticTypeCheckingVisitor.java:2202)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.sc.StaticCompilationVisitor.visitConstructorCallExpression(StaticCompilationVisitor.java:413)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.expr.ConstructorCallExpression.visit(ConstructorCallExpression.java:43)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitBinaryExpression(StaticTypeCheckingVisitor.java:822)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.CodeVisitorSupport.visitDeclarationExpression(CodeVisitorSupport.java:296)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitDeclarationExpression(ClassCodeVisitorSupport.java:116)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.expr.DeclarationExpression.visit(DeclarationExpression.java:89)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.CodeVisitorSupport.visitExpressionStatement(CodeVisitorSupport.java:120)
at 

[jira] [Created] (GROOVY-9250) NoClassDefFoundError when parsing script

2019-09-10 Thread Radoslav Ivanov (Jira)
Radoslav Ivanov created GROOVY-9250:
---

 Summary: NoClassDefFoundError when parsing script 
 Key: GROOVY-9250
 URL: https://issues.apache.org/jira/browse/GROOVY-9250
 Project: Groovy
  Issue Type: Bug
  Components: groovy-runtime
Affects Versions: 2.5.8
 Environment: OpenJDK 11.0.2
Groovy 2.5.8
WildFly 16.0.0
Reporter: Radoslav Ivanov


We are trying to jump from 2.4.15 to 2.5.8 Groovy Runtime but we get that error 
now when calling parseScript on the GroovyClassLoader. Any help would be 
appreciated.
{code:java}
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
General error during instruction selection: java.lang.NoClassDefFoundError: 
com.some.clazzjava.lang.RuntimeException: java.lang.NoClassDefFoundError: 
com.some.clazz
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.convertUncaughtExceptionToCompilationError(CompilationUnit.java:1107)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1087)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:634)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:612)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:589)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:401)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.access$300(GroovyClassLoader.java:89)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:341)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:338)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.runtime.memoize.ConcurrentCommonCache.getAndPut(ConcurrentCommonCache.java:147)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:336)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:320)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:262)
at 
org.codehaus.groovy@2.5.8//groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:272)

Caused by: java.lang.NoClassDefFoundError: com.jayway.jsonpath.DocumentContext
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClass(AsmReferenceResolver.java:46)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveNonArrayType(AsmReferenceResolver.java:79)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveType(AsmReferenceResolver.java:70)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.MemberSignatureParser.createFieldNode(MemberSignatureParser.java:158)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.DecompiledClassNode.lazyInitMembers(DecompiledClassNode.java:205)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.decompiled.DecompiledClassNode.getDeclaredConstructors(DecompiledClassNode.java:108)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.ClassNode.getDeclaredConstructors(ClassNode.java:484)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethod(StaticTypeCheckingVisitor.java:4425)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethodOrFail(StaticTypeCheckingVisitor.java:4279)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.sc.StaticCompilationVisitor.findMethodOrFail(StaticCompilationVisitor.java:457)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitConstructorCallExpression(StaticTypeCheckingVisitor.java:2202)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.sc.StaticCompilationVisitor.visitConstructorCallExpression(StaticCompilationVisitor.java:413)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.expr.ConstructorCallExpression.visit(ConstructorCallExpression.java:43)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitBinaryExpression(StaticTypeCheckingVisitor.java:822)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.CodeVisitorSupport.visitDeclarationExpression(CodeVisitorSupport.java:296)
at 
org.codehaus.groovy@2.5.8//org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitDeclarationExpression(ClassCodeVisitorSupport.java:116)
at 

[GitHub] [groovy] paulk-asert commented on issue #998: GROOVY-9236: Avoid unnecessary resolving

2019-09-10 Thread GitBox
paulk-asert commented on issue #998: GROOVY-9236: Avoid unnecessary resolving
URL: https://github.com/apache/groovy/pull/998#issuecomment-530208773
 
 
   Go ahead and commit. I still want to do more testing but won't get time 
until next week. We can revert/tweak later if we really need to.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[jira] [Assigned] (GROOVY-8572) Groovy 2.4.12 Static compiler fails on nonsense type inference error

2019-09-10 Thread Eric Milles (Jira)


 [ 
https://issues.apache.org/jira/browse/GROOVY-8572?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Milles reassigned GROOVY-8572:
---

Assignee: Eric Milles

> Groovy 2.4.12 Static compiler fails on nonsense type inference error
> 
>
> Key: GROOVY-8572
> URL: https://issues.apache.org/jira/browse/GROOVY-8572
> Project: Groovy
>  Issue Type: Bug
>  Components: Static Type Checker
>Affects Versions: 2.4.12
>Reporter: Martin Skurla
>Assignee: Eric Milles
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> I am using Gradle which internally currently uses Groovy 2.4.12.
> I am getting the following error:
> {code:java}
> martin@martin-desktop:~/devel/apollo/buildteam/gradle_plugins(master)$ 
> ./gradlew clean test
> > Task :compileGroovy
> startup failed:
> /home/martin/devel/apollo/buildteam/gradle_plugins/src/main/groovy/apollosoft/build/support/gradle/assets/ApolloAssetsDSLExtension.groovy:
>  54: [Static type checking] - Cannot use diamond <> with anonymous inner 
> classes
>  @ line 54, column 28.
>    closure.delegate = new Object() {
>   ^
> 1 error
> {code}
> It looks like it is wrong, I am not specifying any diamond operator anywhere.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[jira] [Comment Edited] (GROOVY-8572) Groovy 2.4.12 Static compiler fails on nonsense type inference error

2019-09-10 Thread Eric Milles (Jira)


[ 
https://issues.apache.org/jira/browse/GROOVY-8572?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16926897#comment-16926897
 ] 

Eric Milles edited comment on GROOVY-8572 at 9/10/19 9:24 PM:
--

Still a problem in 2.4.17.  StaticTypeCheckingVisitor is going into this block 
to generate the error:
{code:java}
protected void inferDiamondType(final ConstructorCallExpression cce, final 
ClassNode lType) {
// check if constructor call expression makes use of the diamond 
operator
ClassNode node = cce.getType();
if (node.isUsingGenerics() && node instanceof InnerClassNode && 
((InnerClassNode) node).isAnonymous()) {
ClassNode[] interfaces = node.getInterfaces();
node = interfaces != null && interfaces.length == 1 ? interfaces[0] 
: node.getUnresolvedSuperClass(false);
if ((node.getGenericsTypes() == null || 
node.getGenericsTypes().length == 0) && lType.isUsingGenerics()) {
// InterfaceA obj = new InterfaceA<>() { ... }
// InterfaceA obj = new ClassA<>() { ... }
// ClassA obj = new ClassA<>() { ... }
addStaticTypeError("Cannot use diamond <> with anonymous inner 
classes", cce);
}
}
{code}

It goes there because ResolveVisitor is setting usingGenerics to true in 
resolveGenericsTypes and supporting methods.  I'm not sure why ResolveVisitor 
is setting this flag for the anon. inner when the type being resolved is 
{{Map}} or {{List}}, which are types used within the 
anon. inner class body.

https://github.com/apache/groovy/commit/01c5b0acea4768edffd1b2609c651bfeb5121889


was (Author: emilles):
Still a problem in 2.4.17.  StaticTypeCheckingVisitor is going into this block 
to generate the error:
{code:java}
protected void inferDiamondType(final ConstructorCallExpression cce, final 
ClassNode lType) {
// check if constructor call expression makes use of the diamond 
operator
ClassNode node = cce.getType();
if (node.isUsingGenerics() && node instanceof InnerClassNode && 
((InnerClassNode) node).isAnonymous()) {
ClassNode[] interfaces = node.getInterfaces();
node = interfaces != null && interfaces.length == 1 ? interfaces[0] 
: node.getUnresolvedSuperClass(false);
if ((node.getGenericsTypes() == null || 
node.getGenericsTypes().length == 0) && lType.isUsingGenerics()) {
// InterfaceA obj = new InterfaceA<>() { ... }
// InterfaceA obj = new ClassA<>() { ... }
// ClassA obj = new ClassA<>() { ... }
addStaticTypeError("Cannot use diamond <> with anonymous inner 
classes", cce);
}
}
{code}

It goes there because ResolveVisitor is setting usingGenerics to true in 
resolveGenericsTypes and supporting methods.  I'm not sure why ResolveVisitor 
is setting this flag for the anon. inner when the type being resolved is 
{{Map}} or {{List}}, which are types used within the 
anon. inner class body.

> Groovy 2.4.12 Static compiler fails on nonsense type inference error
> 
>
> Key: GROOVY-8572
> URL: https://issues.apache.org/jira/browse/GROOVY-8572
> Project: Groovy
>  Issue Type: Bug
>  Components: Static Type Checker
>Affects Versions: 2.4.12
>Reporter: Martin Skurla
>Priority: Major
>
> I am using Gradle which internally currently uses Groovy 2.4.12.
> I am getting the following error:
> {code:java}
> martin@martin-desktop:~/devel/apollo/buildteam/gradle_plugins(master)$ 
> ./gradlew clean test
> > Task :compileGroovy
> startup failed:
> /home/martin/devel/apollo/buildteam/gradle_plugins/src/main/groovy/apollosoft/build/support/gradle/assets/ApolloAssetsDSLExtension.groovy:
>  54: [Static type checking] - Cannot use diamond <> with anonymous inner 
> classes
>  @ line 54, column 28.
>    closure.delegate = new Object() {
>   ^
> 1 error
> {code}
> It looks like it is wrong, I am not specifying any diamond operator anywhere.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[jira] [Commented] (GROOVY-8572) Groovy 2.4.12 Static compiler fails on nonsense type inference error

2019-09-10 Thread Eric Milles (Jira)


[ 
https://issues.apache.org/jira/browse/GROOVY-8572?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16926897#comment-16926897
 ] 

Eric Milles commented on GROOVY-8572:
-

Still a problem in 2.4.17.  StaticTypeCheckingVisitor is going into this block 
to generate the error:
{code:java}
protected void inferDiamondType(final ConstructorCallExpression cce, final 
ClassNode lType) {
// check if constructor call expression makes use of the diamond 
operator
ClassNode node = cce.getType();
if (node.isUsingGenerics() && node instanceof InnerClassNode && 
((InnerClassNode) node).isAnonymous()) {
ClassNode[] interfaces = node.getInterfaces();
node = interfaces != null && interfaces.length == 1 ? interfaces[0] 
: node.getUnresolvedSuperClass(false);
if ((node.getGenericsTypes() == null || 
node.getGenericsTypes().length == 0) && lType.isUsingGenerics()) {
// InterfaceA obj = new InterfaceA<>() { ... }
// InterfaceA obj = new ClassA<>() { ... }
// ClassA obj = new ClassA<>() { ... }
addStaticTypeError("Cannot use diamond <> with anonymous inner 
classes", cce);
}
}
{code}

It goes there because ResolveVisitor is setting usingGenerics to true in 
resolveGenericsTypes and supporting methods.  I'm not sure why ResolveVisitor 
is setting this flag for the anon. inner when the type being resolved is 
{{Map}} or {{List}}, which are types used within the 
anon. inner class body.

> Groovy 2.4.12 Static compiler fails on nonsense type inference error
> 
>
> Key: GROOVY-8572
> URL: https://issues.apache.org/jira/browse/GROOVY-8572
> Project: Groovy
>  Issue Type: Bug
>  Components: Static Type Checker
>Affects Versions: 2.4.12
>Reporter: Martin Skurla
>Priority: Major
>
> I am using Gradle which internally currently uses Groovy 2.4.12.
> I am getting the following error:
> {code:java}
> martin@martin-desktop:~/devel/apollo/buildteam/gradle_plugins(master)$ 
> ./gradlew clean test
> > Task :compileGroovy
> startup failed:
> /home/martin/devel/apollo/buildteam/gradle_plugins/src/main/groovy/apollosoft/build/support/gradle/assets/ApolloAssetsDSLExtension.groovy:
>  54: [Static type checking] - Cannot use diamond <> with anonymous inner 
> classes
>  @ line 54, column 28.
>    closure.delegate = new Object() {
>   ^
> 1 error
> {code}
> It looks like it is wrong, I am not specifying any diamond operator anywhere.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[jira] [Commented] (GROOVY-7375) Incorrect closure owner inside anonymous inner class

2019-09-10 Thread Eric Milles (Jira)


[ 
https://issues.apache.org/jira/browse/GROOVY-7375?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16926782#comment-16926782
 ] 

Eric Milles commented on GROOVY-7375:
-

The delegate and owner seem correct within the closure "c".  Replacing "m()" 
with either "println owner" or "printle delegate" outputs "B$1", which is the 
anon. inner that is assigned to the "a" property.  The resolution of the method 
"m" seems to be missing a check on the parent type(s) of the anon. inner class.

> Incorrect closure owner inside anonymous inner class
> 
>
> Key: GROOVY-7375
> URL: https://issues.apache.org/jira/browse/GROOVY-7375
> Project: Groovy
>  Issue Type: Bug
>  Components: Compiler
>Affects Versions: 2.4.3
>Reporter: Geoff Cadien
>Priority: Major
>
> {code}
>  abstract class A {
>private void m() {
> println 'm'
>   }
> 
>   void wrong() {
> m()
> Closure c = {
>   m()
> }
> c()
>   }
> }
> class B {
>   A a = new A() {}
>   
>   void b() {
>a.wrong()
>  }
> }
> def b = new B()
> b.b()
> {code}  
> Produces the following error:
> {code}
> groovy.lang.MissingMethodException: No signature of method: B.m() is 
> applicable for argument types: () values: []
> Possible solutions: b(), is(java.lang.Object), dump(), any(), 
> any(groovy.lang.Closure), use([Ljava.lang.Object;)
>   at B.this$dist$invoke$1(wrong.groovy)
>   at B$1.methodMissing(wrong.groovy)
>   at A.invokeMethod(wrong.groovy)
>   at A$_wrong_closure1.doCall(wrong.groovy:9)
>   at A$_wrong_closure1.doCall(wrong.groovy)
>   at A.wrong(wrong.groovy:12)
>   at A$wrong.call(Unknown Source)
>   at B.b(wrong.groovy:20)
>   at B$b.call(Unknown Source)
>   at wrong.run(wrong.groovy:25)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[GitHub] [groovy] danielsun1106 edited a comment on issue #998: GROOVY-9236: Avoid unnecessary resolving

2019-09-10 Thread GitBox
danielsun1106 edited a comment on issue #998: GROOVY-9236: Avoid unnecessary 
resolving
URL: https://github.com/apache/groovy/pull/998#issuecomment-529890504
 
 
   @paulk-asert 
   In theory, it is not a breaking change and its build is green. But we can 
not test all frameworks based on Groovy, so how about merge the PR for the time 
being and ask framework maintainers to give it a try? I think it conforms to 
the meaning of beta releases.
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [groovy] danielsun1106 commented on issue #998: GROOVY-9236: Avoid unnecessary resolving

2019-09-10 Thread GitBox
danielsun1106 commented on issue #998: GROOVY-9236: Avoid unnecessary resolving
URL: https://github.com/apache/groovy/pull/998#issuecomment-529890504
 
 
   @paulk-asert 
   In theory, it is not a breaking chang and its build is green. But we can not 
test all frameworks based on Groovy, so how about merge the PR for the time 
being and ask framework maintainers to give it a try? I think it conforms to 
the meaning of beta releases.
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services