diff --git a/buildSrc/src/main/kotlin/io/embrace/gradle/InternalEmbracePlugin.kt b/buildSrc/src/main/kotlin/io/embrace/gradle/InternalEmbracePlugin.kt index 5cb9b01dd..a48bfe9c9 100644 --- a/buildSrc/src/main/kotlin/io/embrace/gradle/InternalEmbracePlugin.kt +++ b/buildSrc/src/main/kotlin/io/embrace/gradle/InternalEmbracePlugin.kt @@ -10,6 +10,7 @@ import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.api.plugins.quality.Checkstyle import org.gradle.api.plugins.quality.CheckstyleExtension +import org.gradle.api.tasks.compile.JavaCompile import org.gradle.kotlin.dsl.apply import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.dependencies @@ -27,6 +28,7 @@ class InternalEmbracePlugin : Plugin { project.pluginManager.withPlugin("com.android.library") { val android = project.extensions.getByType(LibraryExtension::class.java) configureAndroidExtension(project, android) + configureJavaOptions(project) configureKotlinOptions(project) } @@ -173,6 +175,13 @@ class InternalEmbracePlugin : Plugin { } } + private fun configureJavaOptions(project: Project) { + project.tasks.withType(JavaCompile::class.java).all { + val args = listOf("-Xlint:unchecked", "-Xlint:deprecation") + options.compilerArgs.addAll(args) + } + } + /** * Adds common plugins to the project. */ diff --git a/embrace-android-sdk/src/integrationTest/kotlin/io/embrace/android/embracesdk/testcases/TracingApiTest.kt b/embrace-android-sdk/src/integrationTest/kotlin/io/embrace/android/embracesdk/testcases/TracingApiTest.kt index 2a6c7c3e5..beed73856 100644 --- a/embrace-android-sdk/src/integrationTest/kotlin/io/embrace/android/embracesdk/testcases/TracingApiTest.kt +++ b/embrace-android-sdk/src/integrationTest/kotlin/io/embrace/android/embracesdk/testcases/TracingApiTest.kt @@ -40,9 +40,6 @@ internal class TracingApiTest { harness.fakeClock.tick(100L) embrace.start(harness.fakeCoreModule.context) harness.recordSession { - assertTrue( - returnIfConditionMet(desiredValueSupplier = { true }, waitTimeMs = 1000) { embrace.isTracingAvailable() } - ) val parentSpan = checkNotNull(embrace.createSpan(name = "test-trace-root")) assertTrue(parentSpan.start()) assertTrue(parentSpan.addAttribute("oMg", "OmG")) diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/Embrace.java b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/Embrace.java index c066fd2c1..eefe8d5f7 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/Embrace.java +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/Embrace.java @@ -413,6 +413,7 @@ public boolean endView(@NonNull String name) { return false; } + @SuppressWarnings("deprecation") @Override public boolean isTracingAvailable() { return impl.tracer.isTracingAvailable(); diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/EmbraceInternalInterfaceImpl.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/EmbraceInternalInterfaceImpl.kt index 3913b1167..4f1471f0e 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/EmbraceInternalInterfaceImpl.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/EmbraceInternalInterfaceImpl.kt @@ -69,6 +69,7 @@ internal class EmbraceInternalInterfaceImpl( ) } + @Suppress("DEPRECATION") override fun logHandledException( throwable: Throwable, type: LogType, diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/UninitializedSdkInternalInterfaceImpl.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/UninitializedSdkInternalInterfaceImpl.kt index a77be7dd7..06d5174dc 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/UninitializedSdkInternalInterfaceImpl.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/UninitializedSdkInternalInterfaceImpl.kt @@ -19,6 +19,7 @@ internal class UninitializedSdkInternalInterfaceImpl( override fun logError(message: String, properties: Map?, stacktrace: String?, isException: Boolean) {} + @Suppress("DEPRECATION") override fun logHandledException( throwable: Throwable, type: LogType, diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/ViewSwazzledHooks.java b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/ViewSwazzledHooks.java index 301dbbb80..8d4e27ab4 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/ViewSwazzledHooks.java +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/ViewSwazzledHooks.java @@ -25,7 +25,7 @@ static void logOnClickEvent(android.view.View view, TapBreadcrumbType breadcrumb } catch (Exception e) { viewName = UNKNOWN_ELEMENT_NAME; } - Pair point = null; + Pair point = null; try { point = new Pair<>(view.getX(), view.getY()); } catch (Exception e) { diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/metadata/MetadataUtils.java b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/metadata/MetadataUtils.java index 6ab3899a6..a190b0e1b 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/metadata/MetadataUtils.java +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/metadata/MetadataUtils.java @@ -109,6 +109,7 @@ static int getOperatingSystemVersionCode() { * @return the device's screen resolution */ @Nullable + @SuppressWarnings("deprecation") static String getScreenResolution(WindowManager windowManager) { try { InternalStaticEmbraceLogger.logDeveloper("MetadataUtils", "Computing screen resolution"); @@ -164,6 +165,7 @@ static long getInternalStorageFreeCapacity(StatFs statFs) { */ @TargetApi(Build.VERSION_CODES.O) @Nullable + @SuppressWarnings("deprecation") static Long getDeviceDiskAppUsage( StorageStatsManager storageStatsManager, PackageManager packageManager, diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/AndroidServicesModule.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/AndroidServicesModule.kt index f901f8182..ccd5929a3 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/AndroidServicesModule.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/AndroidServicesModule.kt @@ -1,3 +1,5 @@ +@file:Suppress("DEPRECATION") + package io.embrace.android.embracesdk.injection import android.preference.PreferenceManager @@ -15,6 +17,7 @@ internal class AndroidServicesModuleImpl( coreModule: CoreModule, workerThreadModule: WorkerThreadModule, ) : AndroidServicesModule { + override val preferencesService: PreferencesService by singleton { val lazyPrefs = lazy { PreferenceManager.getDefaultSharedPreferences( diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/EssentialServiceModule.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/EssentialServiceModule.kt index 60d69267a..e58d5f8aa 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/EssentialServiceModule.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/injection/EssentialServiceModule.kt @@ -92,6 +92,7 @@ internal class EssentialServiceModuleImpl( coreModule.jsonSerializer ) + @Suppress("DEPRECATION") private val lazyPackageInfo = lazy { coreModule.context.packageManager.getPackageInfo(coreModule.context.packageName, 0) } @@ -106,6 +107,7 @@ internal class EssentialServiceModuleImpl( } } + @Suppress("DEPRECATION") private val lazyAppVersionCode: Lazy = lazy { try { lazyPackageInfo.value.versionCode.toString() diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceInternalInterface.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceInternalInterface.kt index 8401fcfb0..dec632608 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceInternalInterface.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceInternalInterface.kt @@ -1,3 +1,5 @@ +@file:Suppress("DEPRECATION") + package io.embrace.android.embracesdk.internal import android.util.Pair diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/prefs/EmbracePreferencesService.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/prefs/EmbracePreferencesService.kt index 1d22b6f87..c79a00c35 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/prefs/EmbracePreferencesService.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/prefs/EmbracePreferencesService.kt @@ -141,6 +141,7 @@ internal class EmbracePreferencesService( editor.apply() } + @Suppress("UNCHECKED_CAST") private fun SharedPreferences.getMapPreference( key: String ): Map? { diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/samples/ComparableVersion.java b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/samples/ComparableVersion.java index 9e2821459..4bfe12ba5 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/samples/ComparableVersion.java +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/samples/ComparableVersion.java @@ -62,6 +62,7 @@ * @see "Versioning" on Maven Wiki */ +@SuppressWarnings("unchecked") class ComparableVersion implements Comparable { private String value; diff --git a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/session/lifecycle/EmbraceProcessStateService.kt b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/session/lifecycle/EmbraceProcessStateService.kt index f0d071291..36632ec11 100644 --- a/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/session/lifecycle/EmbraceProcessStateService.kt +++ b/embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/session/lifecycle/EmbraceProcessStateService.kt @@ -1,3 +1,5 @@ +@file:Suppress("DEPRECATION") + package io.embrace.android.embracesdk.session.lifecycle import androidx.lifecycle.Lifecycle diff --git a/embrace-android-sdk/src/test/java/com/android/server/os/TombstoneProtos.java b/embrace-android-sdk/src/test/java/com/android/server/os/TombstoneProtos.java index 234ec93cc..aff041216 100644 --- a/embrace-android-sdk/src/test/java/com/android/server/os/TombstoneProtos.java +++ b/embrace-android-sdk/src/test/java/com/android/server/os/TombstoneProtos.java @@ -3,6 +3,7 @@ package com.android.server.os; +@SuppressWarnings("deprecation") public final class TombstoneProtos { private TombstoneProtos() {} public static void registerAllExtensions( diff --git a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceDeliveryCacheManagerTest.kt b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceDeliveryCacheManagerTest.kt index 44aee2d40..13b148c8d 100644 --- a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceDeliveryCacheManagerTest.kt +++ b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/EmbraceDeliveryCacheManagerTest.kt @@ -31,7 +31,6 @@ import org.junit.BeforeClass import org.junit.Test import java.io.ByteArrayOutputStream import java.io.OutputStream -import java.nio.charset.Charset internal class EmbraceDeliveryCacheManagerTest { @@ -150,11 +149,9 @@ internal class EmbraceDeliveryCacheManagerTest { every { cacheService.cacheBytes(any(), any()) } throws Exception() val sessionMessage = createSessionMessage("test_cache_fails") - val expectedBytes = serializer.toJson(sessionMessage).toByteArray() deliveryCacheManager.saveSession(sessionMessage, NORMAL_END) - val charset = Charset.defaultCharset() assertNull(deliveryCacheManager.loadSessionAsAction("test_cache_fails")) } diff --git a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/UninitializedSdkInternalInterfaceImplTest.kt b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/UninitializedSdkInternalInterfaceImplTest.kt index 052b95074..df370688e 100644 --- a/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/UninitializedSdkInternalInterfaceImplTest.kt +++ b/embrace-android-sdk/src/test/java/io/embrace/android/embracesdk/UninitializedSdkInternalInterfaceImplTest.kt @@ -23,6 +23,7 @@ internal class UninitializedSdkInternalInterfaceImplTest { impl = UninitializedSdkInternalInterfaceImpl(InternalTracer(initModule.tracer, initModule.clock)) } + @Suppress("DEPRECATION") @Test fun `check no errors thrown when invoked`() { impl.logInfo("", emptyMap())