diff -Nru groovy-2.4.16/debian/changelog groovy-2.4.17/debian/changelog --- groovy-2.4.16/debian/changelog 2019-02-21 01:11:35.000000000 +0000 +++ groovy-2.4.17/debian/changelog 2020-02-14 04:26:03.000000000 +0000 @@ -1,3 +1,54 @@ +groovy (2.4.17-4ubuntu1) focal; urgency=medium + + * Merge with Debian unstable (LP: #1842928). Remaining changes: + - debian/patches/exclude_groovydoc.patch: exclude + EncodingGroovyMethodsSupport.java from groovydoc - without it, the + archive builder fails with no log. + + -- Logan Rosen Thu, 13 Feb 2020 23:26:03 -0500 + +groovy (2.4.17-4) unstable; urgency=medium + + * Team upload. + * disable timestamps from javadoc + * install icon for Groovy Console + + -- Hans-Christoph Steiner Tue, 10 Dec 2019 12:06:21 +0100 + +groovy (2.4.17-3) unstable; urgency=medium + + [ tony mancill ] + * Team upload. + * Use debhelper 12 + * Update debian/watch + + [ Hans-Christoph Steiner ] + * use a fixed timestamp to support reproducible builds + + -- Hans-Christoph Steiner Fri, 06 Dec 2019 01:06:55 +0100 + +groovy (2.4.17-2) unstable; urgency=medium + + * Team upload. + * Add patch to fix groovyConsole exception. (Closes: #929460) + * Fix typo in Recommends for junit4-doc + * Add lintian override for needless-suggest-recommend-libservlet-java + * Remove dangling symlink to testng.jar (Closes: #874755) + (Recommends was removed in 2.4.8-2) + * Remove dangling symlink to jsr166y (Closes: #874711) + + -- tony mancill Wed, 31 Jul 2019 20:03:00 -0700 + +groovy (2.4.17-1) unstable; urgency=medium + + * Team upload. + * New upstream release + - Refreshed the patches + - Updated the poms + * Standards-Version updated to 4.4.0 + + -- Emmanuel Bourg Mon, 15 Jul 2019 12:56:38 +0200 + groovy (2.4.16-2ubuntu1) disco; urgency=medium * Merge from Debian unstable. Remaining changes: diff -Nru groovy-2.4.16/debian/compat groovy-2.4.17/debian/compat --- groovy-2.4.16/debian/compat 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/compat 2020-02-14 04:26:03.000000000 +0000 @@ -1 +1 @@ -11 +12 diff -Nru groovy-2.4.16/debian/control groovy-2.4.17/debian/control --- groovy-2.4.16/debian/control 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/control 2020-02-14 04:26:03.000000000 +0000 @@ -10,7 +10,7 @@ ant-optional, antlr, bnd (>= 2.1.0), - debhelper (>= 11), + debhelper (>= 12), default-jdk, default-jdk-doc, gradle-debian-helper, @@ -33,7 +33,7 @@ maven-repo-helper, testng, unzip -Standards-Version: 4.3.0 +Standards-Version: 4.4.0 Vcs-Git: https://salsa.debian.org/java-team/groovy.git Vcs-Browser: https://salsa.debian.org/java-team/groovy Homepage: http://www.groovy-lang.org @@ -79,7 +79,7 @@ Section: doc Architecture: all Depends: ${misc:Depends} -Recommends: default-jdk-doc, juni4-doc, libservlet3.1-java-doc +Recommends: default-jdk-doc, junit4-doc, libservlet3.1-java-doc Suggests: groovy Description: Agile dynamic language for the Java Virtual Machine (documentation) Groovy is an agile dynamic language for the JVM combining lots of great diff -Nru groovy-2.4.16/debian/groovyConsole.desktop groovy-2.4.17/debian/groovyConsole.desktop --- groovy-2.4.16/debian/groovyConsole.desktop 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/groovyConsole.desktop 2020-02-14 04:26:03.000000000 +0000 @@ -1,5 +1,6 @@ [Desktop Entry] Name=Groovy Console +Icon=ConsoleIcon Type=Application Exec=/usr/bin/groovyConsole Terminal=false diff -Nru groovy-2.4.16/debian/groovy-doc.lintian-overrides groovy-2.4.17/debian/groovy-doc.lintian-overrides --- groovy-2.4.16/debian/groovy-doc.lintian-overrides 1970-01-01 00:00:00.000000000 +0000 +++ groovy-2.4.17/debian/groovy-doc.lintian-overrides 2020-02-14 04:26:03.000000000 +0000 @@ -0,0 +1,2 @@ +groovy-doc: needless-suggest-recommend-libservlet-java + diff -Nru groovy-2.4.16/debian/groovy.install groovy-2.4.17/debian/groovy.install --- groovy-2.4.16/debian/groovy.install 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/groovy.install 2020-02-14 04:26:03.000000000 +0000 @@ -1,3 +1,4 @@ +subprojects/groovy-console/src/main/resources/groovy/ui/ConsoleIcon.png /usr/share/icons/hicolor/48x48/apps/ target/distributions/bin/groovy-*/bin/grape /usr/share/groovy/bin target/distributions/bin/groovy-*/bin/groovy /usr/share/groovy/bin target/distributions/bin/groovy-*/bin/groovyConsole /usr/share/groovy/bin diff -Nru groovy-2.4.16/debian/groovy.links groovy-2.4.17/debian/groovy.links --- groovy-2.4.16/debian/groovy.links 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/groovy.links 2020-02-14 04:26:03.000000000 +0000 @@ -23,9 +23,7 @@ /usr/share/java/jcommander.jar /usr/share/groovy/lib/jcommander.jar /usr/share/java/jline2.jar /usr/share/groovy/lib/jline2.jar /usr/share/java/jsp-api-2.3.jar /usr/share/groovy/lib/jsp-api-2.3.jar -/usr/share/java/jsr166y.jar /usr/share/groovy/lib/jsr166y.jar /usr/share/java/junit4.jar /usr/share/groovy/lib/junit4.jar /usr/share/java/qdox.jar /usr/share/groovy/lib/qdox.jar /usr/share/java/servlet-api-3.1.jar /usr/share/groovy/lib/servlet-api-3.1.jar -/usr/share/java/testng.jar /usr/share/groovy/lib/testng.jar /usr/share/java/xstream.jar /usr/share/groovy/lib/xstream.jar diff -Nru groovy-2.4.16/debian/patches/00_reproducible_timestamp.patch groovy-2.4.17/debian/patches/00_reproducible_timestamp.patch --- groovy-2.4.16/debian/patches/00_reproducible_timestamp.patch 1970-01-01 00:00:00.000000000 +0000 +++ groovy-2.4.17/debian/patches/00_reproducible_timestamp.patch 2020-02-14 04:26:03.000000000 +0000 @@ -0,0 +1,38 @@ +--- a/gradle/filter.gradle ++++ b/gradle/filter.gradle +@@ -18,7 +18,7 @@ + */ + import java.text.SimpleDateFormat + +-ext.buildTime = new Date() ++ext.buildTime = new Date(1575590041000L) + + ext.propertiesFilter = [ + beginToken: '#', +--- a/gradle/docs.gradle ++++ b/gradle/docs.gradle +@@ -197,6 +197,7 @@ + + if (JavaVersion.current().isJava7Compatible()) { + javadocAll.options.source = '1.7' ++ javadocAll.options.noTimestamp() + } + + if (JavaVersion.current().isJava8Compatible()) { +@@ -204,6 +205,7 @@ + tasks.withType(Javadoc) { + // disable the crazy super-strict doclint tool in Java 8 + options.addStringOption('Xdoclint:none', '-quiet') ++ options.noTimestamp() + } + } + } +--- a/subprojects/groovy-nio/build.gradle ++++ b/subprojects/groovy-nio/build.gradle +@@ -36,5 +36,6 @@ + } + tasks.withType(Javadoc) { + options.source = "1.7" ++ options.noTimestamp() + } + diff -Nru groovy-2.4.16/debian/patches/01_fix_doc_gradle.diff groovy-2.4.17/debian/patches/01_fix_doc_gradle.diff --- groovy-2.4.16/debian/patches/01_fix_doc_gradle.diff 2019-02-20 22:16:47.000000000 +0000 +++ groovy-2.4.17/debian/patches/01_fix_doc_gradle.diff 2020-02-14 04:26:03.000000000 +0000 @@ -10,7 +10,7 @@ - if (JavaVersion.current().java7Compatible) { - dependsOn 'asciidocAll', 'assembleAsciidoc' - } - ext.footer = 'Copyright © 2003-2018 The Apache Software Foundation. All rights reserved.' + ext.footer = 'Copyright © 2003-2019 The Apache Software Foundation. All rights reserved.' ext.title = "Groovy ${groovyVersion}" } diff -Nru groovy-2.4.16/debian/patches/13_GROOVY_8253.patch groovy-2.4.17/debian/patches/13_GROOVY_8253.patch --- groovy-2.4.16/debian/patches/13_GROOVY_8253.patch 1970-01-01 00:00:00.000000000 +0000 +++ groovy-2.4.17/debian/patches/13_GROOVY_8253.patch 2020-02-14 04:26:03.000000000 +0000 @@ -0,0 +1,28 @@ +Description: fixes failure of groovyConsole to launch + https://issues.apache.org/jira/browse/GROOVY-8253 + https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=929460 +Origin: https://github.com/apache/groovy/commit/35aba7c0cf710b1337935f266ac6e6e6bef82c92 +Forwarded: not-needed + +--- a/gradle/assemble.gradle ++++ b/gradle/assemble.gradle +@@ -297,7 +297,7 @@ + def staticExtensionClasses = [] + + modules().collect { +- new File("${it.buildDir}/classes/main/META-INF/services/org.codehaus.groovy.runtime.ExtensionModule") ++ new File("${it.buildDir}/resources/main/META-INF/services/org.codehaus.groovy.runtime.ExtensionModule") + }.findAll { it.exists() }.each { + def props = new Properties() + props.load(it.newInputStream()) +--- a/buildSrc/src/main/groovy/org/codehaus/groovy/gradle/WriteExtensionDescriptorTask.groovy ++++ b/buildSrc/src/main/groovy/org/codehaus/groovy/gradle/WriteExtensionDescriptorTask.groovy +@@ -36,7 +36,7 @@ + + + private File computeDescriptorFile() { +- def metaInfDir = new File("${project.buildDir}/classes/main/META-INF/services") ++ def metaInfDir = new File("${project.buildDir}/resources/main/META-INF/services") + return new File(metaInfDir, "org.codehaus.groovy.runtime.ExtensionModule") + } + diff -Nru groovy-2.4.16/debian/patches/series groovy-2.4.17/debian/patches/series --- groovy-2.4.16/debian/patches/series 2019-02-21 01:11:23.000000000 +0000 +++ groovy-2.4.17/debian/patches/series 2020-02-14 04:26:03.000000000 +0000 @@ -1,3 +1,4 @@ +00_reproducible_timestamp.patch 01_fix_doc_gradle.diff 02_fix_start_script.diff 03_ignore_reporting_tools.diff @@ -13,3 +14,4 @@ 12_java11_compatibility.patch exclude_groovydoc.patch failOnError.patch +13_GROOVY_8253.patch diff -Nru groovy-2.4.16/debian/patches/transition_Gradle_3.1.patch groovy-2.4.17/debian/patches/transition_Gradle_3.1.patch --- groovy-2.4.16/debian/patches/transition_Gradle_3.1.patch 2019-02-20 22:16:47.000000000 +0000 +++ groovy-2.4.17/debian/patches/transition_Gradle_3.1.patch 2020-02-14 04:26:03.000000000 +0000 @@ -1,4 +1,4 @@ -Description: Transtion to Gradle 3.1 +Description: Transition to Gradle 3.1 This patch makes the build scripts compatible with Gradle 3.1 Author: Kai-Chung Yan (殷啟聰) Last-Update: 2016-11-01 diff -Nru groovy-2.4.16/debian/poms/groovy-all.pom groovy-2.4.17/debian/poms/groovy-all.pom --- groovy-2.4.16/debian/poms/groovy-all.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-all.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-all - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM diff -Nru groovy-2.4.16/debian/poms/groovy-ant.pom groovy-2.4.17/debian/poms/groovy-ant.pom --- groovy-2.4.16/debian/poms/groovy-ant.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-ant.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-ant - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile @@ -627,7 +627,7 @@ org.codehaus.groovy groovy-groovydoc - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-bsf.pom groovy-2.4.17/debian/poms/groovy-bsf.pom --- groovy-2.4.16/debian/poms/groovy-bsf.pom 2019-02-20 22:16:47.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-bsf.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-bsf - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -633,7 +633,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-console.pom groovy-2.4.17/debian/poms/groovy-console.pom --- groovy-2.4.16/debian/poms/groovy-console.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-console.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-console - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,19 +615,19 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile org.codehaus.groovy groovy-swing - 2.4.16 + 2.4.17 compile org.codehaus.groovy groovy-templates - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-docgenerator.pom groovy-2.4.17/debian/poms/groovy-docgenerator.pom --- groovy-2.4.16/debian/poms/groovy-docgenerator.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-docgenerator.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-docgenerator - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,13 +615,13 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile org.codehaus.groovy groovy-templates - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-groovydoc.pom groovy-2.4.17/debian/poms/groovy-groovydoc.pom --- groovy-2.4.16/debian/poms/groovy-groovydoc.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-groovydoc.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-groovydoc - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,13 +615,13 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile org.codehaus.groovy groovy-templates - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-groovysh.pom groovy-2.4.17/debian/poms/groovy-groovysh.pom --- groovy-2.4.16/debian/poms/groovy-groovysh.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-groovysh.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-groovysh - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,13 +615,13 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile org.codehaus.groovy groovy-console - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-jmx.pom groovy-2.4.17/debian/poms/groovy-jmx.pom --- groovy-2.4.16/debian/poms/groovy-jmx.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-jmx.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-jmx - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-json.pom groovy-2.4.17/debian/poms/groovy-json.pom --- groovy-2.4.16/debian/poms/groovy-json.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-json.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-json - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-jsr223.pom groovy-2.4.17/debian/poms/groovy-jsr223.pom --- groovy-2.4.16/debian/poms/groovy-jsr223.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-jsr223.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-jsr223 - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-nio.pom groovy-2.4.17/debian/poms/groovy-nio.pom --- groovy-2.4.16/debian/poms/groovy-nio.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-nio.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-nio - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy.pom groovy-2.4.17/debian/poms/groovy.pom --- groovy-2.4.16/debian/poms/groovy.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM diff -Nru groovy-2.4.16/debian/poms/groovy-servlet.pom groovy-2.4.17/debian/poms/groovy-servlet.pom --- groovy-2.4.16/debian/poms/groovy-servlet.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-servlet.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-servlet - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -627,19 +627,19 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile org.codehaus.groovy groovy-xml - 2.4.16 + 2.4.17 compile org.codehaus.groovy groovy-templates - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-sql.pom groovy-2.4.17/debian/poms/groovy-sql.pom --- groovy-2.4.16/debian/poms/groovy-sql.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-sql.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-sql - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-swing.pom groovy-2.4.17/debian/poms/groovy-swing.pom --- groovy-2.4.16/debian/poms/groovy-swing.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-swing.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-swing - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-templates.pom groovy-2.4.17/debian/poms/groovy-templates.pom --- groovy-2.4.16/debian/poms/groovy-templates.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-templates.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-templates - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,13 +615,13 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile org.codehaus.groovy groovy-xml - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-testng.pom groovy-2.4.17/debian/poms/groovy-testng.pom --- groovy-2.4.16/debian/poms/groovy-testng.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-testng.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-testng - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-test.pom groovy-2.4.17/debian/poms/groovy-test.pom --- groovy-2.4.16/debian/poms/groovy-test.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-test.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-test - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/poms/groovy-xml.pom groovy-2.4.17/debian/poms/groovy-xml.pom --- groovy-2.4.16/debian/poms/groovy-xml.pom 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/poms/groovy-xml.pom 2020-02-14 04:26:03.000000000 +0000 @@ -3,7 +3,7 @@ 4.0.0 org.codehaus.groovy groovy-xml - 2.4.16 + 2.4.17 jar Apache Groovy Groovy: A powerful, dynamic language for the JVM @@ -615,7 +615,7 @@ org.codehaus.groovy groovy - 2.4.16 + 2.4.17 compile diff -Nru groovy-2.4.16/debian/watch groovy-2.4.17/debian/watch --- groovy-2.4.16/debian/watch 2019-02-20 22:16:46.000000000 +0000 +++ groovy-2.4.17/debian/watch 2020-02-14 04:26:03.000000000 +0000 @@ -1,3 +1,3 @@ -version=3 +version=4 opts=uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha|b|a)[\-\.]?\d*)$/$1~$2/,dversionmangle=s/\+dfsg//,downloadurlmangle=s|http://www.apache.org/dyn/closer.cgi/|http://dist.apache.org/repos/dist/release/| \ -http://www.groovy-lang.org/download.html .*/(?:apache-)?groovy-src-(\d.*)(?:-incubating)?\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz))) +https://www.groovy-lang.org/download.html .*/(?:apache-)?groovy-src-(\d.*)(?:-incubating)?\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz))) diff -Nru groovy-2.4.16/gradle/docs.gradle groovy-2.4.17/gradle/docs.gradle --- groovy-2.4.16/gradle/docs.gradle 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/gradle/docs.gradle 2019-07-15 09:25:34.000000000 +0000 @@ -20,7 +20,7 @@ if (JavaVersion.current().java7Compatible) { dependsOn 'asciidocAll', 'assembleAsciidoc' } - ext.footer = 'Copyright © 2003-2018 The Apache Software Foundation. All rights reserved.' + ext.footer = 'Copyright © 2003-2019 The Apache Software Foundation. All rights reserved.' ext.title = "Groovy ${groovyVersion}" } diff -Nru groovy-2.4.16/gradle.properties groovy-2.4.17/gradle.properties --- groovy-2.4.16/gradle.properties 2018-12-09 20:03:34.000000000 +0000 +++ groovy-2.4.17/gradle.properties 2019-07-15 09:25:34.000000000 +0000 @@ -13,9 +13,9 @@ # See the License for the specific language governing permissions and # limitations under the License. -groovyVersion = 2.4.16 +groovyVersion = 2.4.17 # bundle version format: major('.'minor('.'micro('.'qualifier)?)?)? (first 3 only digits) -groovyBundleVersion = 2.4.16 +groovyBundleVersion = 2.4.17 gradle_version=2.14.1 diff -Nru groovy-2.4.16/NOTICE groovy-2.4.17/NOTICE --- groovy-2.4.16/NOTICE 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/NOTICE 2019-07-15 09:25:34.000000000 +0000 @@ -1,5 +1,5 @@ Apache Groovy -Copyright 2003-2018 The Apache Software Foundation +Copyright 2003-2019 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff -Nru groovy-2.4.16/notices/NOTICE-BASE groovy-2.4.17/notices/NOTICE-BASE --- groovy-2.4.16/notices/NOTICE-BASE 2018-12-09 20:03:08.000000000 +0000 +++ groovy-2.4.17/notices/NOTICE-BASE 2019-07-15 09:25:34.000000000 +0000 @@ -1,5 +1,5 @@ Apache Groovy -Copyright 2003-2018 The Apache Software Foundation +Copyright 2003-2019 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff -Nru groovy-2.4.16/notices/NOTICE-BINZIP groovy-2.4.17/notices/NOTICE-BINZIP --- groovy-2.4.16/notices/NOTICE-BINZIP 2018-12-09 20:03:12.000000000 +0000 +++ groovy-2.4.17/notices/NOTICE-BINZIP 2019-07-15 09:25:34.000000000 +0000 @@ -1,5 +1,5 @@ Apache Groovy -Copyright 2003-2018 The Apache Software Foundation +Copyright 2003-2019 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff -Nru groovy-2.4.16/notices/NOTICE-GROOID groovy-2.4.17/notices/NOTICE-GROOID --- groovy-2.4.16/notices/NOTICE-GROOID 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/notices/NOTICE-GROOID 2019-07-15 09:25:34.000000000 +0000 @@ -1,5 +1,5 @@ Apache Groovy -Copyright 2003-2018 The Apache Software Foundation +Copyright 2003-2019 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff -Nru groovy-2.4.16/notices/NOTICE-GROOIDJARJAR groovy-2.4.17/notices/NOTICE-GROOIDJARJAR --- groovy-2.4.16/notices/NOTICE-GROOIDJARJAR 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/notices/NOTICE-GROOIDJARJAR 2019-07-15 09:25:34.000000000 +0000 @@ -1,5 +1,5 @@ Apache Groovy -Copyright 2003-2018 The Apache Software Foundation +Copyright 2003-2019 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff -Nru groovy-2.4.16/notices/NOTICE-JARJAR groovy-2.4.17/notices/NOTICE-JARJAR --- groovy-2.4.16/notices/NOTICE-JARJAR 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/notices/NOTICE-JARJAR 2019-07-15 09:25:34.000000000 +0000 @@ -1,5 +1,5 @@ Apache Groovy -Copyright 2003-2018 The Apache Software Foundation +Copyright 2003-2019 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff -Nru groovy-2.4.16/notices/NOTICE-SDK groovy-2.4.17/notices/NOTICE-SDK --- groovy-2.4.16/notices/NOTICE-SDK 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/notices/NOTICE-SDK 2019-07-15 09:25:34.000000000 +0000 @@ -1,5 +1,5 @@ Apache Groovy -Copyright 2003-2018 The Apache Software Foundation +Copyright 2003-2019 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff -Nru groovy-2.4.16/src/main/org/codehaus/groovy/ast/ConstructorNode.java groovy-2.4.17/src/main/org/codehaus/groovy/ast/ConstructorNode.java --- groovy-2.4.16/src/main/org/codehaus/groovy/ast/ConstructorNode.java 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/src/main/org/codehaus/groovy/ast/ConstructorNode.java 2019-07-15 09:25:34.000000000 +0000 @@ -23,29 +23,19 @@ import org.codehaus.groovy.ast.stmt.ExpressionStatement; import org.codehaus.groovy.ast.stmt.Statement; - /** * Represents a constructor declaration - * - * @author James Strachan */ public class ConstructorNode extends MethodNode { - + public ConstructorNode(int modifiers, Statement code) { this(modifiers, Parameter.EMPTY_ARRAY, ClassNode.EMPTY_ARRAY, code); } - + public ConstructorNode(int modifiers, Parameter[] parameters, ClassNode[] exceptions, Statement code) { - super("",modifiers,ClassHelper.VOID_TYPE,parameters,exceptions,code); - - // This variable scope is thrown out and replaced with a different one during semantic analysis. - VariableScope scope = new VariableScope(); - for (int i = 0; i < parameters.length; i++) { - scope.putDeclaredVariable(parameters[i]); - } - this.setVariableScope(scope); + super("", modifiers, ClassHelper.VOID_TYPE, parameters, exceptions, code); } - + public boolean firstStatementIsSpecialConstructorCall() { Statement code = getFirstStatement(); if (code == null || !(code instanceof ExpressionStatement)) return false; diff -Nru groovy-2.4.16/src/main/org/codehaus/groovy/ast/MethodNode.java groovy-2.4.17/src/main/org/codehaus/groovy/ast/MethodNode.java --- groovy-2.4.16/src/main/org/codehaus/groovy/ast/MethodNode.java 2018-12-09 20:03:12.000000000 +0000 +++ groovy-2.4.17/src/main/org/codehaus/groovy/ast/MethodNode.java 2019-07-15 09:25:34.000000000 +0000 @@ -57,8 +57,6 @@ this.modifiers = modifiers; this.code = code; setReturnType(returnType); - VariableScope scope = new VariableScope(); - setVariableScope(scope); setParameters(parameters); this.hasDefault = false; this.exceptions = exceptions; diff -Nru groovy-2.4.16/src/main/org/codehaus/groovy/classgen/AsmClassGenerator.java groovy-2.4.17/src/main/org/codehaus/groovy/classgen/AsmClassGenerator.java --- groovy-2.4.16/src/main/org/codehaus/groovy/classgen/AsmClassGenerator.java 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/src/main/org/codehaus/groovy/classgen/AsmClassGenerator.java 2019-07-15 09:25:34.000000000 +0000 @@ -967,6 +967,7 @@ new ClassExpression(outer), expression.getProperty() ); + pexp.getObjectExpression().setSourcePosition(objectExpression); pexp.visit(controller.getAcg()); return; } diff -Nru groovy-2.4.16/src/main/org/codehaus/groovy/tools/FileSystemCompiler.java groovy-2.4.17/src/main/org/codehaus/groovy/tools/FileSystemCompiler.java --- groovy-2.4.16/src/main/org/codehaus/groovy/tools/FileSystemCompiler.java 2018-12-09 20:03:12.000000000 +0000 +++ groovy-2.4.17/src/main/org/codehaus/groovy/tools/FileSystemCompiler.java 2019-07-15 09:25:34.000000000 +0000 @@ -84,7 +84,7 @@ public static void displayVersion() { String version = GroovySystem.getVersion(); System.err.println("Groovy compiler version " + version); - System.err.println("Copyright 2003-2018 The Apache Software Foundation. http://groovy-lang.org/"); + System.err.println("Copyright 2003-2019 The Apache Software Foundation. http://groovy-lang.org/"); System.err.println(""); } diff -Nru groovy-2.4.16/src/main/org/codehaus/groovy/transform/ASTTestTransformation.groovy groovy-2.4.17/src/main/org/codehaus/groovy/transform/ASTTestTransformation.groovy --- groovy-2.4.16/src/main/org/codehaus/groovy/transform/ASTTestTransformation.groovy 2018-12-09 20:03:12.000000000 +0000 +++ groovy-2.4.17/src/main/org/codehaus/groovy/transform/ASTTestTransformation.groovy 2019-07-15 09:25:34.000000000 +0000 @@ -84,7 +84,7 @@ for (int i = testClosure.lineNumber; i <= testClosure.lastLineNumber; i++) { sb.append(source.source.getLine(i, new Janitor())).append('\n') } - def testSource = sb.substring(testClosure.columnNumber + 1, sb.length()) + def testSource = sb.substring(testClosure.columnNumber, sb.length()) testSource = testSource.substring(0, testSource.lastIndexOf('}')) CompilerConfiguration config = new CompilerConfiguration() def customizer = new ImportCustomizer() diff -Nru groovy-2.4.16/src/main/org/codehaus/groovy/vmplugin/v5/Java5.java groovy-2.4.17/src/main/org/codehaus/groovy/vmplugin/v5/Java5.java --- groovy-2.4.16/src/main/org/codehaus/groovy/vmplugin/v5/Java5.java 2018-12-09 20:03:12.000000000 +0000 +++ groovy-2.4.17/src/main/org/codehaus/groovy/vmplugin/v5/Java5.java 2019-07-15 09:25:34.000000000 +0000 @@ -431,18 +431,20 @@ Annotation[][] annotations = constructor.getParameterAnnotations(); int diff = parameterCount - annotations.length; if (diff > 0) { - // May happen on JDK8 and below, but we only expect to have to - // add a single element to the front of the array to account - // for the synthetic outer reference - if (diff > 1) { + // May happen on JDK8 and below. We add elements to the front of the array to account for the synthetic params: + // - for an inner class we expect one param to account for the synthetic outer reference + // - for an enum we expect two params to account for the synthetic name and ordinal + if ((!constructor.getDeclaringClass().isEnum() && diff > 1) || diff > 2) { throw new GroovyBugError( "Constructor parameter annotations length [" + annotations.length + "] " + "does not match the parameter length: " + constructor ); } Annotation[][] adjusted = new Annotation[parameterCount][]; - adjusted[0] = new Annotation[0]; - System.arraycopy(annotations, 0, adjusted, 1, annotations.length); + for (int i = 0; i < diff; i++) { + adjusted[i] = new Annotation[0]; + } + System.arraycopy(annotations, 0, adjusted, diff, annotations.length); return adjusted; } return annotations; diff -Nru groovy-2.4.16/src/spec/doc/core-metaprogramming.adoc groovy-2.4.17/src/spec/doc/core-metaprogramming.adoc --- groovy-2.4.16/src/spec/doc/core-metaprogramming.adoc 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/src/spec/doc/core-metaprogramming.adoc 2019-07-15 09:25:34.000000000 +0000 @@ -97,7 +97,7 @@ ==== get/setMetaClass -You can a access an object's `metaClass` or set your own `MetaClass` implementation for changing the default interception mechanism. For example, you can write your own implementation of the `MetaClass` interface and assign it to objects in order to change the interception mechanism: +You can access an object's `metaClass` or set your own `MetaClass` implementation for changing the default interception mechanism. For example, you can write your own implementation of the `MetaClass` interface and assign it to objects in order to change the interception mechanism: [source,groovy] ---- diff -Nru groovy-2.4.16/src/spec/doc/style-guide.adoc groovy-2.4.17/src/spec/doc/style-guide.adoc --- groovy-2.4.16/src/spec/doc/style-guide.adoc 2018-12-09 20:03:08.000000000 +0000 +++ groovy-2.4.17/src/spec/doc/style-guide.adoc 2019-07-15 09:25:34.000000000 +0000 @@ -477,7 +477,7 @@ Lots of new methods are applied to various types, through decoration, thanks to the dynamic nature of the language. You can find lots of very useful methods on String, Files, Streams, Collections, and much more: -http://beta.groovy-lang.org/gdk.html +http://groovy-lang.org/gdk.html == The power of switch diff -Nru groovy-2.4.16/src/test/groovy/bugs/Groovy8008Bug.java groovy-2.4.17/src/test/groovy/bugs/Groovy8008Bug.java --- groovy-2.4.16/src/test/groovy/bugs/Groovy8008Bug.java 2018-12-09 20:03:12.000000000 +0000 +++ groovy-2.4.17/src/test/groovy/bugs/Groovy8008Bug.java 2019-07-15 09:25:34.000000000 +0000 @@ -47,7 +47,7 @@ Class innerClass = Inner.class; Constructor ctor = innerClass.getDeclaredConstructor(Groovy8008Bug.class, String.class, Date.class, String.class); - assertEquals(4, ctor.getParameterTypes().length); //Groovy8008Bug,String,Date,String + assertEquals(4, ctor.getParameterTypes().length); // JDK 9 and above correctly report 4 // assertEquals(3, ctor.getParameterAnnotations().length); //[],[@Anno1,@Anno2],[@Anno2] @@ -58,24 +58,57 @@ assertEquals(1, ctors.size()); Parameter[] params = ctors.get(0).getParameters(); + checkOuterRef(params[0], Groovy8008Bug.class); + checkStringWithNoAnnos(params[1]); + checkDateWithTwoAnnos(params[2]); + checkStringWithOneAnno(params[3]); + + // do the same again for an inner inner class + Class innerInnerClass = Inner.InnerInner.class; + Constructor innerCtor = innerInnerClass.getDeclaredConstructor(Groovy8008Bug.Inner.class, String.class, Date.class, String.class); + assertEquals(4, innerCtor.getParameterTypes().length); - assertEquals(Groovy8008Bug.class.getName(), params[0].getType().getName()); - assertEquals(0, params[0].getAnnotations().size()); + cn = new ClassNode(innerInnerClass); - assertEquals(String.class.getName(), params[1].getType().getName()); - assertEquals(0, params[1].getAnnotations().size()); + // trigger the call to VMPlugin#configureClassNode(CompileUnit,ClassNode) + ctors = cn.getDeclaredConstructors(); + assertEquals(1, ctors.size()); + + params = ctors.get(0).getParameters(); + checkOuterRef(params[0], Groovy8008Bug.Inner.class); + checkStringWithNoAnnos(params[1]); + checkDateWithTwoAnnos(params[2]); + checkStringWithOneAnno(params[3]); + } + + private void checkOuterRef(Parameter param, Class outerClass) { + assertEquals(outerClass.getName(), param.getType().getName()); + assertEquals(0, param.getAnnotations().size()); + } - assertEquals(Date.class.getName(), params[2].getType().getName()); - assertEquals(2, params[2].getAnnotations().size()); - assertEquals(TestAnno1.class.getName(), params[2].getAnnotations().get(0).getClassNode().getName()); - assertEquals(TestAnno2.class.getName(), params[2].getAnnotations().get(1).getClassNode().getName()); - - assertEquals(String.class.getName(), params[3].getType().getName()); - assertEquals(1, params[3].getAnnotations().size()); - assertEquals(TestAnno2.class.getName(), params[3].getAnnotations().get(0).getClassNode().getName()); + private void checkStringWithOneAnno(Parameter param) { + assertEquals(String.class.getName(), param.getType().getName()); + assertEquals(1, param.getAnnotations().size()); + assertEquals(TestAnno2.class.getName(), param.getAnnotations().get(0).getClassNode().getName()); + } + + private void checkStringWithNoAnnos(Parameter param) { + assertEquals(String.class.getName(), param.getType().getName()); + assertEquals(0, param.getAnnotations().size()); + } + + private void checkDateWithTwoAnnos(Parameter param2) { + assertEquals(Date.class.getName(), param2.getType().getName()); + assertEquals(2, param2.getAnnotations().size()); + assertEquals(TestAnno1.class.getName(), param2.getAnnotations().get(0).getClassNode().getName()); + assertEquals(TestAnno2.class.getName(), param2.getAnnotations().get(1).getClassNode().getName()); } private class Inner { private Inner(String arg1, @TestAnno1 @TestAnno2 Date arg2, @TestAnno2 String arg3) { } + + private class InnerInner { + private InnerInner(String arg1, @TestAnno1 @TestAnno2 Date arg2, @TestAnno2 String arg3) { } + } } } diff -Nru groovy-2.4.16/src/test/groovy/bugs/groovy8953/Enum8953.java groovy-2.4.17/src/test/groovy/bugs/groovy8953/Enum8953.java --- groovy-2.4.16/src/test/groovy/bugs/groovy8953/Enum8953.java 1970-01-01 00:00:00.000000000 +0000 +++ groovy-2.4.17/src/test/groovy/bugs/groovy8953/Enum8953.java 2019-07-15 09:25:34.000000000 +0000 @@ -0,0 +1,28 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package groovy.bugs.groovy8953; + +public enum Enum8953 { + A("value"); + public String value; + + Enum8953(@Deprecated final String value) { + this.value = value; + } +} diff -Nru groovy-2.4.16/src/test/groovy/bugs/groovy8953/SyntheticParameterAnnotationsBug.groovy groovy-2.4.17/src/test/groovy/bugs/groovy8953/SyntheticParameterAnnotationsBug.groovy --- groovy-2.4.16/src/test/groovy/bugs/groovy8953/SyntheticParameterAnnotationsBug.groovy 1970-01-01 00:00:00.000000000 +0000 +++ groovy-2.4.17/src/test/groovy/bugs/groovy8953/SyntheticParameterAnnotationsBug.groovy 2019-07-15 09:25:34.000000000 +0000 @@ -0,0 +1,31 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package groovy.bugs.groovy8953 + +class SyntheticParameterAnnotationsBug extends GroovyTestCase { + void testEnumConstructorWithSyntheticParamUsageWithAsmResolvingDisabled() { + assertScript ''' + import org.codehaus.groovy.control.CompilerConfiguration + + def script = "assert groovy.bugs.groovy8953.Enum8953.A.value == 'value'" + def config = new CompilerConfiguration() + new GroovyShell(config).evaluate(script, "bug8953_dummyName.groovy") + ''' + } +} diff -Nru groovy-2.4.16/src/test/groovy/bugs/Groovy9010Bug.groovy groovy-2.4.17/src/test/groovy/bugs/Groovy9010Bug.groovy --- groovy-2.4.16/src/test/groovy/bugs/Groovy9010Bug.groovy 1970-01-01 00:00:00.000000000 +0000 +++ groovy-2.4.17/src/test/groovy/bugs/Groovy9010Bug.groovy 2019-07-15 09:25:34.000000000 +0000 @@ -0,0 +1,30 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package groovy.bugs + +import gls.CompilableTestSupport + +class Groovy9010Bug extends CompilableTestSupport { + void testASTTestWithNoSpacesInClosure() { + shouldCompile ''' + @groovy.transform.ASTTest({assert 1==1}) + def x + ''' + } +} diff -Nru groovy-2.4.16/subprojects/groovy-console/NOTICE groovy-2.4.17/subprojects/groovy-console/NOTICE --- groovy-2.4.16/subprojects/groovy-console/NOTICE 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/subprojects/groovy-console/NOTICE 2019-07-15 09:25:34.000000000 +0000 @@ -1,5 +1,5 @@ Apache Groovy -Copyright 2003-2018 The Apache Software Foundation +Copyright 2003-2019 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff -Nru groovy-2.4.16/subprojects/groovy-console/src/main/groovy/groovy/ui/Console.groovy groovy-2.4.17/subprojects/groovy-console/src/main/groovy/groovy/ui/Console.groovy --- groovy-2.4.16/subprojects/groovy-console/src/main/groovy/groovy/ui/Console.groovy 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/subprojects/groovy-console/src/main/groovy/groovy/ui/Console.groovy 2019-07-15 09:25:34.000000000 +0000 @@ -1269,7 +1269,7 @@ } void selectAll(EventObject evt = null) { - invokeTextAction(evt, { source -> source.selectAll() }) + invokeTextAction(evt, { source -> source.selectAll() }, copyFromComponent ?: inputArea) } void setRowNumAndColNum() { diff -Nru groovy-2.4.16/subprojects/groovy-console/src/main/groovy/groovy/ui/ConsoleView.groovy groovy-2.4.17/subprojects/groovy-console/src/main/groovy/groovy/ui/ConsoleView.groovy --- groovy-2.4.16/subprojects/groovy-console/src/main/groovy/groovy/ui/ConsoleView.groovy 2018-12-09 20:03:10.000000000 +0000 +++ groovy-2.4.17/subprojects/groovy-console/src/main/groovy/groovy/ui/ConsoleView.groovy 2019-07-15 09:25:34.000000000 +0000 @@ -68,6 +68,24 @@ build(statusBarClass) } +inputEditor.textEditor.componentPopupMenu = popupMenu { + menuItem(cutAction) + menuItem(copyAction) + menuItem(pasteAction) + menuItem(selectAllAction) + separator() + menuItem(undoAction) + menuItem(redoAction) + separator() + menuItem(runAction) + menuItem(runSelectionAction) +} + +outputArea.componentPopupMenu = popupMenu { + menuItem(copyAction) + menuItem(selectAllAction) + menuItem(clearOutputAction) +} controller.promptStyle = promptStyle controller.commandStyle = commandStyle