From e9ab22a20510b7ea1033001c5503f8ea205532c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A1s=20Kerekes?= Date: Tue, 21 Oct 2025 15:31:08 -0700 Subject: [PATCH] feat!: remove java11 support and expand java21 test coverage --- .github/workflows/buildpack-integration-test.yml | 6 +++--- .github/workflows/conformance.yaml | 3 ++- .github/workflows/lint.yaml | 2 +- .github/workflows/unit.yaml | 5 ++--- .kokoro/release.sh | 2 +- CONTRIBUTING.md | 8 ++++---- function-maven-plugin/pom.xml | 4 ++-- .../com/google/cloud/functions/plugin/DeployFunction.java | 6 +++--- .../google/cloud/functions/plugin/DeployFunctionTest.java | 2 +- functions-framework-api/pom.xml | 4 ++-- invoker/conformance/pom.xml | 4 ++-- invoker/core/pom.xml | 4 ++-- invoker/pom.xml | 4 ++-- 13 files changed, 27 insertions(+), 27 deletions(-) diff --git a/.github/workflows/buildpack-integration-test.yml b/.github/workflows/buildpack-integration-test.yml index 41182ce3..c97377e7 100644 --- a/.github/workflows/buildpack-integration-test.yml +++ b/.github/workflows/buildpack-integration-test.yml @@ -14,7 +14,7 @@ on: permissions: read-all jobs: - java11-buildpack-test: + java21-buildpack-test: uses: GoogleCloudPlatform/functions-framework-conformance/.github/workflows/buildpack-integration-test.yml@main with: http-builder-source: '/tmp/tests/conformance' @@ -22,8 +22,8 @@ jobs: cloudevent-builder-source: '/tmp/tests/conformance' cloudevent-builder-target: 'com.google.cloud.functions.conformance.CloudEventsConformanceFunction' prerun: 'invoker/conformance/prerun.sh' - builder-runtime: 'java11' - builder-runtime-version: '11' + builder-runtime: 'java21' + builder-runtime-version: '21' builder-url: gcr.io/serverless-runtimes/google-22-full/builder/java:latest java17-buildpack-test: uses: GoogleCloudPlatform/functions-framework-conformance/.github/workflows/buildpack-integration-test.yml@main diff --git a/.github/workflows/conformance.yaml b/.github/workflows/conformance.yaml index 9b03a3c6..074d8c14 100644 --- a/.github/workflows/conformance.yaml +++ b/.github/workflows/conformance.yaml @@ -14,7 +14,8 @@ jobs: strategy: matrix: java: [ - 11.x, + 17.x, + 21.x ] steps: - name: Harden Runner diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 6cc5a37b..3a5860de 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -24,7 +24,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1 with: - java-version: 11.x + java-version: 17.x distribution: temurin - name: Build API with Maven run: (cd functions-framework-api/ && mvn install) diff --git a/.github/workflows/unit.yaml b/.github/workflows/unit.yaml index 2826605a..2ddc0a5c 100644 --- a/.github/workflows/unit.yaml +++ b/.github/workflows/unit.yaml @@ -13,9 +13,8 @@ jobs: strategy: matrix: java: [ - 11.x, 17.x, - 21-ea + 21.x ] steps: - name: Harden Runner @@ -37,4 +36,4 @@ jobs: - name: Build with Maven run: (cd functions-framework-api/ && mvn install) - name: Test - run: (cd invoker/ && mvn test) \ No newline at end of file + run: (cd invoker/ && mvn test) diff --git a/.kokoro/release.sh b/.kokoro/release.sh index 8e1b30b0..89d7ebcd 100644 --- a/.kokoro/release.sh +++ b/.kokoro/release.sh @@ -64,7 +64,7 @@ fi echo "pwd=$(pwd)" # Make sure `JAVA_HOME` is set and using jdk11. -export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64 +export JAVA_HOME=/usr/lib/jvm/java-1.17.0-openjdk-amd64 echo "JAVA_HOME=$JAVA_HOME" mvn clean deploy -B -q \ -P sonatype-oss-release \ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f7e4114c..5d18935a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -38,15 +38,15 @@ This project is divided into multiple packages, primarily: - `function-maven-plugin` - The Maven plugin for building functions - `conformance` - A set of functions used for conformance testing -### Setup JDK 11 / 17 +### Setup JDK 17 / 21 -Install JDK 11 and 17. One way to install these is through [SDK man](https://sdkman.io/). +Install JDK 17 and 21. One way to install these is through [SDK man](https://sdkman.io/). ```sh -sdk install java 11.0.2-open sdk install java 17-open +sdk install java 21-open sdk use java 17-open -sdk use java 11.0.2-open +sdk use java 21-open ``` Verify Java version with: diff --git a/function-maven-plugin/pom.xml b/function-maven-plugin/pom.xml index a2e96114..657ce775 100644 --- a/function-maven-plugin/pom.xml +++ b/function-maven-plugin/pom.xml @@ -47,8 +47,8 @@ - 11 - 11 + 17 + 17 diff --git a/function-maven-plugin/src/main/java/com/google/cloud/functions/plugin/DeployFunction.java b/function-maven-plugin/src/main/java/com/google/cloud/functions/plugin/DeployFunction.java index d0067ded..08bff714 100644 --- a/function-maven-plugin/src/main/java/com/google/cloud/functions/plugin/DeployFunction.java +++ b/function-maven-plugin/src/main/java/com/google/cloud/functions/plugin/DeployFunction.java @@ -98,13 +98,13 @@ public class DeployFunction extends CloudSdkMojo { * Runtime in which to run the function. * *

Required when deploying a new function; optional when updating an existing function. Default - * to Java11. + * to Java17. */ @Parameter( alias = "deploy.runtime", - defaultValue = "java11", + defaultValue = "java17", property = "function.deploy.runtime") - String runtime = "java11"; + String runtime = "java17"; /** * The email address of the IAM service account associated with the function at runtime. The diff --git a/function-maven-plugin/src/test/java/com/google/cloud/functions/plugin/DeployFunctionTest.java b/function-maven-plugin/src/test/java/com/google/cloud/functions/plugin/DeployFunctionTest.java index 2b441d4e..6f107cff 100644 --- a/function-maven-plugin/src/test/java/com/google/cloud/functions/plugin/DeployFunctionTest.java +++ b/function-maven-plugin/src/test/java/com/google/cloud/functions/plugin/DeployFunctionTest.java @@ -53,7 +53,7 @@ public void testDeployFunctionCommandLine() { "--env-vars-file=myfile", "--set-build-env-vars=env1=a,env2=b", "--build-env-vars-file=myfile2", - "--runtime=java11", + "--runtime=java17", "--quiet"); assertThat(mojo.getCommands()).isEqualTo(expected); } diff --git a/functions-framework-api/pom.xml b/functions-framework-api/pom.xml index e9994047..6f4ce316 100644 --- a/functions-framework-api/pom.xml +++ b/functions-framework-api/pom.xml @@ -77,8 +77,8 @@ maven-compiler-plugin ${maven-compiler-plugin.version} - 11 - 11 + 17 + 17 diff --git a/invoker/conformance/pom.xml b/invoker/conformance/pom.xml index dbb5bbc5..11a51c29 100644 --- a/invoker/conformance/pom.xml +++ b/invoker/conformance/pom.xml @@ -20,8 +20,8 @@ UTF-8 - 11 - 11 + 17 + 17 diff --git a/invoker/core/pom.xml b/invoker/core/pom.xml index 05af393a..8108c526 100644 --- a/invoker/core/pom.xml +++ b/invoker/core/pom.xml @@ -20,8 +20,8 @@ UTF-8 5.3.2 - 11 - 11 + 17 + 17 4.0.1 diff --git a/invoker/pom.xml b/invoker/pom.xml index 40185fcf..c52aba99 100644 --- a/invoker/pom.xml +++ b/invoker/pom.xml @@ -56,8 +56,8 @@ UTF-8 3.8.1 - 11 - 11 + 17 + 17