From f25ad497d218fbd1f863914d5ae9f754f9a83ac4 Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Tue, 19 Sep 2023 23:57:19 +0100 Subject: [PATCH 1/7] Use oracle's new container registry for docker images. --- Dockerfile.graalvm-jvm | 2 +- Dockerfile.graalvm-jvm.ci | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile.graalvm-jvm b/Dockerfile.graalvm-jvm index a085b0d..c217048 100644 --- a/Dockerfile.graalvm-jvm +++ b/Dockerfile.graalvm-jvm @@ -1,4 +1,4 @@ -FROM ghcr.io/graalvm/native-image:latest as build +FROM container-registry.oracle.com/graalvm/native-image:latest as build WORKDIR /app/ diff --git a/Dockerfile.graalvm-jvm.ci b/Dockerfile.graalvm-jvm.ci index 53be7ba..6140fe4 100644 --- a/Dockerfile.graalvm-jvm.ci +++ b/Dockerfile.graalvm-jvm.ci @@ -1,4 +1,4 @@ -FROM ghcr.io/graalvm/native-image:latest as build +FROM container-registry.oracle.com/graalvm/native-image:latest as build RUN jlink \ --add-modules java.base,java.logging,java.sql,java.management,java.xml,java.naming,java.desktop,jdk.crypto.ec \ From 922ef589c9b55d9666af4596b302af3a3092311c Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Tue, 19 Sep 2023 23:57:44 +0100 Subject: [PATCH 2/7] actions: use java 21 in CI --- .github/workflows/ci.yml | 2 +- .github/workflows/docker-migrations-build-test.yml | 4 ++-- .github/workflows/fat-build.yml | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e65a91f..a60da25 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - java: [ 17 ] + java: [ 21 ] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/docker-migrations-build-test.yml b/.github/workflows/docker-migrations-build-test.yml index f31d437..ee91379 100644 --- a/.github/workflows/docker-migrations-build-test.yml +++ b/.github/workflows/docker-migrations-build-test.yml @@ -15,10 +15,10 @@ jobs: - uses: actions/checkout@v4 with: ref: ${{ github.event.pull_request.base.sha }} - - name: set up JDK 17 + - name: set up JDK 21 uses: actions/setup-java@v3 with: - java-version: 17 + java-version: 21 distribution: temurin cache: "gradle" - name: Run Build diff --git a/.github/workflows/fat-build.yml b/.github/workflows/fat-build.yml index 26be8ed..b79c5e8 100644 --- a/.github/workflows/fat-build.yml +++ b/.github/workflows/fat-build.yml @@ -9,10 +9,10 @@ jobs: steps: - uses: actions/checkout@v4 - - name: set up JDK 17 + - name: set up JDK 21 uses: actions/setup-java@v3 with: - java-version: 17 + java-version: 21 distribution: temurin cache: "gradle" - name: Run Build From b3fd4f2ce9a9d14dfc031a85da32f911ba056ae1 Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Tue, 19 Sep 2023 23:58:20 +0100 Subject: [PATCH 3/7] Compile and target java 21. --- build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index a82c231..50486a8 100644 --- a/build.gradle +++ b/build.gradle @@ -60,5 +60,5 @@ jar { group = 'me.kavin.piped' version = '1.0' -sourceCompatibility = JavaVersion.VERSION_17 -targetCompatibility = JavaVersion.VERSION_17 +sourceCompatibility = JavaVersion.VERSION_21 +targetCompatibility = JavaVersion.VERSION_21 From 52229ed8c73b42ef412ec53ea8dbd1a554de4467 Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Wed, 20 Sep 2023 00:45:07 +0100 Subject: [PATCH 4/7] Use virtual threads. --- src/main/java/me/kavin/piped/Main.java | 4 ++-- src/main/java/me/kavin/piped/utils/Multithreading.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/me/kavin/piped/Main.java b/src/main/java/me/kavin/piped/Main.java index bf6ab03..fa6403e 100644 --- a/src/main/java/me/kavin/piped/Main.java +++ b/src/main/java/me/kavin/piped/Main.java @@ -53,11 +53,11 @@ public class Main { System.exit(1); } - Multithreading.runAsync(() -> new Thread(new SyncRunner( + Multithreading.runAsync(() -> Thread.ofVirtual().start(new SyncRunner( new OkHttpClient.Builder().readTimeout(60, TimeUnit.SECONDS).build(), MATRIX_SERVER, MatrixHelper.MATRIX_TOKEN) - ).start()); + )); new Timer().scheduleAtFixedRate(new TimerTask() { @Override diff --git a/src/main/java/me/kavin/piped/utils/Multithreading.java b/src/main/java/me/kavin/piped/utils/Multithreading.java index 2e4efd4..82c0b5b 100644 --- a/src/main/java/me/kavin/piped/utils/Multithreading.java +++ b/src/main/java/me/kavin/piped/utils/Multithreading.java @@ -5,7 +5,7 @@ import java.util.function.Supplier; public class Multithreading { - private static final ExecutorService es = Executors.newCachedThreadPool(); + private static final ExecutorService es = Executors.newVirtualThreadPerTaskExecutor(); private static final ExecutorService esLimited = Executors .newFixedThreadPool(Runtime.getRuntime().availableProcessors() * 8); private static final ExecutorService esLimitedPubSub = Executors From 4d4bfdc21dfbc255330b45cd1bdbfd9b8fc2e687 Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Wed, 20 Sep 2023 00:54:58 +0100 Subject: [PATCH 5/7] actions: use zulu jre distribution --- .github/workflows/ci.yml | 2 +- .github/workflows/docker-migrations-build-test.yml | 2 +- .github/workflows/fat-build.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a60da25..5edb614 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,7 +19,7 @@ jobs: uses: actions/setup-java@v3 with: java-version: ${{ matrix.java }} - distribution: temurin + distribution: zulu cache: "gradle" - name: Run Build run: ./gradlew build diff --git a/.github/workflows/docker-migrations-build-test.yml b/.github/workflows/docker-migrations-build-test.yml index ee91379..3e440cd 100644 --- a/.github/workflows/docker-migrations-build-test.yml +++ b/.github/workflows/docker-migrations-build-test.yml @@ -19,7 +19,7 @@ jobs: uses: actions/setup-java@v3 with: java-version: 21 - distribution: temurin + distribution: zulu cache: "gradle" - name: Run Build run: ./gradlew shadowJar diff --git a/.github/workflows/fat-build.yml b/.github/workflows/fat-build.yml index b79c5e8..6d3d85b 100644 --- a/.github/workflows/fat-build.yml +++ b/.github/workflows/fat-build.yml @@ -13,7 +13,7 @@ jobs: uses: actions/setup-java@v3 with: java-version: 21 - distribution: temurin + distribution: zulu cache: "gradle" - name: Run Build run: ./gradlew shadowJar From 9cfd3a2556e7a95956e3e03fa60c6f2376066fda Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Wed, 27 Sep 2023 04:53:41 +0100 Subject: [PATCH 6/7] Use lombok directly without an unofficial lombok plugin. --- build.gradle | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 50486a8..cbc7e4c 100644 --- a/build.gradle +++ b/build.gradle @@ -1,7 +1,6 @@ plugins { id "com.github.johnrengelman.shadow" version "8.1.1" id "java" - id "io.freefair.lombok" version "8.4" id "eclipse" } @@ -44,6 +43,8 @@ dependencies { implementation 'io.sentry:sentry:6.30.0' implementation 'rocks.kavin:reqwest4j:1.0.12' implementation 'io.minio:minio:8.5.6' + compileOnly 'org.projectlombok:lombok:1.18.30' + annotationProcessor 'org.projectlombok:lombok:1.18.30' } shadowJar { From 5a0554ad8c293d333f66977c83f6e6866f470bb3 Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Tue, 10 Oct 2023 22:52:26 +0100 Subject: [PATCH 7/7] Don't build openj9 and adoptium for now. --- .github/workflows/docker-build-test.yml | 4 ++-- .github/workflows/docker-build.yml | 8 ++++---- .github/workflows/docker-migrations-build-test.yml | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/docker-build-test.yml b/.github/workflows/docker-build-test.yml index 26423c4..ae9f905 100644 --- a/.github/workflows/docker-build-test.yml +++ b/.github/workflows/docker-build-test.yml @@ -22,9 +22,9 @@ jobs: - testing/docker-compose.cockroachdb.yml - testing/docker-compose.yugabytedb.yml dockerfile: - - Dockerfile.ci + #- Dockerfile.ci - Dockerfile.azul.ci - - Dockerfile.openj9.ci + #- Dockerfile.openj9.ci - Dockerfile.graalvm-jvm.ci include: - sleep: 20 diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml index 800f644..a7ea2ba 100644 --- a/.github/workflows/docker-build.yml +++ b/.github/workflows/docker-build.yml @@ -17,10 +17,10 @@ jobs: strategy: matrix: include: - - image: 1337kavin/piped:openj9 - dockerfile: ./Dockerfile.openj9.ci - - image: 1337kavin/piped:hotspot - dockerfile: ./Dockerfile.ci +# - image: 1337kavin/piped:openj9 +# dockerfile: ./Dockerfile.openj9.ci +# - image: 1337kavin/piped:hotspot +# dockerfile: ./Dockerfile.ci - image: 1337kavin/piped:latest,1337kavin/piped:azul-zulu dockerfile: ./Dockerfile.azul.ci - image: 1337kavin/piped:graalvm-jvm diff --git a/.github/workflows/docker-migrations-build-test.yml b/.github/workflows/docker-migrations-build-test.yml index 3e440cd..8290e96 100644 --- a/.github/workflows/docker-migrations-build-test.yml +++ b/.github/workflows/docker-migrations-build-test.yml @@ -39,7 +39,7 @@ jobs: - testing/docker-compose.cockroachdb.yml - testing/docker-compose.yugabytedb.yml dockerfile: - - Dockerfile.ci + - Dockerfile.azul.ci include: - sleep: 20 - docker-compose-file: testing/docker-compose.cockroachdb.yml