From 55791ad2ffc779991b5a27c8225b19058547838c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Mon, 22 Dec 2025 14:16:35 +0100 Subject: [PATCH 1/3] Make sure we don't obfuscate `Metro` classes --- app/proguard-rules.pro | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index d915d67a25..9207e06edc 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -70,3 +70,6 @@ -keep class uniffi.** { *;} -keep class io.element.android.x.di.** { *; } -keepclasseswithmembernames,allowoptimization,allowshrinking class io.element.android.** { *; } + +# Keep Metro classes +-keep class dev.zacsweers.metro.** { *; } From 9127ce743d3aeb5a0a05aa93be5429258c1511b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Mon, 22 Dec 2025 14:17:08 +0100 Subject: [PATCH 2/3] Change `JsonProvider` from a parent interface to a typealias This fixes the error seen in the nightlies --- .../element/android/libraries/androidutils/json/JsonProvider.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/json/JsonProvider.kt b/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/json/JsonProvider.kt index 1876bbd3f5..fb92adddb9 100644 --- a/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/json/JsonProvider.kt +++ b/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/json/JsonProvider.kt @@ -17,7 +17,7 @@ import kotlinx.serialization.json.Json /** * Provides a Json instance configured to ignore unknown keys. */ -fun interface JsonProvider : Provider +typealias JsonProvider = Provider @ContributesBinding(AppScope::class) @SingleIn(AppScope::class) From 3a6e82a7f0ba5be6675388a7395ae230d6a54dd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Mon, 22 Dec 2025 14:17:19 +0100 Subject: [PATCH 3/3] Do some cleanup in `VectorUnifiedPushMessagingReceiverBindings` --- .../VectorUnifiedPushMessagingReceiverBindings.kt | 5 ----- 1 file changed, 5 deletions(-) diff --git a/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/pushproviders/unifiedpush/VectorUnifiedPushMessagingReceiverBindings.kt b/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/pushproviders/unifiedpush/VectorUnifiedPushMessagingReceiverBindings.kt index da13aa93d1..1d227b3b83 100644 --- a/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/pushproviders/unifiedpush/VectorUnifiedPushMessagingReceiverBindings.kt +++ b/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/pushproviders/unifiedpush/VectorUnifiedPushMessagingReceiverBindings.kt @@ -9,14 +9,9 @@ package io.element.android.libraries.pushproviders.unifiedpush import dev.zacsweers.metro.AppScope -import dev.zacsweers.metro.Binds import dev.zacsweers.metro.ContributesTo -import org.unifiedpush.android.connector.MessagingReceiver @ContributesTo(AppScope::class) interface VectorUnifiedPushMessagingReceiverBindings { fun inject(receiver: VectorUnifiedPushMessagingReceiver) - - @Binds - fun bindsMessagingReceiver(vectorUnifiedPushMessagingReceiver: VectorUnifiedPushMessagingReceiver): MessagingReceiver }