From 6e3e408275a67e85c697526179e8e351fb996761 Mon Sep 17 00:00:00 2001 From: Jim Borden Date: Thu, 11 Jun 2026 10:04:21 +0900 Subject: [PATCH] Fix nullability mismatch in deprecated newConfig extension getCollectionConfigs() was tightened to take a non-null BaseReplicatorConfiguration (CBL-7303), but the re-added 3.x deprecated ReplicatorConfiguration?.newConfig extension still passes its nullable receiver, breaking compilation. Guard the call with this?.let { getCollectionConfigs(it) }. This matches the 3.3 behavior: the ReplicatorConfiguration constructor treats a null collection map as empty, so a null receiver yields an empty configuration exactly as before. Co-Authored-By: Claude Opus 4.8 (1M context) --- common/main/kotlin/com/couchbase/lite/ConfigurationFactories.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/main/kotlin/com/couchbase/lite/ConfigurationFactories.kt b/common/main/kotlin/com/couchbase/lite/ConfigurationFactories.kt index 41adce76..fb2caecf 100644 --- a/common/main/kotlin/com/couchbase/lite/ConfigurationFactories.kt +++ b/common/main/kotlin/com/couchbase/lite/ConfigurationFactories.kt @@ -100,7 +100,7 @@ fun ReplicatorConfiguration?.newConfig( val endPt = target ?: this?.target ?: throw IllegalArgumentException("A ReplicatorConfiguration must specify an endpoint") val config = if (collections == null) { - ReplicatorConfiguration(endPt, getCollectionConfigs(this)) + ReplicatorConfiguration(endPt, this?.let { getCollectionConfigs(it) }) } else { val rc = ReplicatorConfiguration(endPt) // Lint will flip out if you try to use `forEach` here.