You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by su...@apache.org on 2023/09/28 21:17:24 UTC
[groovy] branch master updated (d45bb3f255 -> 9b4634feb2)
This is an automated email from the ASF dual-hosted git repository.
sunlan pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
from d45bb3f255 Bump org.jfrog.buildinfo:build-info-extractor-gradle from 5.1.8 to 5.1.9
new 1273fe3e7c GROOVY-11183: Add `allThreads` method to `Thread`
new abbc993ae0 Update link to JDK21
new 9b4634feb2 Ignore failure for removing large unused packages
The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.github/workflows/groovy-build-coverage.yml | 22 +++++++++++--------
.github/workflows/groovy-build-dist.yml | 22 +++++++++++--------
.github/workflows/groovy-build-test-aux.yml | 22 +++++++++++--------
.github/workflows/groovy-build-test-ea.yml | 2 +-
.github/workflows/groovy-build-test-main.yml | 22 +++++++++++--------
.../groovy/runtime/DefaultGroovyStaticMethods.java | 25 ++++++++++++++++++++++
.../runtime/DefaultGroovyStaticMethodsTest.groovy | 4 ++++
7 files changed, 82 insertions(+), 37 deletions(-)
[groovy] 03/03: Ignore failure for removing large unused packages
Posted by su...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
sunlan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
commit 9b4634feb267ae6836eb97c41d4dbd0a2df3ecfe
Author: Daniel Sun <su...@apache.org>
AuthorDate: Thu Sep 28 02:15:59 2023 +0800
Ignore failure for removing large unused packages
---
.github/workflows/groovy-build-coverage.yml | 22 +++++++++++++---------
.github/workflows/groovy-build-dist.yml | 22 +++++++++++++---------
.github/workflows/groovy-build-test-aux.yml | 22 +++++++++++++---------
.github/workflows/groovy-build-test-main.yml | 22 +++++++++++++---------
4 files changed, 52 insertions(+), 36 deletions(-)
diff --git a/.github/workflows/groovy-build-coverage.yml b/.github/workflows/groovy-build-coverage.yml
index 65185eb05a..d94b938105 100644
--- a/.github/workflows/groovy-build-coverage.yml
+++ b/.github/workflows/groovy-build-coverage.yml
@@ -34,17 +34,21 @@ jobs:
- uses: actions/checkout@v4
- name: Free disk space
run: |
- echo "Removing large unused packages"
- sudo apt-get remove -y azure-cli google-cloud-sdk microsoft-edge-stable google-chrome-stable powershell mono-devel >/dev/null 2>&1
- sudo apt-get autoclean -y >/dev/null 2>&1
- sudo apt-get clean -y >/dev/null 2>&1
- sudo apt-get autoremove -y >/dev/null 2>&1
+ {
+ echo "Removing large unused packages"
+ sudo apt-get remove -y azure-cli google-cloud-sdk microsoft-edge-stable google-chrome-stable powershell mono-devel >/dev/null 2>&1
+ sudo apt-get autoclean -y >/dev/null 2>&1
+ sudo apt-get clean -y >/dev/null 2>&1
+ sudo apt-get autoremove -y >/dev/null 2>&1
- echo "Removing large unused files/directories"
- sudo rm -rf /usr/share/dotnet /usr/local/lib/android /usr/local/lib/node_modules /usr/local/share/powershell /usr/local/share/chromium
- sudo rm -rf /opt/ghc /usr/local/share/boost "$AGENT_TOOLSDIRECTORY" /usr/local/graalvm /usr/local/.ghcup
+ echo "Removing large unused files/directories"
+ sudo rm -rf /usr/share/dotnet /usr/local/lib/android /usr/local/lib/node_modules /usr/local/share/powershell /usr/local/share/chromium
+ sudo rm -rf /opt/ghc /usr/local/share/boost "$AGENT_TOOLSDIRECTORY" /usr/local/graalvm /usr/local/.ghcup
- sudo df -h
+ sudo df -h
+ } || {
+ echo "[WARNING] Failed to remove large unused packages"
+ }
- name: Set up JDK
uses: actions/setup-java@v3
with:
diff --git a/.github/workflows/groovy-build-dist.yml b/.github/workflows/groovy-build-dist.yml
index c8b80d1d92..cb72dd246f 100644
--- a/.github/workflows/groovy-build-dist.yml
+++ b/.github/workflows/groovy-build-dist.yml
@@ -35,17 +35,21 @@ jobs:
run: sudo apt-get install -y graphviz
- name: Free disk space
run: |
- echo "Removing large unused packages"
- sudo apt-get remove -y azure-cli google-cloud-sdk microsoft-edge-stable google-chrome-stable powershell mono-devel >/dev/null 2>&1
- sudo apt-get autoclean -y >/dev/null 2>&1
- sudo apt-get clean -y >/dev/null 2>&1
- sudo apt-get autoremove -y >/dev/null 2>&1
+ {
+ echo "Removing large unused packages"
+ sudo apt-get remove -y azure-cli google-cloud-sdk microsoft-edge-stable google-chrome-stable powershell mono-devel >/dev/null 2>&1
+ sudo apt-get autoclean -y >/dev/null 2>&1
+ sudo apt-get clean -y >/dev/null 2>&1
+ sudo apt-get autoremove -y >/dev/null 2>&1
- echo "Removing large unused files/directories"
- sudo rm -rf /usr/share/dotnet /usr/local/lib/android /usr/local/lib/node_modules /usr/local/share/powershell /usr/local/share/chromium
- sudo rm -rf /opt/ghc /usr/local/share/boost "$AGENT_TOOLSDIRECTORY" /usr/local/graalvm /usr/local/.ghcup
+ echo "Removing large unused files/directories"
+ sudo rm -rf /usr/share/dotnet /usr/local/lib/android /usr/local/lib/node_modules /usr/local/share/powershell /usr/local/share/chromium
+ sudo rm -rf /opt/ghc /usr/local/share/boost "$AGENT_TOOLSDIRECTORY" /usr/local/graalvm /usr/local/.ghcup
- sudo df -h
+ sudo df -h
+ } || {
+ echo "[WARNING] Failed to remove large unused packages"
+ }
- name: Set up JDK
uses: actions/setup-java@v3
with:
diff --git a/.github/workflows/groovy-build-test-aux.yml b/.github/workflows/groovy-build-test-aux.yml
index 8b1e6733dc..52c2bb1c49 100644
--- a/.github/workflows/groovy-build-test-aux.yml
+++ b/.github/workflows/groovy-build-test-aux.yml
@@ -34,17 +34,21 @@ jobs:
- uses: actions/checkout@v4
- name: Free disk space
run: |
- echo "Removing large unused packages"
- sudo apt-get remove -y azure-cli google-cloud-sdk microsoft-edge-stable google-chrome-stable powershell mono-devel >/dev/null 2>&1
- sudo apt-get autoclean -y >/dev/null 2>&1
- sudo apt-get clean -y >/dev/null 2>&1
- sudo apt-get autoremove -y >/dev/null 2>&1
+ {
+ echo "Removing large unused packages"
+ sudo apt-get remove -y azure-cli google-cloud-sdk microsoft-edge-stable google-chrome-stable powershell mono-devel >/dev/null 2>&1
+ sudo apt-get autoclean -y >/dev/null 2>&1
+ sudo apt-get clean -y >/dev/null 2>&1
+ sudo apt-get autoremove -y >/dev/null 2>&1
- echo "Removing large unused files/directories"
- sudo rm -rf /usr/share/dotnet /usr/local/lib/android /usr/local/lib/node_modules /usr/local/share/powershell /usr/local/share/chromium
- sudo rm -rf /opt/ghc /usr/local/share/boost "$AGENT_TOOLSDIRECTORY" /usr/local/graalvm /usr/local/.ghcup
+ echo "Removing large unused files/directories"
+ sudo rm -rf /usr/share/dotnet /usr/local/lib/android /usr/local/lib/node_modules /usr/local/share/powershell /usr/local/share/chromium
+ sudo rm -rf /opt/ghc /usr/local/share/boost "$AGENT_TOOLSDIRECTORY" /usr/local/graalvm /usr/local/.ghcup
- sudo df -h
+ sudo df -h
+ } || {
+ echo "[WARNING] Failed to remove large unused packages"
+ }
- name: Set up JDK
uses: actions/setup-java@v3
with:
diff --git a/.github/workflows/groovy-build-test-main.yml b/.github/workflows/groovy-build-test-main.yml
index 3df72b2e27..a457b83c4b 100644
--- a/.github/workflows/groovy-build-test-main.yml
+++ b/.github/workflows/groovy-build-test-main.yml
@@ -34,17 +34,21 @@ jobs:
- uses: actions/checkout@v4
- name: Free disk space
run: |
- echo "Removing large unused packages"
- sudo apt-get remove -y azure-cli google-cloud-sdk microsoft-edge-stable google-chrome-stable powershell mono-devel >/dev/null 2>&1
- sudo apt-get autoclean -y >/dev/null 2>&1
- sudo apt-get clean -y >/dev/null 2>&1
- sudo apt-get autoremove -y >/dev/null 2>&1
+ {
+ echo "Removing large unused packages"
+ sudo apt-get remove -y azure-cli google-cloud-sdk microsoft-edge-stable google-chrome-stable powershell mono-devel >/dev/null 2>&1
+ sudo apt-get autoclean -y >/dev/null 2>&1
+ sudo apt-get clean -y >/dev/null 2>&1
+ sudo apt-get autoremove -y >/dev/null 2>&1
- echo "Removing large unused files/directories"
- sudo rm -rf /usr/share/dotnet /usr/local/lib/android /usr/local/lib/node_modules /usr/local/share/powershell /usr/local/share/chromium
- sudo rm -rf /opt/ghc /usr/local/share/boost "$AGENT_TOOLSDIRECTORY" /usr/local/graalvm /usr/local/.ghcup
+ echo "Removing large unused files/directories"
+ sudo rm -rf /usr/share/dotnet /usr/local/lib/android /usr/local/lib/node_modules /usr/local/share/powershell /usr/local/share/chromium
+ sudo rm -rf /opt/ghc /usr/local/share/boost "$AGENT_TOOLSDIRECTORY" /usr/local/graalvm /usr/local/.ghcup
- sudo df -h
+ sudo df -h
+ } || {
+ echo "[WARNING] Failed to remove large unused packages"
+ }
- name: Set up JDK
uses: actions/setup-java@v3
with:
[groovy] 02/03: Update link to JDK21
Posted by su...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
sunlan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
commit abbc993ae0a0d618223fdfd011a2af63d4041859
Author: Daniel Sun <su...@apache.org>
AuthorDate: Thu Sep 28 01:40:13 2023 +0800
Update link to JDK21
---
.github/workflows/groovy-build-test-ea.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/groovy-build-test-ea.yml b/.github/workflows/groovy-build-test-ea.yml
index 52c6b13a6a..dc312b38a7 100644
--- a/.github/workflows/groovy-build-test-ea.yml
+++ b/.github/workflows/groovy-build-test-ea.yml
@@ -29,7 +29,7 @@ jobs:
java: [17]
# The jdk links of "install-jdk.sh" are sometimes outdated, so we have to download openjdk releases from https://jdk.java.net/ by ourselves.
jdk: ["https://download.java.net/java/GA/jdk20/bdc68b4b9cbc4ebcb30745c85038d91d/36/GPL/openjdk-20_linux-x64_bin.tar.gz",
- "https://download.java.net/java/early_access/jdk21/33/GPL/openjdk-21-ea+33_linux-x64_bin.tar.gz"]
+ "https://download.java.net/java/GA/jdk21/fd2272bbf8e04c3dbaee13770090416c/35/GPL/openjdk-21_linux-x64_bin.tar.gz"]
runs-on: ${{ matrix.os }}
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GE_ACCESS_TOKEN }}
[groovy] 01/03: GROOVY-11183: Add `allThreads` method to `Thread`
Posted by su...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
sunlan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
commit 1273fe3e7ce5d02e732576aa1580441595b5df6c
Author: Daniel Sun <su...@apache.org>
AuthorDate: Thu Sep 28 01:30:37 2023 +0800
GROOVY-11183: Add `allThreads` method to `Thread`
---
.../groovy/runtime/DefaultGroovyStaticMethods.java | 25 ++++++++++++++++++++++
.../runtime/DefaultGroovyStaticMethodsTest.groovy | 4 ++++
2 files changed, 29 insertions(+)
diff --git a/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyStaticMethods.java b/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyStaticMethods.java
index 71f7883eab..52181bb357 100644
--- a/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyStaticMethods.java
+++ b/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyStaticMethods.java
@@ -30,7 +30,9 @@ import java.lang.management.ThreadMXBean;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Arrays;
+import java.util.List;
import java.util.Locale;
+import java.util.Objects;
import java.util.ResourceBundle;
import java.util.regex.Matcher;
import java.util.stream.Collectors;
@@ -115,6 +117,29 @@ public class DefaultGroovyStaticMethods {
.collect(Collectors.joining(""));
}
+ /**
+ * Get all threads
+ *
+ * @param self placeholder variable used by Groovy categories; ignored for default static methods
+ * @return all threads
+ * @since 4.0.16
+ */
+ public static List<Thread> allThreads(Thread self) {
+ ThreadGroup rootGroup = Thread.currentThread().getThreadGroup();
+ for (ThreadGroup parentGroup; (parentGroup = rootGroup.getParent()) != null; ) {
+ rootGroup = parentGroup;
+ }
+
+ Thread[] threads = new Thread[rootGroup.activeCount()];
+ while (rootGroup.enumerate(threads, true) == threads.length) {
+ threads = new Thread[threads.length * 2];
+ }
+
+ return Arrays.stream(threads)
+ .filter(Objects::nonNull)
+ .collect(Collectors.toUnmodifiableList());
+ }
+
/**
* Get the last hidden matcher that the system used to do a match.
*
diff --git a/src/test/org/codehaus/groovy/runtime/DefaultGroovyStaticMethodsTest.groovy b/src/test/org/codehaus/groovy/runtime/DefaultGroovyStaticMethodsTest.groovy
index 4a25981cdd..5f6c305b36 100644
--- a/src/test/org/codehaus/groovy/runtime/DefaultGroovyStaticMethodsTest.groovy
+++ b/src/test/org/codehaus/groovy/runtime/DefaultGroovyStaticMethodsTest.groovy
@@ -35,4 +35,8 @@ class DefaultGroovyStaticMethodsTest extends GroovyTestCase {
void testDumpAll() {
assert Thread.dumpAll().contains("dumpAll")
}
+
+ void testAllThreads() {
+ assert Thread.allThreads().stream().anyMatch(t -> 'Finalizer' == t.name)
+ }
}