diff --git a/.github/workflows/merge.yml b/.github/workflows/merge.yml
index 338a0985..7c7878a8 100644
--- a/.github/workflows/merge.yml
+++ b/.github/workflows/merge.yml
@@ -16,7 +16,6 @@ permissions:
jobs:
build:
-
runs-on: ubuntu-latest
steps:
@@ -24,7 +23,7 @@ jobs:
- name: Set up JDK 8
uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12
with:
- java-version: '8'
+ java-version: '17'
distribution: 'temurin'
cache: maven
server-id: ossrh
@@ -35,9 +34,9 @@ jobs:
uses: actions/cache@36f1e144e1c8edb0a652766b484448563d8baf46
with:
path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
+ key: ${{ runner.os }}-17-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
- ${{ runner.os }}-maven-
+ ${{ runner.os }}-17-maven-
- name: Configure GPG Key
run: |
@@ -60,7 +59,7 @@ jobs:
# Add -SNAPSHOT before deploy
- name: Add SNAPSHOT
run: mvn versions:set -DnewVersion='${project.version}-SNAPSHOT'
-
+
- name: Deploy
run: |
mvn --batch-mode \
diff --git a/.github/workflows/pullrequest.yml b/.github/workflows/pullrequest.yml
index 6815fa8e..3d35ed98 100644
--- a/.github/workflows/pullrequest.yml
+++ b/.github/workflows/pullrequest.yml
@@ -7,7 +7,16 @@ permissions:
jobs:
build:
- runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ os: [ubuntu-latest]
+ build:
+ - java: 17
+ profile: codequality
+ - java: 8
+ profile: java8
+ name: with Java ${{ matrix.build.java }}
+ runs-on: ${{ matrix.os}}
steps:
- name: Check out the code
uses: actions/checkout@85e6279cec87321a52edac9c87bce653a07cf6c2
@@ -15,9 +24,9 @@ jobs:
- name: Set up JDK 8
uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12
with:
- java-version: '8'
- distribution: 'temurin'
- cache: maven
+ java-version: ${{ matrix.build.java }}
+ distribution: 'temurin'
+ cache: maven
- name: Initialize CodeQL
uses: github/codeql-action/init@0a35e8f6866a39b001e5f7ad1d0daf9836786896
@@ -27,15 +36,16 @@ jobs:
- name: Cache local Maven repository
uses: actions/cache@36f1e144e1c8edb0a652766b484448563d8baf46
with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-
+ path: ~/.m2/repository
+ key: ${{ runner.os }}${{ matrix.build.java }}-maven-${{ hashFiles('**/pom.xml') }}
+ restore-keys: |
+ ${{ runner.os }}${{ matrix.build.java }}-maven-
- name: Verify with Maven
- run: mvn --batch-mode --update-snapshots --activate-profiles e2e verify
+ run: mvn --batch-mode --update-snapshots --activate-profiles e2e,${{ matrix.build.profile }} verify
- - name: Upload coverage to Codecov
+ - if: matrix.build.java == '17'
+ name: Upload coverage to Codecov
uses: codecov/codecov-action@v5.3.1
with:
token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 7342889d..ee798442 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -5,7 +5,7 @@
on:
push:
branches:
- - main
+ - beta/new_java_build
name: Run Release Please
permissions: # added using https://github.com/step-security/secure-workflows
contents: read
@@ -23,17 +23,17 @@ jobs:
id: release
with:
token: ${{secrets.GITHUB_TOKEN}}
- default-branch: main
+ target-branch: beta/new_java_build
# These steps are only run if this was a merged release-please PR
- name: checkout
if: ${{ steps.release.outputs.release_created }}
uses: actions/checkout@85e6279cec87321a52edac9c87bce653a07cf6c2
- - name: Set up JDK 8
+ - name: Set up JDK 17
if: ${{ steps.release.outputs.release_created }}
uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12
with:
- java-version: '8'
+ java-version: '17'
distribution: 'temurin'
cache: maven
server-id: ossrh
@@ -54,4 +54,4 @@ jobs:
--settings release/m2-settings.xml clean deploy
env:
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
- OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
\ No newline at end of file
+ OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
diff --git a/pom.xml b/pom.xml
index 8b3ce85a..eee29df5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -8,13 +8,23 @@
1.14.0
+ [17,)
UTF-8
1.8
${maven.compiler.source}
5.11.4
+ 7.21.1
+ 5.2.0
**/e2e/*.java
${project.groupId}.${project.artifactId}
+
+ --add-opens java.base/java.util=ALL-UNNAMED
+ --add-opens java.base/java.lang=ALL-UNNAMED
+
+ false
+
+ 8
OpenFeature Java SDK
@@ -70,7 +80,7 @@
org.mockito
mockito-core
- 4.11.0
+ ${org.mockito.version}
test
@@ -119,12 +129,14 @@
io.cucumber
cucumber-java
+ ${io.cucumber.version}
test
io.cucumber
cucumber-junit-platform-engine
+ ${io.cucumber.version}
test
@@ -200,6 +212,18 @@
+
+ org.apache.maven.plugins
+ maven-toolchains-plugin
+ 3.2.0
+
+
+
+ select-jdk-toolchain
+
+
+
+
org.cyclonedx
cyclonedx-maven-plugin
@@ -226,35 +250,6 @@
-
- maven-dependency-plugin
- 3.8.1
-
-
- verify
-
- analyze
-
-
-
-
- true
-
- com.github.spotbugs:*
- org.junit*
- org.simplify4u:slf4j2-mock*
-
-
- com.google.guava*
- io.cucumber*
- org.junit*
- com.google.code.findbugs*
- com.github.spotbugs*
- org.simplify4u:slf4j-mock-common:*
-
-
-
-
maven-compiler-plugin
3.13.0
@@ -286,65 +281,6 @@
-
- org.jacoco
- jacoco-maven-plugin
- 0.8.12
-
-
-
- prepare-agent
-
- prepare-agent
-
-
-
- ${project.build.directory}/coverage-reports/jacoco-ut.exec
- surefireArgLine
-
-
-
-
- report
- verify
-
- report
-
-
-
- ${project.build.directory}/coverage-reports/jacoco-ut.exec
- ${project.reporting.outputDirectory}/jacoco-ut
-
-
-
-
- jacoco-check
-
- check
-
-
- ${project.build.directory}/coverage-reports/jacoco-ut.exec
-
- dev/openfeature/sdk/exceptions/**
-
-
-
-
- PACKAGE
-
-
- LINE
- COVEREDRATIO
- 0.80
-
-
-
-
-
-
-
-
-
org.apache.maven.plugins
@@ -359,134 +295,262 @@
-
- org.apache.maven.plugins
- maven-pmd-plugin
- 3.26.0
-
-
- run-pmd
- verify
-
- check
-
-
-
-
-
-
- com.github.spotbugs
- spotbugs-maven-plugin
- 4.8.6.6
-
- spotbugs-exclusions.xml
-
-
- com.h3xstream.findsecbugs
- findsecbugs-plugin
- 1.13.0
-
-
-
-
-
-
- com.github.spotbugs
- spotbugs
- 4.8.6
-
-
-
-
- run-spotbugs
- verify
-
- check
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-checkstyle-plugin
- 3.6.0
-
- checkstyle.xml
- UTF-8
- true
- true
- false
-
-
-
- com.puppycrawl.tools
- checkstyle
- 9.3
-
-
-
-
- validate
- validate
-
- check
-
-
-
-
-
- com.diffplug.spotless
- spotless-maven-plugin
- 2.30.0
-
-
-
-
-
-
-
-
- .gitattributes
- .gitignore
-
-
-
-
-
- true
- 4
-
-
-
-
-
-
-
-
- true
- 4
-
-
-
-
-
-
-
-
-
-
-
- check
-
-
-
-
-
+
+ codequality
+
+ true
+
+
+
+
+ maven-dependency-plugin
+ 3.8.1
+
+
+ verify
+
+ analyze
+
+
+
+
+ true
+
+ com.github.spotbugs:*
+ org.junit*
+ org.simplify4u:slf4j2-mock*
+
+
+
+ com.google.guava*
+ io.cucumber*
+ org.junit*
+ com.google.code.findbugs*
+ com.github.spotbugs*
+ org.simplify4u:slf4j-mock-common:*
+
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+ 0.8.12
+
+
+
+ prepare-agent
+
+ prepare-agent
+
+
+
+ ${project.build.directory}/coverage-reports/jacoco-ut.exec
+ surefireArgLine
+
+
+
+
+ report
+ verify
+
+ report
+
+
+
+ ${project.build.directory}/coverage-reports/jacoco-ut.exec
+ ${project.reporting.outputDirectory}/jacoco-ut
+
+
+
+
+ jacoco-check
+
+ check
+
+
+ ${project.build.directory}/coverage-reports/jacoco-ut.exec
+
+ dev/openfeature/sdk/exceptions/**
+
+
+
+
+ PACKAGE
+
+
+ LINE
+ COVEREDRATIO
+ 0.80
+
+
+
+
+
+
+
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+ 4.8.6.6
+
+ spotbugs-exclusions.xml
+
+
+ com.h3xstream.findsecbugs
+ findsecbugs-plugin
+ 1.13.0
+
+
+
+
+
+
+ com.github.spotbugs
+ spotbugs
+ 4.8.6
+
+
+
+
+ run-spotbugs
+ verify
+
+ check
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-checkstyle-plugin
+ 3.6.0
+
+ checkstyle.xml
+ true
+ true
+ false
+
+
+
+ com.puppycrawl.tools
+ checkstyle
+ 9.3
+
+
+
+
+ validate
+ validate
+
+ check
+
+
+
+
+
+ com.diffplug.spotless
+ spotless-maven-plugin
+ 2.30.0
+
+
+
+
+
+
+
+
+ .gitattributes
+ .gitignore
+
+
+
+
+
+ true
+ 4
+
+
+
+
+
+
+
+
+ true
+ 4
+
+
+
+
+
+
+
+
+
+
+
+ check
+
+
+
+
+
+ com.diffplug.spotless
+ spotless-maven-plugin
+ 2.43.0
+
+
+
+
+
+
+
+
+ .gitattributes
+ .gitignore
+
+
+
+
+
+ true
+ 4
+
+
+
+
+
+
+
+
+ true
+ 4
+
+
+
+
+
+
+
+
+
+
+
+ check
+
+
+
+
+
+
+
deploy
@@ -628,6 +692,59 @@
+
+
+
+ java8
+
+
+
+ (1.8,9)
+ true
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-toolchains-plugin
+ 3.2.0
+
+
+
+ select-jdk-toolchain
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.5.2
+
+ ${skip.tests}
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.13.0
+
+
+ default-testCompile
+ test-compile
+
+ testCompile
+
+
+ true
+
+
+
+
+
+
+
diff --git a/release-please-config.json b/release-please-config.json
index ad00d89a..69efbe9d 100644
--- a/release-please-config.json
+++ b/release-please-config.json
@@ -8,7 +8,8 @@
"include-component-in-tag": false,
"bump-minor-pre-major": true,
"bump-patch-for-minor-pre-major": true,
- "versioning": "default",
+ "versioning": "prerelease",
+ "prerelease-type": "beta",
"extra-files": [
"pom.xml",
"README.md"