diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bdf0a9372..c2c078da6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,16 +10,25 @@ on: jobs: main: - 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: Checkout Repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 - - name: Set up JDK 8 + - name: Set up JDK ${{ matrix.build.java }} uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4 with: - java-version: '8' + java-version: ${{ matrix.build.java }} distribution: 'temurin' cache: maven @@ -27,9 +36,9 @@ jobs: uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4 with: path: ~/.m2/repository - key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + key: ${{ runner.os }}${{ matrix.build.java }}-maven-${{ hashFiles('**/pom.xml') }} restore-keys: | - ${{ runner.os }}-maven- + ${{ runner.os }}${{ matrix.build.java }}-maven- - name: Maven Verify - run: mvn --batch-mode --activate-profiles e2e clean verify + run: mvn --batch-mode --activate-profiles e2e,${{ matrix.build.profile }} clean verify diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml index b984ea218..4037c2102 100644 --- a/.github/workflows/release-please.yml +++ b/.github/workflows/release-please.yml @@ -19,11 +19,11 @@ jobs: if: ${{ steps.release.outputs.releases_created }} uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 - - name: Set up JDK 8 + - name: Set up JDK 17 if: ${{ steps.release.outputs.releases_created }} uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4 with: - java-version: '8' + java-version: '17' distribution: 'temurin' cache: maven server-id: ossrh diff --git a/checkstyle.xml b/checkstyle.xml index 0fc751bb0..f8ca27ad6 100644 --- a/checkstyle.xml +++ b/checkstyle.xml @@ -28,19 +28,23 @@ - + + + + - + - + @@ -51,27 +55,11 @@ - + - - - - - - - - - - - - - - - - @@ -98,26 +86,26 @@ + value="LITERAL_CASE, LITERAL_DEFAULT"/> - + @@ -126,7 +114,7 @@ + COMPACT_CTOR_DEF, LITERAL_SWITCH, LITERAL_CASE, LITERAL_FINALLY"/> @@ -136,8 +124,10 @@ + value="COMMA, SEMI, TYPECAST, LITERAL_IF, LITERAL_ELSE, LITERAL_RETURN, + LITERAL_WHILE, LITERAL_DO, LITERAL_FOR, LITERAL_FINALLY, DO_WHILE, ELLIPSIS, + LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_TRY, LITERAL_CATCH, LAMBDA, + LITERAL_YIELD, LITERAL_CASE, LITERAL_WHEN"/> @@ -145,17 +135,17 @@ - + + TYPE_EXTENSION_AND, LITERAL_WHEN"/> @@ -319,7 +309,7 @@ - + @@ -329,8 +319,8 @@ + value="CTOR_DEF, LITERAL_NEW, METHOD_CALL, METHOD_DEF, CTOR_CALL, + SUPER_CTOR_CALL, ENUM_CONSTANT_DEF, RECORD_DEF, RECORD_PATTERN_DEF"/> + value="ANNOTATION, ANNOTATION_FIELD_DEF, CTOR_CALL, CTOR_DEF, DOT, ENUM_CONSTANT_DEF, + EXPR, LITERAL_CATCH, LITERAL_DO, LITERAL_FOR, LITERAL_IF, LITERAL_NEW, + LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_WHILE, METHOD_CALL, + METHOD_DEF, QUESTION, RESOURCE_SPECIFICATION, SUPER_CTOR_CALL, LAMBDA, + RECORD_DEF, RECORD_PATTERN_DEF"/> @@ -371,6 +362,7 @@ value="^@return the *|^This method returns |^A [{]@code [a-zA-Z0-9]+[}]( is a )"/> + diff --git a/pom.xml b/pom.xml index 7020aa318..90cefcd08 100644 --- a/pom.xml +++ b/pom.xml @@ -49,17 +49,23 @@ - 1.8 - ${maven.compiler.source} + [17,) 5.11.4 UTF-8 UTF-8 ${groupId}.${artifactId} 7.21.1 + 5.2.0 true - + + --add-opens java.base/java.util=ALL-UNNAMED + --add-opens java.base/java.lang=ALL-UNNAMED + + false + + 8 @@ -95,7 +101,7 @@ org.mockito mockito-core - 4.11.0 + ${org.mockito.version} test @@ -169,21 +175,21 @@ org.junit-pioneer junit-pioneer - 1.9.1 + 2.3.0 test org.mockito mockito-junit-jupiter - 4.11.0 + 5.15.2 test org.mockito mockito-inline - 4.11.0 + ${org.mockito.version} test @@ -219,90 +225,21 @@ - - maven-compiler-plugin - 3.13.0 - - org.apache.maven.plugins - maven-checkstyle-plugin - 3.6.0 - - checkstyle.xml - UTF-8 - true - true - false - true - - - - com.puppycrawl.tools - checkstyle - 9.3 - - - - - validate - verify - - check - - - - - - - org.apache.maven.plugins - maven-pmd-plugin - 3.26.0 - - ${basedir}/target/generated-sources/ - + maven-toolchains-plugin + 3.2.0 - run-pmd - verify - check + select-jdk-toolchain - - 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 - - - + maven-compiler-plugin + 3.13.0 @@ -367,6 +304,8 @@ all,-missing + + 8 @@ -438,109 +377,217 @@ ${maven.deploy.skip} - - com.diffplug.spotless - spotless-maven-plugin - 2.30.0 + org.apache.maven.plugins + maven-surefire-plugin + 3.5.2 - - - - - - - - .gitattributes - .gitignore - - - - - - true - 4 - - - - - - - - - true - 4 - - - - - - - + + + ${testExclusions} + + + @{surefireArgLine} + - - - - check - - - + - - - - surefire-java8 + codequality - - 1.8 + true + org.apache.maven.plugins - maven-surefire-plugin - 3.5.2 + maven-checkstyle-plugin + 3.6.0 + + checkstyle.xml + UTF-8 + true + true + false + true + + + + com.puppycrawl.tools + checkstyle + 10.21.2 + + + + + validate + verify + + check + + + + + + + org.apache.maven.plugins + maven-pmd-plugin + 3.26.0 + + ${basedir}/target/generated-sources/ + + + + 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.9.0 + + + + + run-spotbugs + verify + + check + + + + + + + + com.diffplug.spotless + spotless-maven-plugin + 2.43.0 - - - ${testExclusions} - - @{surefireArgLine} + + + + + + + + .gitattributes + .gitignore + + + + + + true + 4 + + + + + + + + + true + 4 + + + + + + + + + + + check + + + - + - surefire-java9+ - - - [1.9,) - + 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 - - - ${testExclusions} - - @{surefireArgLine} --add-opens java.base/java.util=ALL-UNNAMED --add-opens - java.base/java.lang=ALL-UNNAMED - + ${skip.tests} + + org.apache.maven.plugins + maven-compiler-plugin + 3.13.0 + + + default-testCompile + test-compile + + testCompile + + + true + + + + diff --git a/providers/flagd/pom.xml b/providers/flagd/pom.xml index d84a6ad4c..571b810c0 100644 --- a/providers/flagd/pom.xml +++ b/providers/flagd/pom.xml @@ -1,6 +1,7 @@ + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 dev.openfeature.contrib @@ -162,7 +163,7 @@ test - + org.slf4j slf4j-simple 2.0.16 @@ -218,14 +219,6 @@ - - com.github.spotbugs - spotbugs-maven-plugin - 4.8.6.6 - - dev.openfeature.contrib.- - - maven-resources-plugin 3.3.1 @@ -275,6 +268,24 @@ + + codequality + + true + + + + + com.github.spotbugs + spotbugs-maven-plugin + 4.8.6.6 + + dev.openfeature.contrib.- + + + + + e2e diff --git a/providers/flagd/spec b/providers/flagd/spec index a69f748db..54952f3b5 160000 --- a/providers/flagd/spec +++ b/providers/flagd/spec @@ -1 +1 @@ -Subproject commit a69f748db2edfec7015ca6bb702ca22fd8c5ef30 +Subproject commit 54952f3b545a09ce966a4dbb86c9490a1ce3333b diff --git a/providers/go-feature-flag/src/main/java/dev/openfeature/contrib/providers/gofeatureflag/GoFeatureFlagProviderOptions.java b/providers/go-feature-flag/src/main/java/dev/openfeature/contrib/providers/gofeatureflag/GoFeatureFlagProviderOptions.java index 008c1943c..0eff72ff5 100644 --- a/providers/go-feature-flag/src/main/java/dev/openfeature/contrib/providers/gofeatureflag/GoFeatureFlagProviderOptions.java +++ b/providers/go-feature-flag/src/main/java/dev/openfeature/contrib/providers/gofeatureflag/GoFeatureFlagProviderOptions.java @@ -12,7 +12,7 @@ public class GoFeatureFlagProviderOptions { /** - * (mandatory) endpoint contains the DNS of your GO Feature Flag relay proxy example: + * (mandatory) endpoint contains the DNS of your GO Feature Flag relay proxy. example: * https://mydomain.com/gofeatureflagproxy/ */ private String endpoint;