diff --git a/.github/actions/run-gradle/action.yml b/.github/actions/run-gradle/action.yml index 53aa8082b2..e929020eee 100644 --- a/.github/actions/run-gradle/action.yml +++ b/.github/actions/run-gradle/action.yml @@ -8,8 +8,9 @@ inputs: required: true description: The JDK version early-access: - required: true - description: If an early access release + default: '20' + required: false + description: The early access release token: required: false description: 'A Github PAT' @@ -28,13 +29,13 @@ runs: echo "JAVA_VERSION=19" >> $GITHUB_ENV - name: Set up JDK ${{ inputs.java }} uses: actions/setup-java@v3 - if: (inputs.early-access == 'false') && (inputs.java != 'GraalVM') + if: (inputs.early-access != inputs.java) && (inputs.java != 'GraalVM') with: java-version: ${{ inputs.java }} distribution: temurin - name: Set up JDK ${{ inputs.java }} uses: oracle-actions/setup-java@v1 - if: (inputs.early-access == 'true') && (inputs.java != 'GraalVM') + if: (inputs.early-access == inputs.java) && (inputs.java != 'GraalVM') with: release: ${{ inputs.java }} website: jdk.java.net @@ -51,7 +52,7 @@ runs: shell: bash run: | echo "JDK_CI=$JAVA_HOME" >> $GITHUB_ENV - echo "JDK_EA=${{ inputs.early-access }}" >> $GITHUB_ENV + echo "JDK_EA=${{ inputs.early-access == inputs.java }}" >> $GITHUB_ENV - name: Set up JDK 17 id: setup-gradle-jdk uses: actions/setup-java@v3 diff --git a/.github/workflows/analysis.yml b/.github/workflows/analysis.yml index 5156c04b9d..bd1ca3f8e7 100644 --- a/.github/workflows/analysis.yml +++ b/.github/workflows/analysis.yml @@ -20,7 +20,6 @@ jobs: uses: ./.github/actions/run-gradle with: java: ${{ env.JAVA_VERSION }} - early-access: false arguments: > forbiddenApis -DforbiddenApis pmdJavaPoet pmdMain pmdCodeGen pmdJmh -Dpmd diff --git a/.github/workflows/benchmarks.yml b/.github/workflows/benchmarks.yml index 683982a874..0233c6d50e 100644 --- a/.github/workflows/benchmarks.yml +++ b/.github/workflows/benchmarks.yml @@ -5,8 +5,7 @@ on: [ push, pull_request ] env: GRADLE_ENTERPRISE_CACHE_PASSWORD: ${{ secrets.GRADLE_ENTERPRISE_CACHE_PASSWORD }} GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} - MAX_JVM: 19 - EA_JVM: 20 + PUBLISH_JDK: 19 jobs: benchmarks: @@ -27,7 +26,6 @@ jobs: with: java: ${{ matrix.java }} token: ${{ secrets.GITHUB_TOKEN }} - early-access: ${{ matrix.java == env.EA_JVM }} arguments: > caffeine:jmh --no-daemon -PincludePattern=ComputeBenchmark @@ -48,7 +46,6 @@ jobs: with: java: ${{ matrix.java }} token: ${{ secrets.GITHUB_TOKEN }} - early-access: ${{ matrix.java == env.EA_JVM }} arguments: > caffeine:jmh --no-daemon -PincludePattern=GetPutBenchmark @@ -69,28 +66,28 @@ jobs: with: java: ${{ matrix.java }} token: ${{ secrets.GITHUB_TOKEN }} - early-access: ${{ matrix.java == env.EA_JVM }} arguments: > caffeine:jmh --no-daemon -PincludePattern=PutRemoveBenchmark - -PbenchmarkParameters=computeType=Caffeine,Guava,ConcurrentHashMap + -PbenchmarkParameters=cacheType=Caffeine,Guava,ConcurrentHashMap - name: FrequencySketch JMH Benchmark uses: ./.github/actions/run-gradle with: java: ${{ matrix.java }} token: ${{ secrets.GITHUB_TOKEN }} - early-access: ${{ matrix.java == env.EA_JVM }} - arguments: caffeine:jmh --no-daemon -PincludePattern=FrequencySketchBenchmark + arguments: > + caffeine:jmh --no-daemon + -PincludePattern=FrequencySketchBenchmark + -PbenchmarkParameters=tableSize=134217728 - name: TimerWheelBenchmark JMH Benchmark uses: ./.github/actions/run-gradle with: java: ${{ matrix.java }} token: ${{ secrets.GITHUB_TOKEN }} - early-access: ${{ matrix.java == env.EA_JVM }} arguments: caffeine:jmh --no-daemon -PincludePattern=TimerWheelBenchmark - name: Publish JMH benchmarks if: > - matrix.java == env.MAX_JVM + matrix.java == env.PUBLISH_JDK && github.event_name == 'push' && endsWith(github.ref, github.event.repository.default_branch) run: | diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e7444e56de..d0d8cd09dd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -31,9 +31,7 @@ env: scans-in.gradle.com:443 services.gradle.org:443 www.graalvm.org:443 - MIN_JVM: 11 - MAX_JVM: 19 - EA_JVM: 20 + PUBLISH_JDK: 11 jobs: compile: @@ -59,7 +57,6 @@ jobs: java: ${{ matrix.java }} arguments: check -x test token: ${{ secrets.GITHUB_TOKEN }} - early-access: ${{ matrix.java == env.EA_JVM }} - name: Cancel if failed uses: andymckay/cancel-action@0.3 continue-on-error: true @@ -129,7 +126,7 @@ jobs: - simulator:check - jcache:check - guava:check - java: [ 19 ] + java: [ 11 ] env: JAVA_VERSION: ${{ matrix.java }} steps: @@ -146,21 +143,20 @@ jobs: java: ${{ matrix.java }} arguments: ${{ matrix.suite }} token: ${{ secrets.GITHUB_TOKEN }} - early-access: ${{ matrix.java == env.EA_JVM }} - name: Format Test Artifact Name - if: always() && (matrix.java == env.MAX_JVM) + if: always() && (env.JAVA_VERSION == env.PUBLISH_JDK) run: | - RAW_NAME=${{ matrix.suite }}-${{ matrix.java }} + RAW_NAME=${{ matrix.suite }}-${{ env.JAVA_VERSION }} ARTIFACT_NAME=$(echo $RAW_NAME | sed 's/:/-/g') echo "ARTIFACT_NAME=$ARTIFACT_NAME" >> $GITHUB_ENV - name: Compress test results - if: always() && (matrix.java == env.MAX_JVM) + if: always() && (env.JAVA_VERSION == env.PUBLISH_JDK) run: > find . -path */jacoco/*.exec -o -path */results/*.xml | tar czf ${{ env.ARTIFACT_NAME }}.tar.gz --files-from - - name: Upload test results uses: actions/upload-artifact@v3 - if: always() && (matrix.java == env.MAX_JVM) + if: always() && (env.JAVA_VERSION == env.PUBLISH_JDK) with: retention-days: 1 name: ${{ env.ARTIFACT_NAME }}-results @@ -205,16 +201,14 @@ jobs: uses: ./.github/actions/run-gradle with: arguments: check -x test - java: ${{ env.MAX_JVM }} - early-access: ${{ matrix.java == env.EA_JVM }} + java: ${{ env.PUBLISH_JDK }} - name: Publish to Coveralls uses: ./.github/actions/run-gradle env: COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} with: arguments: coveralls - java: ${{ env.MAX_JVM }} - early-access: ${{ matrix.java == env.EA_JVM }} + java: ${{ env.PUBLISH_JDK }} continue-on-error: true - name: Publish to Codecov uses: codecov/codecov-action@v3 @@ -231,9 +225,8 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} with: - java: ${{ env.MAX_JVM }} + java: ${{ env.PUBLISH_JDK }} arguments: sonarqube -Dsonar.branch.name=${GITHUB_REF##*/} - early-access: ${{ matrix.java == env.EA_JVM }} continue-on-error: true test-results: @@ -301,13 +294,13 @@ jobs: lightbend.github.io:443 guava.dev:443 - uses: actions/checkout@v3 - - name: Set up JDK ${{ env.MIN_JVM }} + - name: Set up JDK ${{ env.PUBLISH_JDK }} uses: Wandalen/wretry.action@v1.0.36 with: action: actions/setup-java@v3 with: | distribution: temurin - java-version: ${{ env.MIN_JVM }} + java-version: ${{ env.PUBLISH_JDK }} attempt_limit: 3 attempt_delay: 2000 - name: Setup Gradle @@ -323,7 +316,7 @@ jobs: attempt_delay: 2000 - name: Publish Snapshot env: - JAVA_VERSION: ${{ env.MIN_JVM }} + JAVA_VERSION: ${{ env.PUBLISH_JDK }} NEXUS_USERNAME: ${{ secrets.NEXUS_USERNAME }} NEXUS_PASSWORD: ${{ secrets.NEXUS_PASSWORD }} ORG_GRADLE_PROJECT_signingKeyId: 20BCF6B1 diff --git a/.github/workflows/dependency-check.yml b/.github/workflows/dependency-check.yml index 11e02418c5..cbf5dd4d7a 100644 --- a/.github/workflows/dependency-check.yml +++ b/.github/workflows/dependency-check.yml @@ -27,7 +27,6 @@ jobs: - name: Run dependency-check uses: ./.github/actions/run-gradle with: - early-access: false java: ${{ env.JAVA_VERSION }} arguments: dependencyCheckAggregate - name: Upload result to GitHub Code Scanning diff --git a/.github/workflows/snyke.yml b/.github/workflows/snyke.yml index f3828a6417..dd83de2b15 100644 --- a/.github/workflows/snyke.yml +++ b/.github/workflows/snyke.yml @@ -28,7 +28,6 @@ jobs: uses: ./.github/actions/run-gradle continue-on-error: true with: - early-access: false java: ${{ env.JAVA_VERSION }} arguments: snyk-test -PsnykArgs="--sarif-file-output=snyk.sarif" - name: Upload result to GitHub Code Scanning @@ -40,6 +39,5 @@ jobs: uses: ./.github/actions/run-gradle continue-on-error: true with: - early-access: false java: ${{ env.JAVA_VERSION }} arguments: snyk-monitor diff --git a/build.gradle b/build.gradle index ede83fa421..7d1dc7d33d 100644 --- a/build.gradle +++ b/build.gradle @@ -117,8 +117,8 @@ tasks.named('dependencyUpdates').configure { resolutionStrategy { componentSelection { all { - def unstable = ['javax.json.bind', 'org.jetbrains.kotlin'] - if (isNonStable(it.candidate.version) && it.candidate.group in unstable) { + def stable = ['javax.json.bind', 'org.jetbrains.kotlin', 'org.osgi'] + if (isNonStable(it.candidate.version) && it.candidate.group in stable) { reject('release candidate') } } diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle index d3f2789db7..5acf3310d6 100644 --- a/gradle/dependencies.gradle +++ b/gradle/dependencies.gradle @@ -25,7 +25,7 @@ */ ext { versions = [ - autoValue: '1.10', + autoValue: '1.10.1', cache2k: '2.6.1.Final', checkerFramework: '3.27.0', coherence: '22.06.2', @@ -35,7 +35,7 @@ ext { commonsIo: '2.11.0', concurrentlinkedhashmap: '1.4.2', config: '1.4.2', - ehcache3: '3.10.3', + ehcache3: '3.10.8', errorprone: '2.16', errorproneSupport: '0.5.0', expiringMap: '0.5.10', @@ -44,21 +44,21 @@ ext { flipTables: '1.1.0', googleJavaFormat: '1.15.0', guava: '31.1-jre', - hazelcast: '5.2.0', + hazelcast: '5.2.1', jackrabbit: '1.44.0', jamm: '0.3.3', javaObjectLayout: '0.16', javapoet: '1.13.0', jcache: '1.1.1', jfreechart: '1.5.3', - jmh: '1.35', + jmh: '1.36', joor: '0.9.14', jsr330: '1', - nullaway: '0.10.4', + nullaway: '0.10.5', ohc: '0.6.1', osgiComponentAnnotations: '1.5.0', picocli: '4.7.0', - slf4j: '2.0.3', + slf4j: '2.0.4', tcache: '2.0.1', stream: '2.9.8', univocityParsers: '2.9.1', @@ -77,8 +77,8 @@ ext { junit4: '4.13.2', junit5: '5.9.1', junitTestNG: '1.0.4', - lincheck: '2.15', - mockito: '4.8.1', + lincheck: '2.16', + mockito: '4.9.0', paxExam: '4.13.5', slf4jTest: '2.6.1', testng: '7.6.1', @@ -93,7 +93,7 @@ ext { bnd: '6.3.1', checkstyle: '10.4', coveralls: '2.12.0', - dependencyCheck: '7.3.0', + dependencyCheck: '7.3.2', errorprone: '3.0.1', findsecbugs: '1.12.0', forbiddenApis: '3.4', @@ -259,7 +259,7 @@ ext { ] restrictions = [ 'com.beust:jcommander': '1.82', - 'com.fasterxml.jackson:jackson-bom': '2.13.4.20221013', + 'com.fasterxml.jackson:jackson-bom': '2.14.1', 'com.google.protobuf:protobuf-java': '3.21.8', 'com.thoughtworks.xstream:xstream': '1.4.19', 'org.apache.bcel:bcel': '6.6.1', diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 9a27dc448e..3bd1db3825 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,4 +1,4 @@ -distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-rc-3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-rc-4-bin.zip distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME