This is an automated email from the ASF dual-hosted git repository.

snuyanzin pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/calcite-avatica.git


The following commit(s) were added to refs/heads/main by this push:
     new b67635222 [CALCITE-6421] Add support for JDK 22
b67635222 is described below

commit b67635222125209f46c5520625419d10e2fbb3dd
Author: Sergey Nuyanzin <[email protected]>
AuthorDate: Sun May 26 18:23:20 2024 +0200

    [CALCITE-6421] Add support for JDK 22
    
    Bump dependencies
    forbiddenapis from 3.4to 3.7
    gha actions/checkout from v3 to v4
    gha actions/setup-java from v2 to v4
    
     Replaced deprecated `JavaPluginConvention`
    and `buildDir` in `build.gradle.kts` files
---
 .github/workflows/gradle-wrapper-validation.yml    |   2 +-
 .github/workflows/main.yml                         |  56 +++++++++++++--------
 .../publish-non-release-website-updates.yml        |   4 +-
 .../publish-site-and-javadocs-on-release.yml       |   4 +-
 build.gradle.kts                                   |  17 ++++---
 core/build.gradle.kts                              |   8 +--
 gradle.properties                                  |   2 +-
 gradle/wrapper/gradle-wrapper.jar                  | Bin 63721 -> 43462 bytes
 gradle/wrapper/gradle-wrapper.properties           |   4 +-
 9 files changed, 57 insertions(+), 40 deletions(-)

diff --git a/.github/workflows/gradle-wrapper-validation.yml 
b/.github/workflows/gradle-wrapper-validation.yml
index 5e45083e6..65dc962c0 100644
--- a/.github/workflows/gradle-wrapper-validation.yml
+++ b/.github/workflows/gradle-wrapper-validation.yml
@@ -22,5 +22,5 @@ jobs:
     name: "Validation"
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v4
       - uses: gradle/wrapper-validation-action@v1
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 73ad7ca4d..70864e860 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -31,11 +31,11 @@ jobs:
     name: 'Windows (JDK 11)'
     runs-on: windows-latest
     steps:
-    - uses: actions/checkout@v3
+    - uses: actions/checkout@v4
       with:
         fetch-depth: 50
     - name: 'Set up JDK 11'
-      uses: actions/setup-java@v2
+      uses: actions/setup-java@v4
       with:
         java-version: 11
         distribution: 'zulu'
@@ -49,11 +49,11 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - name: 'Set up JDK 8'
-        uses: actions/setup-java@v2
+        uses: actions/setup-java@v4
         with:
           java-version: 8
           distribution: 'zulu'
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           fetch-depth: 50
       - name: 'Test'
@@ -65,11 +65,11 @@ jobs:
     runs-on: ubuntu-latest
     steps:
     - name: 'Set up JDK 8'
-      uses: actions/setup-java@v2
+      uses: actions/setup-java@v4
       with:
         java-version: 8
         distribution: 'zulu'
-    - uses: actions/checkout@v3
+    - uses: actions/checkout@v4
       with:
         fetch-depth: 50
     - name: 'Install Avatica to Maven Local'
@@ -89,11 +89,11 @@ jobs:
       TZ: Pacific/Chatham # flips between +12:45 and +13:45
     steps:
       - name: 'Set up JDK 11'
-        uses: actions/setup-java@v2
+        uses: actions/setup-java@v4
         with:
           java-version: 11
           distribution: 'zulu'
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           fetch-depth: 50
       - name: 'Test'
@@ -108,11 +108,11 @@ jobs:
       TZ: America/New_York # flips between −05:00 and −04:00
     steps:
       - name: 'Set up JDK 11'
-        uses: actions/setup-java@v2
+        uses: actions/setup-java@v4
         with:
           java-version: 11
           distribution: 'zulu'
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           fetch-depth: 50
       - name: 'Test'
@@ -126,11 +126,11 @@ jobs:
       GUAVA: '23.0' # a middle-aged Guava version
     steps:
       - name: 'Set up JDK 11'
-        uses: actions/setup-java@v2
+        uses: actions/setup-java@v4
         with:
           java-version: 11
           distribution: 'zulu'
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           fetch-depth: 50
       - name: 'Test'
@@ -145,11 +145,11 @@ jobs:
       GUAVA: 32.1.1-jre # newest supported Guava version
     steps:
       - name: 'Set up JDK 11'
-        uses: actions/setup-java@v2
+        uses: actions/setup-java@v4
         with:
           java-version: 11
           distribution: 'zulu'
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           fetch-depth: 50
       - name: 'Test'
@@ -161,11 +161,11 @@ jobs:
     runs-on: ubuntu-latest
     steps:
     - name: 'Set up JDK 17'
-      uses: actions/setup-java@v2
+      uses: actions/setup-java@v4
       with:
         java-version: 17
         distribution: 'zulu'
-    - uses: actions/checkout@v3
+    - uses: actions/checkout@v4
       with:
         fetch-depth: 50
     - name: 'Test'
@@ -177,11 +177,11 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - name: 'Set up JDK 21'
-        uses: actions/setup-java@v2
+        uses: actions/setup-java@v4
         with:
           java-version: 21
           distribution: 'zulu'
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           fetch-depth: 50
       - name: 'Test'
@@ -192,14 +192,30 @@ jobs:
     name: 'macOS (JDK 21)'
     runs-on: macos-latest
     steps:
-    - uses: actions/checkout@v3
+    - uses: actions/checkout@v4
       with:
         fetch-depth: 50
     - name: 'Set up JDK 21'
-      uses: actions/setup-java@v2
+      uses: actions/setup-java@v4
       with:
         java-version: 21
         distribution: 'zulu'
     - name: 'Test'
       run: |
         ./gradlew --no-parallel --no-daemon tasks build javadoc
+
+  linux-jdk22:
+    name: 'Linux (JDK 22)'
+    runs-on: ubuntu-latest
+    steps:
+      - name: 'Set up JDK 22'
+        uses: actions/setup-java@v4
+        with:
+          java-version: 22
+          distribution: 'zulu'
+      - uses: actions/checkout@v4
+        with:
+          fetch-depth: 50
+      - name: 'Test'
+        run: |
+          ./gradlew --no-parallel --no-daemon build
diff --git a/.github/workflows/publish-non-release-website-updates.yml 
b/.github/workflows/publish-non-release-website-updates.yml
index 6ccecb4ac..9c85d1481 100644
--- a/.github/workflows/publish-non-release-website-updates.yml
+++ b/.github/workflows/publish-non-release-website-updates.yml
@@ -32,12 +32,12 @@ jobs:
    publish-website:
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
       - name: Build site
         working-directory: site
         run: |
           docker compose run -e JEKYLL_UID=$(id -u) -e JEKYLL_GID=$(id -g) 
build-site
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           repository: apache/calcite-site
           path: calcite-site
diff --git a/.github/workflows/publish-site-and-javadocs-on-release.yml 
b/.github/workflows/publish-site-and-javadocs-on-release.yml
index 72a177c41..7710087d9 100644
--- a/.github/workflows/publish-site-and-javadocs-on-release.yml
+++ b/.github/workflows/publish-site-and-javadocs-on-release.yml
@@ -25,7 +25,7 @@ jobs:
   publish-website:
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
       - name: Build site
         working-directory: site
         run: |
@@ -34,7 +34,7 @@ jobs:
         working-directory: site
         run: |
           docker compose run generate-javadoc
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
         with:
           repository: apache/calcite-site
           path: calcite-site
diff --git a/build.gradle.kts b/build.gradle.kts
index 465f194a1..6f1cc3951 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -146,7 +146,7 @@ val javadocAggregate by tasks.registering(Javadoc::class) {
 
     classpath = files(sourceSets.map { set -> set.map { it.output + 
it.compileClasspath } })
     setSource(sourceSets.map { set -> set.map { it.allJava } })
-    setDestinationDir(file("$buildDir/docs/javadocAggregate"))
+    
setDestinationDir(file(layout.buildDirectory.get().file("docs/javadocAggregate")))
 }
 
 /** Similar to {@link #javadocAggregate} but includes tests.
@@ -161,7 +161,7 @@ val javadocAggregateIncludingTests by 
tasks.registering(Javadoc::class) {
 
     classpath = files(sourceSets.map { set -> set.map { it.output + 
it.compileClasspath } })
     setSource(sourceSets.map { set -> set.map { it.allJava } })
-    setDestinationDir(file("$buildDir/docs/javadocAggregateIncludingTests"))
+    
setDestinationDir(file(layout.buildDirectory.get().file("docs/javadocAggregateIncludingTests")))
 }
 
 allprojects {
@@ -267,7 +267,7 @@ allprojects {
     }
 
     plugins.withType<JavaPlugin> {
-        configure<JavaPluginConvention> {
+        configure<JavaPluginExtension> {
             sourceCompatibility = JavaVersion.VERSION_1_8
             targetCompatibility = JavaVersion.VERSION_1_8
         }
@@ -469,11 +469,12 @@ allprojects {
             archives(sourcesJar)
         }
 
-        val archivesBaseName = when (path) {
-            ":shaded:avatica" -> "avatica"
-            else -> "avatica-$name"
+        base {
+            archivesName.set(when (path) {
+                ":shaded:avatica" -> "avatica"
+                else -> "avatica-$name"
+            })
         }
-        setProperty("archivesBaseName", archivesBaseName)
 
         configure<PublishingExtension> {
             if (project.path == ":") {
@@ -483,7 +484,7 @@ allprojects {
             extraMavenPublications()
             publications {
                 create<MavenPublication>(project.name) {
-                    artifactId = archivesBaseName
+                    artifactId = base.archivesName.get()
                     version = rootProject.version.toString()
                     description = project.description
                     from(components["java"])
diff --git a/core/build.gradle.kts b/core/build.gradle.kts
index 34b64ce66..0374aaaf6 100644
--- a/core/build.gradle.kts
+++ b/core/build.gradle.kts
@@ -79,7 +79,7 @@ tasks {
     }
 }
 
-val generatedProtobufDir = File(buildDir, "generated/source/proto/main/java")
+val generatedProtobufDir = 
layout.buildDirectory.get().file("generated/source/proto/main/java")
 
 val String.v: String get() = rootProject.extra["$this.version"] as String
 
@@ -94,16 +94,16 @@ protobuf {
                 dependsOn(task)
             }
             ide {
-                generatedJavaSources(task, generatedProtobufDir)
+                generatedJavaSources(task, generatedProtobufDir.asFile)
             }
         }
     }
 }
 
-val javaFilteredOutput = File(buildDir, "generated/java-filtered")
+val javaFilteredOutput = 
layout.buildDirectory.get().file("generated/java-filtered")
 
 ide {
-    generatedJavaSources(filterJava.get(), javaFilteredOutput)
+    generatedJavaSources(filterJava.get(), javaFilteredOutput.asFile)
 }
 
 tasks.processResources {
diff --git a/gradle.properties b/gradle.properties
index 5b81c17d9..10aac8609 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -39,7 +39,7 @@ com.github.johnrengelman.shadow.version=8.0.0
 com.github.spotbugs.version=2.0.0
 com.github.vlsi.vlsi-release-plugins.version=1.90
 com.google.protobuf.version=0.8.12
-de.thetaphi.forbiddenapis.version=3.4
+de.thetaphi.forbiddenapis.version=3.7
 org.jetbrains.gradle.plugin.idea-ext.version=0.5
 org.nosphere.apache.rat.version=0.8.0
 org.owasp.dependencycheck.version=5.2.2
diff --git a/gradle/wrapper/gradle-wrapper.jar 
b/gradle/wrapper/gradle-wrapper.jar
index 7f93135c4..d64cd4917 100644
Binary files a/gradle/wrapper/gradle-wrapper.jar and 
b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/gradle/wrapper/gradle-wrapper.properties 
b/gradle/wrapper/gradle-wrapper.properties
index 16f5e2f6c..bcc1d6e79 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -16,8 +16,8 @@
 #
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
-distributionSha256Sum=9d926787066a081739e8200858338b4a69e837c3a821a33aca9db09dd4a41026
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
+distributionSha256Sum=544c35d6bd849ae8a5ed0bcea39ba677dc40f49df7d1835561582da2009b961d
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
 networkTimeout=10000
 validateDistributionUrl=true
 zipStoreBase=GRADLE_USER_HOME

Reply via email to