From a708341d291dbb07949f3c7fd0475d3972b0572c Mon Sep 17 00:00:00 2001 From: Heath Borders Date: Wed, 3 Sep 2025 15:47:20 -0500 Subject: [PATCH 1/4] Started adding putIfAbsent to LruAssignmentCache Can't actually add it until https://github.com/Eppo-exp/sdk-common-jdk/pull/148 lands --- .../eppo/android/cache/LRUAssignmentCache.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/eppo/src/main/java/cloud/eppo/android/cache/LRUAssignmentCache.java b/eppo/src/main/java/cloud/eppo/android/cache/LRUAssignmentCache.java index ece5e918..09ef049f 100644 --- a/eppo/src/main/java/cloud/eppo/android/cache/LRUAssignmentCache.java +++ b/eppo/src/main/java/cloud/eppo/android/cache/LRUAssignmentCache.java @@ -20,6 +20,19 @@ public void put(String cacheKey, @NonNull String serializedEntry) { public String get(String cacheKey) { return cache.get(cacheKey); } + + // @Override + public boolean putIfAbsent(String cacheKey, @NonNull String serializedEntry) { + boolean hadNoPreviousEntry; + synchronized (cache) { + String entry = cache.get(cacheKey); + hadNoPreviousEntry = entry == null; + if (hadNoPreviousEntry) { + cache.put(cacheKey, serializedEntry); + } + } + return hadNoPreviousEntry; + } }); } } From d57cca4097b4d2ae192350ffe0af817f9c904c02 Mon Sep 17 00:00:00 2001 From: Tyler Potter Date: Mon, 15 Sep 2025 10:24:48 -0600 Subject: [PATCH 2/4] spotless --- eppo/build.gradle | 2 +- .../java/cloud/eppo/android/cache/LRUAssignmentCache.java | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eppo/build.gradle b/eppo/build.gradle index b28d44c0..01750ce1 100644 --- a/eppo/build.gradle +++ b/eppo/build.gradle @@ -68,7 +68,7 @@ ext.versions = [ ] dependencies { - api 'cloud.eppo:sdk-common-jvm:3.12.2' + api 'cloud.eppo:sdk-common-jvm:3.13.0' implementation 'org.slf4j:slf4j-api:2.0.17' diff --git a/eppo/src/main/java/cloud/eppo/android/cache/LRUAssignmentCache.java b/eppo/src/main/java/cloud/eppo/android/cache/LRUAssignmentCache.java index 09ef049f..96d74c03 100644 --- a/eppo/src/main/java/cloud/eppo/android/cache/LRUAssignmentCache.java +++ b/eppo/src/main/java/cloud/eppo/android/cache/LRUAssignmentCache.java @@ -21,14 +21,14 @@ public String get(String cacheKey) { return cache.get(cacheKey); } - // @Override + @Override public boolean putIfAbsent(String cacheKey, @NonNull String serializedEntry) { boolean hadNoPreviousEntry; synchronized (cache) { String entry = cache.get(cacheKey); hadNoPreviousEntry = entry == null; if (hadNoPreviousEntry) { - cache.put(cacheKey, serializedEntry); + cache.put(cacheKey, serializedEntry); } } return hadNoPreviousEntry; From f543ea72cefe3ed200e5c8ce0df02f2c0d72777a Mon Sep 17 00:00:00 2001 From: Tyler Potter Date: Mon, 15 Sep 2025 10:53:54 -0600 Subject: [PATCH 3/4] chore: release 4.11.0 --- README.md | 2 +- eppo/build.gradle | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9b06979b..f8a7a236 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ feature flagging and experimentation for Eppo customers. An API key is required ```groovy dependencies { - implementation 'cloud.eppo:android-sdk:4.10.2' + implementation 'cloud.eppo:android-sdk:4.11.0' } dependencyResolutionManagement { diff --git a/eppo/build.gradle b/eppo/build.gradle index 01750ce1..87782192 100644 --- a/eppo/build.gradle +++ b/eppo/build.gradle @@ -7,7 +7,7 @@ plugins { } group = "cloud.eppo" -version = "4.10.3-SNAPSHOT" +version = "4.11.0" android { buildFeatures.buildConfig true From 038772c161831fad1e8a16666fc28197f36ff434 Mon Sep 17 00:00:00 2001 From: Tyler Potter Date: Mon, 15 Sep 2025 11:00:29 -0600 Subject: [PATCH 4/4] bump snapshot version --- eppo/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eppo/build.gradle b/eppo/build.gradle index 87782192..51fa7fe3 100644 --- a/eppo/build.gradle +++ b/eppo/build.gradle @@ -7,7 +7,7 @@ plugins { } group = "cloud.eppo" -version = "4.11.0" +version = "4.11.0-SNAPSHOT" android { buildFeatures.buildConfig true