Update dependency org.matrix.rustcomponents:sdk-android to v26.06.11 (#7014)
* Update dependency org.matrix.rustcomponents:sdk-android to v26.06.11 * Fix broken API changes: add new `ContentScanner` error type. --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Jorge Martín <jorgem@element.io>
This commit is contained in:
@@ -183,7 +183,7 @@ test_detekt_test = { module = "io.gitlab.arturbosch.detekt:detekt-test", version
|
||||
# https://github.com/matrix-org/matrix-rust-components-kotlin/commits/main/sdk/sdk-android/src/main/kotlin/org/matrix/rustcomponents/sdk/matrix_sdk_ffi.kt
|
||||
# All new features should not be implemented in the pull request that upgrades the version, developers should
|
||||
# only fix API breaks and may add some TODOs.
|
||||
matrix_sdk = "org.matrix.rustcomponents:sdk-android:26.06.3"
|
||||
matrix_sdk = "org.matrix.rustcomponents:sdk-android:26.06.11"
|
||||
|
||||
# Others
|
||||
coil = { module = "io.coil-kt.coil3:coil", version.ref = "coil" }
|
||||
|
||||
+1
@@ -15,6 +15,7 @@ sealed class ClientException(message: String, val details: String?, cause: Throw
|
||||
details = details,
|
||||
cause = cause
|
||||
)
|
||||
class ContentScanner(message: String, val reason: ContentScannerErrorReason) : ClientException(message, null, null)
|
||||
class Other(message: String, cause: Throwable? = null) : ClientException(message, null, cause)
|
||||
}
|
||||
|
||||
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
/*
|
||||
* Copyright (c) 2026 Element Creations Ltd.
|
||||
*
|
||||
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.api.exception
|
||||
|
||||
enum class ContentScannerErrorReason {
|
||||
MCS_MALFORMED_JSON,
|
||||
MCS_MEDIA_FAILED_TO_DECRYPT,
|
||||
M_MISSING_TOKEN,
|
||||
M_UNKNOWN_TOKEN,
|
||||
M_NOT_FOUND,
|
||||
MCS_MEDIA_NOT_CLEAN,
|
||||
MCS_MIME_TYPE_FORBIDDEN,
|
||||
MCS_BAD_DECRYPTION,
|
||||
M_UNKNOWN,
|
||||
MCS_MEDIA_REQUEST_FAILED;
|
||||
|
||||
companion object;
|
||||
|
||||
fun isDangerous(): Boolean = when (this) {
|
||||
MCS_MEDIA_NOT_CLEAN, MCS_MIME_TYPE_FORBIDDEN -> true
|
||||
else -> false
|
||||
}
|
||||
}
|
||||
+5
@@ -9,6 +9,7 @@
|
||||
package io.element.android.libraries.matrix.impl.exception
|
||||
|
||||
import io.element.android.libraries.matrix.api.exception.ClientException
|
||||
import io.element.android.libraries.matrix.api.exception.ContentScannerErrorReason
|
||||
import org.matrix.rustcomponents.sdk.ClientException as RustClientException
|
||||
|
||||
fun Throwable.mapClientException(): ClientException {
|
||||
@@ -23,6 +24,10 @@ fun Throwable.mapClientException(): ClientException {
|
||||
details = details,
|
||||
cause = this,
|
||||
)
|
||||
is RustClientException.ContentScanner -> ClientException.ContentScanner(
|
||||
message = message,
|
||||
reason = ContentScannerErrorReason.fromRust(reason),
|
||||
)
|
||||
}
|
||||
}
|
||||
else -> ClientException.Other(message ?: "Unknown error", this)
|
||||
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
/*
|
||||
* Copyright (c) 2026 Element Creations Ltd.
|
||||
*
|
||||
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.impl.exception
|
||||
|
||||
import io.element.android.libraries.matrix.api.exception.ContentScannerErrorReason
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.MCS_BAD_DECRYPTION
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.MCS_MALFORMED_JSON
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.MCS_MEDIA_FAILED_TO_DECRYPT
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.MCS_MEDIA_NOT_CLEAN
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.MCS_MEDIA_REQUEST_FAILED
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.MCS_MIME_TYPE_FORBIDDEN
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.M_MISSING_TOKEN
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.M_NOT_FOUND
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.M_UNKNOWN
|
||||
import uniffi.matrix_sdk_contentscanner.ErrorReason.M_UNKNOWN_TOKEN
|
||||
|
||||
fun ContentScannerErrorReason.Companion.fromRust(reason: ErrorReason) = when (reason) {
|
||||
M_UNKNOWN -> ContentScannerErrorReason.M_UNKNOWN
|
||||
M_MISSING_TOKEN -> ContentScannerErrorReason.M_MISSING_TOKEN
|
||||
M_UNKNOWN_TOKEN -> ContentScannerErrorReason.M_UNKNOWN_TOKEN
|
||||
MCS_MALFORMED_JSON -> ContentScannerErrorReason.MCS_MALFORMED_JSON
|
||||
MCS_MEDIA_FAILED_TO_DECRYPT -> ContentScannerErrorReason.MCS_MEDIA_FAILED_TO_DECRYPT
|
||||
M_NOT_FOUND -> ContentScannerErrorReason.M_NOT_FOUND
|
||||
MCS_MEDIA_NOT_CLEAN -> ContentScannerErrorReason.MCS_MEDIA_NOT_CLEAN
|
||||
MCS_MIME_TYPE_FORBIDDEN -> ContentScannerErrorReason.MCS_MIME_TYPE_FORBIDDEN
|
||||
MCS_BAD_DECRYPTION -> ContentScannerErrorReason.MCS_BAD_DECRYPTION
|
||||
MCS_MEDIA_REQUEST_FAILED -> ContentScannerErrorReason.MCS_MEDIA_REQUEST_FAILED
|
||||
}
|
||||
Reference in New Issue
Block a user