From e6861ea9883c7197222daf62c1bd5315ea5e1f1b Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Tue, 2 Dec 2025 15:13:29 -0500 Subject: [PATCH] Removes expired addressable events. --- .../com/vitorpamplona/amethyst/model/LocalCache.kt | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/model/LocalCache.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/model/LocalCache.kt index 5f3e2f3ce..772d3c1f6 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/model/LocalCache.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/model/LocalCache.kt @@ -2480,19 +2480,25 @@ object LocalCache : ILocalCache { checkNotInMainThread() val now = TimeUtils.now() - val toBeRemoved = notes.filter { _, it -> it.event?.isExpirationBefore(now) == true } + val versionsToBeRemoved = notes.filter { _, it -> it.event?.isExpirationBefore(now) == true } + val addressesToBeRemoved = addressables.filter { _, it -> it.event?.isExpirationBefore(now) == true } val childrenToBeRemoved = mutableListOf() - toBeRemoved.forEach { + versionsToBeRemoved.forEach { + removeFromCache(it) + childrenToBeRemoved.addAll(it.removeAllChildNotes()) + } + + addressesToBeRemoved.forEach { removeFromCache(it) childrenToBeRemoved.addAll(it.removeAllChildNotes()) } removeFromCache(childrenToBeRemoved) - if (toBeRemoved.size > 1) { - println("PRUNE: ${toBeRemoved.size} thread replies removed.") + if (versionsToBeRemoved.size > 1 || addressesToBeRemoved.size > 1) { + println("PRUNE: ${versionsToBeRemoved.size} events and ${addressesToBeRemoved.size} expired.") } }