diff --git a/api-changes.json b/api-changes.json new file mode 100644 index 000000000..afbf1256f --- /dev/null +++ b/api-changes.json @@ -0,0 +1,36 @@ +[ + { + "extension": "revapi.differences", + "id": "long-evaluation-api", + "configuration": { + "ignore": true, + "justification": "Long evaluation is an intentional additive API change. Features is not intended for external implementation. See https://github.com/open-feature/java-sdk/issues/501 and https://github.com/open-feature/java-sdk/pull/1985.", + "differences": [ + { + "code": "java.method.addedToInterface", + "new": "method dev.openfeature.sdk.FlagEvaluationDetails dev.openfeature.sdk.Features::getLongDetails(java.lang.String, java.lang.Long)" + }, + { + "code": "java.method.addedToInterface", + "new": "method dev.openfeature.sdk.FlagEvaluationDetails dev.openfeature.sdk.Features::getLongDetails(java.lang.String, java.lang.Long, dev.openfeature.sdk.EvaluationContext)" + }, + { + "code": "java.method.addedToInterface", + "new": "method dev.openfeature.sdk.FlagEvaluationDetails dev.openfeature.sdk.Features::getLongDetails(java.lang.String, java.lang.Long, dev.openfeature.sdk.EvaluationContext, dev.openfeature.sdk.FlagEvaluationOptions)" + }, + { + "code": "java.method.addedToInterface", + "new": "method java.lang.Long dev.openfeature.sdk.Features::getLongValue(java.lang.String, java.lang.Long)" + }, + { + "code": "java.method.addedToInterface", + "new": "method java.lang.Long dev.openfeature.sdk.Features::getLongValue(java.lang.String, java.lang.Long, dev.openfeature.sdk.EvaluationContext)" + }, + { + "code": "java.method.addedToInterface", + "new": "method java.lang.Long dev.openfeature.sdk.Features::getLongValue(java.lang.String, java.lang.Long, dev.openfeature.sdk.EvaluationContext, dev.openfeature.sdk.FlagEvaluationOptions)" + } + ] + } + } +] diff --git a/pom.xml b/pom.xml index d3b9dc18a..4b14d3b01 100644 --- a/pom.xml +++ b/pom.xml @@ -463,6 +463,42 @@ + + org.revapi + revapi-maven-plugin + 0.15.1 + + LATEST + \d+\.\d+\.\d+ + true + true + error + false + + Fix the compatibility issue or add an exact, justified exception to api-changes.json. + + + ${project.basedir}/api-changes.json + + + + + org.revapi + revapi-java + 0.28.4 + + + + + api-compatibility + verify + + check + + + + + org.jacoco jacoco-maven-plugin diff --git a/src/main/java/dev/openfeature/sdk/FlagValueType.java b/src/main/java/dev/openfeature/sdk/FlagValueType.java index 03883e493..8999befe6 100644 --- a/src/main/java/dev/openfeature/sdk/FlagValueType.java +++ b/src/main/java/dev/openfeature/sdk/FlagValueType.java @@ -4,8 +4,8 @@ public enum FlagValueType { STRING, INTEGER, - LONG, DOUBLE, OBJECT, - BOOLEAN; + BOOLEAN, + LONG; }