You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by pa...@apache.org on 2017/10/01 21:04:42 UTC
[1/2] groovy git commit: Fix wildcard arg handling in startGroovy.bat
(closes #507)
Repository: groovy
Updated Branches:
refs/heads/master 1b7988218 -> da50d1e05
Fix wildcard arg handling in startGroovy.bat (closes #507)
Signed-off-by: Aarjav Patel
Project: http://git-wip-us.apache.org/repos/asf/groovy/repo
Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/e480bef4
Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/e480bef4
Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/e480bef4
Branch: refs/heads/master
Commit: e480bef469f0ab229585872c65d244f8ad82a0d7
Parents: 1b79882
Author: AarjavP <Aa...@users.noreply.github.com>
Authored: Wed Aug 30 17:39:44 2017 +0200
Committer: paulk <pa...@asert.com.au>
Committed: Mon Oct 2 07:01:45 2017 +1000
----------------------------------------------------------------------
src/bin/startGroovy.bat | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/groovy/blob/e480bef4/src/bin/startGroovy.bat
----------------------------------------------------------------------
diff --git a/src/bin/startGroovy.bat b/src/bin/startGroovy.bat
index da24712..86007c4 100644
--- a/src/bin/startGroovy.bat
+++ b/src/bin/startGroovy.bat
@@ -177,7 +177,7 @@ for /f "tokens=1,*" %%i in (%_ARGS%) do call :get_arg "%%i" "%%j"
goto process_arg
:get_arg
-rem remove quotes around first arg
+rem remove quotes around first arg and don't expand wildcards
for /f %%i in (%1) do set _ARG=%_ARG% %%~i
rem set the remaining args
set _ARGS=%2
[2/2] groovy git commit: GROOVY-8326: @Override should not copied
onto methods generated by applying @Memoize (closes #610)
Posted by pa...@apache.org.
GROOVY-8326: @Override should not copied onto methods generated by applying @Memoize (closes #610)
Project: http://git-wip-us.apache.org/repos/asf/groovy/repo
Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/da50d1e0
Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/da50d1e0
Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/da50d1e0
Branch: refs/heads/master
Commit: da50d1e053aa2339c5ccb326b5e5ce7492a0e902
Parents: e480bef
Author: John Wagenleitner <jw...@apache.org>
Authored: Sat Sep 30 21:06:49 2017 -0700
Committer: paulk <pa...@asert.com.au>
Committed: Mon Oct 2 07:03:51 2017 +1000
----------------------------------------------------------------------
.../groovy/transform/MemoizedASTTransformation.java | 14 ++++++++++++--
.../transform/MemoizedASTTransformationTest.groovy | 14 ++++++++++++++
2 files changed, 26 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/groovy/blob/da50d1e0/src/main/org/codehaus/groovy/transform/MemoizedASTTransformation.java
----------------------------------------------------------------------
diff --git a/src/main/org/codehaus/groovy/transform/MemoizedASTTransformation.java b/src/main/org/codehaus/groovy/transform/MemoizedASTTransformation.java
index 2769a33..0360e46 100644
--- a/src/main/org/codehaus/groovy/transform/MemoizedASTTransformation.java
+++ b/src/main/org/codehaus/groovy/transform/MemoizedASTTransformation.java
@@ -68,6 +68,7 @@ public class MemoizedASTTransformation extends AbstractASTTransformation {
private static final String MAX_CACHE_SIZE_NAME = "maxCacheSize";
private static final String CLOSURE_LABEL = "Closure";
private static final String METHOD_LABEL = "Priv";
+ private static final ClassNode OVERRIDE_CLASSNODE = make(Override.class);
public void visit(ASTNode[] nodes, final SourceUnit source) {
init(nodes, source);
@@ -132,11 +133,20 @@ public class MemoizedASTTransformation extends AbstractASTTransformation {
annotatedMethod.getExceptions(),
code
);
- List<AnnotationNode> sourceAnnotations = annotatedMethod.getAnnotations();
- method.addAnnotations(new ArrayList<AnnotationNode>(sourceAnnotations));
+ method.addAnnotations(filterAnnotations(annotatedMethod.getAnnotations()));
return method;
}
+ private static List<AnnotationNode> filterAnnotations(List<AnnotationNode> annotations) {
+ List<AnnotationNode> result = new ArrayList<AnnotationNode>(annotations.size());
+ for (AnnotationNode annotation : annotations) {
+ if (!OVERRIDE_CLASSNODE.equals(annotation.getClassNode())) {
+ result.add(annotation);
+ }
+ }
+ return result;
+ }
+
private static final String MEMOIZE_METHOD_NAME = "memoize";
private static final String MEMOIZE_AT_MOST_METHOD_NAME = "memoizeAtMost";
private static final String MEMOIZE_AT_LEAST_METHOD_NAME = "memoizeAtLeast";
http://git-wip-us.apache.org/repos/asf/groovy/blob/da50d1e0/src/test/org/codehaus/groovy/transform/MemoizedASTTransformationTest.groovy
----------------------------------------------------------------------
diff --git a/src/test/org/codehaus/groovy/transform/MemoizedASTTransformationTest.groovy b/src/test/org/codehaus/groovy/transform/MemoizedASTTransformationTest.groovy
index 77e3f61..f55ac12 100644
--- a/src/test/org/codehaus/groovy/transform/MemoizedASTTransformationTest.groovy
+++ b/src/test/org/codehaus/groovy/transform/MemoizedASTTransformationTest.groovy
@@ -205,6 +205,20 @@ class MemoizedASTTransformationTest extends GroovyTestCase {
}.a() == 'a'
'''
}
+
+ // GROOVY-8326
+ void testMemoizedMethodWithOverrideAnnotation() {
+ assertScript '''
+ class A {
+ @groovy.transform.Memoized
+ @Override
+ String toString() {
+ 'an expensive toString operation'
+ }
+ }
+ assert new A().toString() == 'an expensive toString operation'
+ '''
+ }
}
class MemoizedTestClass2 {