Upgrade metalava to ab/7738715
Biggest change in this upgrade is new API lint check for methods
that return ListenableFuture to have Async suffix.
Test: ./gradlew updateApi
Relnote: N/A
Change-Id: Ic40e4c083f682e477a0c1cd460428e96bf28ef5f
diff --git a/ads/ads-identifier/api/api_lint.ignore b/ads/ads-identifier/api/api_lint.ignore
new file mode 100644
index 0000000..a514159
--- /dev/null
+++ b/ads/ads-identifier/api/api_lint.ignore
@@ -0,0 +1,3 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.ads.identifier.AdvertisingIdClient#getAdvertisingIdInfo(android.content.Context):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/annotation/annotation-experimental/api/current.txt b/annotation/annotation-experimental/api/current.txt
index 84b72b3..30082f6 100644
--- a/annotation/annotation-experimental/api/current.txt
+++ b/annotation/annotation-experimental/api/current.txt
@@ -7,7 +7,7 @@
}
@kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) @kotlin.annotation.Target(allowedTargets=kotlin.annotation.AnnotationTarget) public @interface RequiresOptIn {
- method public abstract androidx.annotation.RequiresOptIn.Level level();
+ method public abstract androidx.annotation.RequiresOptIn.Level level() default androidx.annotation.RequiresOptIn.Level.ERROR;
property public abstract androidx.annotation.RequiresOptIn.Level level;
}
@@ -21,7 +21,7 @@
package androidx.annotation.experimental {
@Deprecated @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) @kotlin.annotation.Target(allowedTargets=kotlin.annotation.AnnotationTarget) public @interface Experimental {
- method @Deprecated public abstract androidx.annotation.experimental.Experimental.Level level();
+ method @Deprecated public abstract androidx.annotation.experimental.Experimental.Level level() default androidx.annotation.experimental.Experimental.Level.ERROR;
property public abstract androidx.annotation.experimental.Experimental.Level level;
}
diff --git a/annotation/annotation-experimental/api/public_plus_experimental_current.txt b/annotation/annotation-experimental/api/public_plus_experimental_current.txt
index 84b72b3..30082f6 100644
--- a/annotation/annotation-experimental/api/public_plus_experimental_current.txt
+++ b/annotation/annotation-experimental/api/public_plus_experimental_current.txt
@@ -7,7 +7,7 @@
}
@kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) @kotlin.annotation.Target(allowedTargets=kotlin.annotation.AnnotationTarget) public @interface RequiresOptIn {
- method public abstract androidx.annotation.RequiresOptIn.Level level();
+ method public abstract androidx.annotation.RequiresOptIn.Level level() default androidx.annotation.RequiresOptIn.Level.ERROR;
property public abstract androidx.annotation.RequiresOptIn.Level level;
}
@@ -21,7 +21,7 @@
package androidx.annotation.experimental {
@Deprecated @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) @kotlin.annotation.Target(allowedTargets=kotlin.annotation.AnnotationTarget) public @interface Experimental {
- method @Deprecated public abstract androidx.annotation.experimental.Experimental.Level level();
+ method @Deprecated public abstract androidx.annotation.experimental.Experimental.Level level() default androidx.annotation.experimental.Experimental.Level.ERROR;
property public abstract androidx.annotation.experimental.Experimental.Level level;
}
diff --git a/annotation/annotation-experimental/api/restricted_current.txt b/annotation/annotation-experimental/api/restricted_current.txt
index 84b72b3..30082f6 100644
--- a/annotation/annotation-experimental/api/restricted_current.txt
+++ b/annotation/annotation-experimental/api/restricted_current.txt
@@ -7,7 +7,7 @@
}
@kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) @kotlin.annotation.Target(allowedTargets=kotlin.annotation.AnnotationTarget) public @interface RequiresOptIn {
- method public abstract androidx.annotation.RequiresOptIn.Level level();
+ method public abstract androidx.annotation.RequiresOptIn.Level level() default androidx.annotation.RequiresOptIn.Level.ERROR;
property public abstract androidx.annotation.RequiresOptIn.Level level;
}
@@ -21,7 +21,7 @@
package androidx.annotation.experimental {
@Deprecated @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) @kotlin.annotation.Target(allowedTargets=kotlin.annotation.AnnotationTarget) public @interface Experimental {
- method @Deprecated public abstract androidx.annotation.experimental.Experimental.Level level();
+ method @Deprecated public abstract androidx.annotation.experimental.Experimental.Level level() default androidx.annotation.experimental.Experimental.Level.ERROR;
property public abstract androidx.annotation.experimental.Experimental.Level level;
}
diff --git a/appsearch/appsearch-local-storage/api/api_lint.ignore b/appsearch/appsearch-local-storage/api/api_lint.ignore
new file mode 100644
index 0000000..b8ebde2
--- /dev/null
+++ b/appsearch/appsearch-local-storage/api/api_lint.ignore
@@ -0,0 +1,3 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.appsearch.localstorage.LocalStorage#createSearchSession(androidx.appsearch.localstorage.LocalStorage.SearchContext):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/appsearch/appsearch-platform-storage/api/api_lint.ignore b/appsearch/appsearch-platform-storage/api/api_lint.ignore
new file mode 100644
index 0000000..0b6d021
--- /dev/null
+++ b/appsearch/appsearch-platform-storage/api/api_lint.ignore
@@ -0,0 +1,5 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.appsearch.platformstorage.PlatformStorage#createGlobalSearchSession(androidx.appsearch.platformstorage.PlatformStorage.GlobalSearchContext):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.platformstorage.PlatformStorage#createSearchSession(androidx.appsearch.platformstorage.PlatformStorage.SearchContext):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/appsearch/appsearch/api/api_lint.ignore b/appsearch/appsearch/api/api_lint.ignore
index 2f4353e..36bb389 100644
--- a/appsearch/appsearch/api/api_lint.ignore
+++ b/appsearch/appsearch/api/api_lint.ignore
@@ -1,4 +1,30 @@
// Baseline format: 1.0
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#getByDocumentId(androidx.appsearch.app.GetByDocumentIdRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#getNamespaces():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#getSchema():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#getStorageInfo():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#put(androidx.appsearch.app.PutDocumentsRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#remove(String, androidx.appsearch.app.SearchSpec):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#remove(androidx.appsearch.app.RemoveByDocumentIdRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#reportUsage(androidx.appsearch.app.ReportUsageRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#requestFlush():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.AppSearchSession#setSchema(androidx.appsearch.app.SetSchemaRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.GlobalSearchSession#reportSystemUsage(androidx.appsearch.app.ReportSystemUsageRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.appsearch.app.SearchResults#getNextPage():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
NullableCollection: androidx.appsearch.app.GenericDocument#getPropertyDocumentArray(String):
Return type of method androidx.appsearch.app.GenericDocument.getPropertyDocumentArray(String) is a nullable collection (`androidx.appsearch.app.GenericDocument[]`); must be non-null
NullableCollection: androidx.appsearch.app.GenericDocument#getPropertyStringArray(String):
diff --git a/browser/browser/api/api_lint.ignore b/browser/browser/api/api_lint.ignore
index 3b0edf0..56b3ce2 100644
--- a/browser/browser/api/api_lint.ignore
+++ b/browser/browser/api/api_lint.ignore
@@ -47,6 +47,10 @@
Inconsistent extra value; expected `androidx.browser.customtabs.extra.LAUNCH_AS_TRUSTED_WEB_ACTIVITY`, was `android.support.customtabs.extra.LAUNCH_AS_TRUSTED_WEB_ACTIVITY`
+AsyncSuffixFuture: androidx.browser.trusted.TrustedWebActivityServiceConnectionPool#connect(android.net.Uri, java.util.Set<androidx.browser.trusted.Token>, java.util.concurrent.Executor):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
AutoBoxing: androidx.browser.customtabs.CustomTabColorSchemeParams#navigationBarColor:
Must avoid boxed primitives (`java.lang.Integer`)
AutoBoxing: androidx.browser.customtabs.CustomTabColorSchemeParams#navigationBarDividerColor:
diff --git a/camera/camera-camera2/src/main/java/androidx/camera/camera2/interop/Camera2CameraControl.java b/camera/camera-camera2/src/main/java/androidx/camera/camera2/interop/Camera2CameraControl.java
index 7a11534..6d54120 100644
--- a/camera/camera-camera2/src/main/java/androidx/camera/camera2/interop/Camera2CameraControl.java
+++ b/camera/camera-camera2/src/main/java/androidx/camera/camera2/interop/Camera2CameraControl.java
@@ -149,6 +149,7 @@
* options are set or camera is closed before the current request completes.
* Cancelling the ListenableFuture is a no-op.
*/
+ @SuppressWarnings("AsyncSuffixFuture")
@NonNull
public ListenableFuture<Void> setCaptureRequestOptions(
@NonNull CaptureRequestOptions bundle) {
@@ -181,6 +182,7 @@
* completely. The future fails with {@link CameraControl.OperationCanceledException} if newer
* options are set or camera is closed before the current request completes.
*/
+ @SuppressWarnings("AsyncSuffixFuture")
@NonNull
public ListenableFuture<Void> addCaptureRequestOptions(
@NonNull CaptureRequestOptions bundle) {
diff --git a/camera/camera-core/api/api_lint.ignore b/camera/camera-core/api/api_lint.ignore
index 6dd7abf..0f8b2c1 100644
--- a/camera/camera-core/api/api_lint.ignore
+++ b/camera/camera-core/api/api_lint.ignore
@@ -1,4 +1,18 @@
// Baseline format: 1.0
+AsyncSuffixFuture: androidx.camera.core.CameraControl#cancelFocusAndMetering():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.camera.core.CameraControl#enableTorch(boolean):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.camera.core.CameraControl#setExposureCompensationIndex(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.camera.core.CameraControl#setLinearZoom(float):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.camera.core.CameraControl#setZoomRatio(float):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.camera.core.CameraControl#startFocusAndMetering(androidx.camera.core.FocusMeteringAction):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
BuilderSetStyle: androidx.camera.core.CameraSelector.Builder#requireLensFacing(int):
Builder methods names should use setFoo() / addFoo() / clearFoo() style: method androidx.camera.core.CameraSelector.Builder.requireLensFacing(int)
BuilderSetStyle: androidx.camera.core.CameraXConfig.Builder#fromConfig(androidx.camera.core.CameraXConfig):
diff --git a/camera/camera-lifecycle/api/api_lint.ignore b/camera/camera-lifecycle/api/api_lint.ignore
new file mode 100644
index 0000000..b5aaff7
--- /dev/null
+++ b/camera/camera-lifecycle/api/api_lint.ignore
@@ -0,0 +1,3 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.camera.lifecycle.ProcessCameraProvider#getInstance(android.content.Context):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/camera/camera-view/api/api_lint.ignore b/camera/camera-view/api/api_lint.ignore
new file mode 100644
index 0000000..c4b7e5f
--- /dev/null
+++ b/camera/camera-view/api/api_lint.ignore
@@ -0,0 +1,9 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.camera.view.CameraController#enableTorch(boolean):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.camera.view.CameraController#getInitializationFuture():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.camera.view.CameraController#setLinearZoom(float):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.camera.view.CameraController#setZoomRatio(float):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/compose/runtime/runtime/api/api_lint.ignore b/compose/runtime/runtime/api/api_lint.ignore
index 7e1ec61..edb0d98 100644
--- a/compose/runtime/runtime/api/api_lint.ignore
+++ b/compose/runtime/runtime/api/api_lint.ignore
@@ -31,7 +31,3 @@
Should avoid odd sized primitives; use `int` instead of `byte` in parameter value in androidx.compose.runtime.Composer.changed(byte value)
NoByteOrShort: androidx.compose.runtime.Composer#changed(short) parameter #0:
Should avoid odd sized primitives; use `int` instead of `short` in parameter value in androidx.compose.runtime.Composer.changed(short value)
-
-
-NullableCollection: androidx.compose.runtime.snapshots.MutableSnapshot#getModified$metalava_module():
- Return type of method androidx.compose.runtime.snapshots.MutableSnapshot.getModified$metalava_module() is a nullable collection (`java.util.Set`); must be non-null
diff --git a/compose/ui/ui-tooling-preview/api/current.txt b/compose/ui/ui-tooling-preview/api/current.txt
index c74b634..5edf923 100644
--- a/compose/ui/ui-tooling-preview/api/current.txt
+++ b/compose/ui/ui-tooling-preview/api/current.txt
@@ -27,18 +27,18 @@
}
@kotlin.annotation.MustBeDocumented @kotlin.annotation.Repeatable @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) @kotlin.annotation.Target(allowedTargets=kotlin.annotation.AnnotationTarget) public @interface Preview {
- method public abstract int apiLevel();
- method public abstract long backgroundColor();
- method public abstract String device();
- method public abstract float fontScale();
- method public abstract String group();
- method public abstract int heightDp();
- method public abstract String locale();
- method public abstract String name();
- method public abstract boolean showBackground();
- method public abstract boolean showSystemUi();
- method public abstract int uiMode();
- method public abstract int widthDp();
+ method public abstract int apiLevel() default -1;
+ method public abstract long backgroundColor() default 0;
+ method public abstract String device() default androidx.compose.ui.tooling.preview.Devices.DEFAULT;
+ method public abstract float fontScale() default 1.0;
+ method public abstract String group() default "";
+ method public abstract int heightDp() default -1;
+ method public abstract String locale() default "";
+ method public abstract String name() default "";
+ method public abstract boolean showBackground() default false;
+ method public abstract boolean showSystemUi() default false;
+ method public abstract int uiMode() default 0;
+ method public abstract int widthDp() default -1;
property public abstract int apiLevel;
property public abstract long backgroundColor;
property public abstract String device;
@@ -54,7 +54,7 @@
}
@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) public @interface PreviewParameter {
- method public abstract int limit();
+ method public abstract int limit() default kotlin.jvm.internal.IntCompanionObject.MAX_VALUE;
method public abstract kotlin.reflect.KClass<? extends androidx.compose.ui.tooling.preview.PreviewParameterProvider<?>> provider();
property public abstract int limit;
property public abstract kotlin.reflect.KClass<? extends androidx.compose.ui.tooling.preview.PreviewParameterProvider<?>> provider;
diff --git a/compose/ui/ui-tooling-preview/api/public_plus_experimental_current.txt b/compose/ui/ui-tooling-preview/api/public_plus_experimental_current.txt
index c74b634..5edf923 100644
--- a/compose/ui/ui-tooling-preview/api/public_plus_experimental_current.txt
+++ b/compose/ui/ui-tooling-preview/api/public_plus_experimental_current.txt
@@ -27,18 +27,18 @@
}
@kotlin.annotation.MustBeDocumented @kotlin.annotation.Repeatable @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) @kotlin.annotation.Target(allowedTargets=kotlin.annotation.AnnotationTarget) public @interface Preview {
- method public abstract int apiLevel();
- method public abstract long backgroundColor();
- method public abstract String device();
- method public abstract float fontScale();
- method public abstract String group();
- method public abstract int heightDp();
- method public abstract String locale();
- method public abstract String name();
- method public abstract boolean showBackground();
- method public abstract boolean showSystemUi();
- method public abstract int uiMode();
- method public abstract int widthDp();
+ method public abstract int apiLevel() default -1;
+ method public abstract long backgroundColor() default 0;
+ method public abstract String device() default androidx.compose.ui.tooling.preview.Devices.DEFAULT;
+ method public abstract float fontScale() default 1.0;
+ method public abstract String group() default "";
+ method public abstract int heightDp() default -1;
+ method public abstract String locale() default "";
+ method public abstract String name() default "";
+ method public abstract boolean showBackground() default false;
+ method public abstract boolean showSystemUi() default false;
+ method public abstract int uiMode() default 0;
+ method public abstract int widthDp() default -1;
property public abstract int apiLevel;
property public abstract long backgroundColor;
property public abstract String device;
@@ -54,7 +54,7 @@
}
@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) public @interface PreviewParameter {
- method public abstract int limit();
+ method public abstract int limit() default kotlin.jvm.internal.IntCompanionObject.MAX_VALUE;
method public abstract kotlin.reflect.KClass<? extends androidx.compose.ui.tooling.preview.PreviewParameterProvider<?>> provider();
property public abstract int limit;
property public abstract kotlin.reflect.KClass<? extends androidx.compose.ui.tooling.preview.PreviewParameterProvider<?>> provider;
diff --git a/compose/ui/ui-tooling-preview/api/restricted_current.txt b/compose/ui/ui-tooling-preview/api/restricted_current.txt
index c74b634..5edf923 100644
--- a/compose/ui/ui-tooling-preview/api/restricted_current.txt
+++ b/compose/ui/ui-tooling-preview/api/restricted_current.txt
@@ -27,18 +27,18 @@
}
@kotlin.annotation.MustBeDocumented @kotlin.annotation.Repeatable @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) @kotlin.annotation.Target(allowedTargets=kotlin.annotation.AnnotationTarget) public @interface Preview {
- method public abstract int apiLevel();
- method public abstract long backgroundColor();
- method public abstract String device();
- method public abstract float fontScale();
- method public abstract String group();
- method public abstract int heightDp();
- method public abstract String locale();
- method public abstract String name();
- method public abstract boolean showBackground();
- method public abstract boolean showSystemUi();
- method public abstract int uiMode();
- method public abstract int widthDp();
+ method public abstract int apiLevel() default -1;
+ method public abstract long backgroundColor() default 0;
+ method public abstract String device() default androidx.compose.ui.tooling.preview.Devices.DEFAULT;
+ method public abstract float fontScale() default 1.0;
+ method public abstract String group() default "";
+ method public abstract int heightDp() default -1;
+ method public abstract String locale() default "";
+ method public abstract String name() default "";
+ method public abstract boolean showBackground() default false;
+ method public abstract boolean showSystemUi() default false;
+ method public abstract int uiMode() default 0;
+ method public abstract int widthDp() default -1;
property public abstract int apiLevel;
property public abstract long backgroundColor;
property public abstract String device;
@@ -54,7 +54,7 @@
}
@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) public @interface PreviewParameter {
- method public abstract int limit();
+ method public abstract int limit() default kotlin.jvm.internal.IntCompanionObject.MAX_VALUE;
method public abstract kotlin.reflect.KClass<? extends androidx.compose.ui.tooling.preview.PreviewParameterProvider<?>> provider();
property public abstract int limit;
property public abstract kotlin.reflect.KClass<? extends androidx.compose.ui.tooling.preview.PreviewParameterProvider<?>> provider;
diff --git a/concurrent/concurrent-futures/api/api_lint.ignore b/concurrent/concurrent-futures/api/api_lint.ignore
index 41ee2724..faa2f5c 100644
--- a/concurrent/concurrent-futures/api/api_lint.ignore
+++ b/concurrent/concurrent-futures/api/api_lint.ignore
@@ -1,4 +1,8 @@
// Baseline format: 1.0
+AsyncSuffixFuture: androidx.concurrent.futures.CallbackToFutureAdapter#getFuture(androidx.concurrent.futures.CallbackToFutureAdapter.Resolver<T>):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
GenericException: androidx.concurrent.futures.CallbackToFutureAdapter.Resolver#attachCompleter(androidx.concurrent.futures.CallbackToFutureAdapter.Completer<T>):
Methods must not throw generic exceptions (`java.lang.Exception`)
diff --git a/core/core-appdigest/api/api_lint.ignore b/core/core-appdigest/api/api_lint.ignore
new file mode 100644
index 0000000..8ac521b1
--- /dev/null
+++ b/core/core-appdigest/api/api_lint.ignore
@@ -0,0 +1,5 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.core.appdigest.Checksums#getChecksums(android.content.Context, String, boolean, int, java.util.List<java.security.cert.Certificate>, java.util.concurrent.Executor):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.core.appdigest.Checksums#getFileChecksums(android.content.Context, String, int, String, java.util.List<java.security.cert.Certificate>, java.util.concurrent.Executor):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/core/core/api/api_lint.ignore b/core/core/api/api_lint.ignore
index d3e16b5a..aeda947 100644
--- a/core/core/api/api_lint.ignore
+++ b/core/core/api/api_lint.ignore
@@ -133,6 +133,10 @@
Method should return Collection<Drawable> (or subclass) instead of raw array; was `android.graphics.drawable.Drawable[]`
+AsyncSuffixFuture: androidx.core.content.PackageManagerCompat#getUnusedAppRestrictionsStatus(android.content.Context):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
BadFuture: androidx.core.text.PrecomputedTextCompat#getTextFuture(CharSequence, androidx.core.text.PrecomputedTextCompat.Params, java.util.concurrent.Executor):
Use ListenableFuture (library), or a combination of Consumer<T>, Executor, and CancellationSignal (platform) instead of java.util.concurrent.Future (method androidx.core.text.PrecomputedTextCompat.getTextFuture(CharSequence,androidx.core.text.PrecomputedTextCompat.Params,java.util.concurrent.Executor))
diff --git a/glance/glance-wear/api/api_lint.ignore b/glance/glance-wear/api/api_lint.ignore
new file mode 100644
index 0000000..49ff21e
--- /dev/null
+++ b/glance/glance-wear/api/api_lint.ignore
@@ -0,0 +1,5 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.glance.wear.GlanceTileService#onResourcesRequest(androidx.wear.tiles.RequestBuilders.ResourcesRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.glance.wear.GlanceTileService#onTileRequest(androidx.wear.tiles.RequestBuilders.TileRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/health/health-services-client/api/api_lint.ignore b/health/health-services-client/api/api_lint.ignore
index 79594d7..184c6f9e 100644
--- a/health/health-services-client/api/api_lint.ignore
+++ b/health/health-services-client/api/api_lint.ignore
@@ -1,5 +1,57 @@
// Baseline format: 1.0
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#addGoalToActiveExercise(androidx.health.services.client.data.ExerciseGoal):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#clearUpdateListener(androidx.health.services.client.ExerciseUpdateListener):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#endExercise():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#flushExercise():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#getCapabilities():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#getCurrentExerciseInfo():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#markLap():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#overrideAutoPauseAndResumeForActiveExercise(boolean):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#pauseExercise():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#prepareExercise(androidx.health.services.client.data.WarmUpConfig):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#removeGoalFromActiveExercise(androidx.health.services.client.data.ExerciseGoal):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#resumeExercise():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#setUpdateListener(androidx.health.services.client.ExerciseUpdateListener):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#setUpdateListener(androidx.health.services.client.ExerciseUpdateListener, java.util.concurrent.Executor):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.ExerciseClient#startExercise(androidx.health.services.client.data.ExerciseConfig):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.MeasureClient#getCapabilities():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.MeasureClient#registerCallback(androidx.health.services.client.data.DataType, androidx.health.services.client.MeasureCallback):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.MeasureClient#registerCallback(androidx.health.services.client.data.DataType, androidx.health.services.client.MeasureCallback, java.util.concurrent.Executor):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.MeasureClient#unregisterCallback(androidx.health.services.client.data.DataType, androidx.health.services.client.MeasureCallback):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.PassiveMonitoringClient#flush():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.PassiveMonitoringClient#getCapabilities():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.PassiveMonitoringClient#registerDataCallback(androidx.health.services.client.data.PassiveMonitoringConfig):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.PassiveMonitoringClient#registerDataCallback(androidx.health.services.client.data.PassiveMonitoringConfig, androidx.health.services.client.PassiveMonitoringCallback):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.PassiveMonitoringClient#registerPassiveGoalCallback(androidx.health.services.client.data.PassiveGoal, android.content.ComponentName):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.PassiveMonitoringClient#unregisterDataCallback():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.health.services.client.PassiveMonitoringClient#unregisterPassiveGoalCallback(androidx.health.services.client.data.PassiveGoal):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
ExecutorRegistration: androidx.health.services.client.ExerciseClient#clearUpdateListener(androidx.health.services.client.ExerciseUpdateListener):
Registration methods should have overload that accepts delivery Executor: `clearUpdateListener`
-ExecutorRegistration: androidx.health.services.client.PassiveMonitoringClient#registerDataCallback(androidx.health.services.client.data.PassiveMonitoringConfig, androidx.health.services.client.PassiveMonitoringCallback):
- Registration methods should have overload that accepts delivery Executor: `registerDataCallback`
\ No newline at end of file
diff --git a/media2/media2-common/api/api_lint.ignore b/media2/media2-common/api/api_lint.ignore
index 072b6d9f..051bfc9 100644
--- a/media2/media2-common/api/api_lint.ignore
+++ b/media2/media2-common/api/api_lint.ignore
@@ -1,4 +1,48 @@
// Baseline format: 1.0
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#addPlaylistItem(int, androidx.media2.common.MediaItem):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#deselectTrack(androidx.media2.common.SessionPlayer.TrackInfo):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#movePlaylistItem(int, int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#pause():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#play():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#prepare():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#removePlaylistItem(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#replacePlaylistItem(int, androidx.media2.common.MediaItem):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#seekTo(long):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#selectTrack(androidx.media2.common.SessionPlayer.TrackInfo):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#setAudioAttributes(androidx.media.AudioAttributesCompat):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#setMediaItem(androidx.media2.common.MediaItem):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#setPlaybackSpeed(float):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#setPlaylist(java.util.List<androidx.media2.common.MediaItem>, androidx.media2.common.MediaMetadata):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#setRepeatMode(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#setShuffleMode(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#setSurface(android.view.Surface):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#skipToNextPlaylistItem():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#skipToPlaylistItem(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#skipToPreviousPlaylistItem():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.common.SessionPlayer#updatePlaylistMetadata(androidx.media2.common.MediaMetadata):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
BuilderSetStyle: androidx.media2.common.MediaMetadata.Builder#putBitmap(String, android.graphics.Bitmap):
Builder methods names should use setFoo() / addFoo() / clearFoo() style: method androidx.media2.common.MediaMetadata.Builder.putBitmap(String,android.graphics.Bitmap)
BuilderSetStyle: androidx.media2.common.MediaMetadata.Builder#putFloat(String, float):
diff --git a/media2/media2-player/api/api_lint.ignore b/media2/media2-player/api/api_lint.ignore
index bc67ff2..1e12661 100644
--- a/media2/media2-player/api/api_lint.ignore
+++ b/media2/media2-player/api/api_lint.ignore
@@ -1,4 +1,60 @@
// Baseline format: 1.0
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#addPlaylistItem(int, androidx.media2.common.MediaItem):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#attachAuxEffect(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#deselectTrack(androidx.media2.common.SessionPlayer.TrackInfo):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#movePlaylistItem(int, int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#pause():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#play():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#prepare():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#removePlaylistItem(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#replacePlaylistItem(int, androidx.media2.common.MediaItem):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#seekTo(long):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#seekTo(long, int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#selectTrack(androidx.media2.common.SessionPlayer.TrackInfo):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setAudioAttributes(androidx.media.AudioAttributesCompat):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setAudioSessionId(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setAuxEffectSendLevel(float):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setMediaItem(androidx.media2.common.MediaItem):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setPlaybackParams(androidx.media2.player.PlaybackParams):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setPlaybackSpeed(float):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setPlayerVolume(float):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setPlaylist(java.util.List<androidx.media2.common.MediaItem>, androidx.media2.common.MediaMetadata):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setRepeatMode(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setShuffleMode(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#setSurface(android.view.Surface):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#skipToNextPlaylistItem():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#skipToPlaylistItem(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#skipToPreviousPlaylistItem():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.player.MediaPlayer#updatePlaylistMetadata(androidx.media2.common.MediaMetadata):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
AutoBoxing: androidx.media2.player.PlaybackParams#getAudioFallbackMode():
Must avoid boxed primitives (`java.lang.Integer`)
AutoBoxing: androidx.media2.player.PlaybackParams#getPitch():
diff --git a/media2/media2-session/api/api_lint.ignore b/media2/media2-session/api/api_lint.ignore
index 82f5bb9..a8726c6 100644
--- a/media2/media2-session/api/api_lint.ignore
+++ b/media2/media2-session/api/api_lint.ignore
@@ -1,4 +1,82 @@
// Baseline format: 1.0
+AsyncSuffixFuture: androidx.media2.session.MediaBrowser#getChildren(String, int, int, androidx.media2.session.MediaLibraryService.LibraryParams):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaBrowser#getItem(String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaBrowser#getLibraryRoot(androidx.media2.session.MediaLibraryService.LibraryParams):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaBrowser#getSearchResult(String, int, int, androidx.media2.session.MediaLibraryService.LibraryParams):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaBrowser#search(String, androidx.media2.session.MediaLibraryService.LibraryParams):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaBrowser#subscribe(String, androidx.media2.session.MediaLibraryService.LibraryParams):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaBrowser#unsubscribe(String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#addPlaylistItem(int, String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#adjustVolume(int, int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#deselectTrack(androidx.media2.common.SessionPlayer.TrackInfo):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#fastForward():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#movePlaylistItem(int, int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#pause():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#play():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#prepare():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#removePlaylistItem(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#replacePlaylistItem(int, String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#rewind():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#seekTo(long):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#selectTrack(androidx.media2.common.SessionPlayer.TrackInfo):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#sendCustomCommand(androidx.media2.session.SessionCommand, android.os.Bundle):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#setMediaItem(String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#setMediaUri(android.net.Uri, android.os.Bundle):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#setPlaybackSpeed(float):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#setPlaylist(java.util.List<java.lang.String>, androidx.media2.common.MediaMetadata):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#setRating(String, androidx.media2.common.Rating):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#setRepeatMode(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#setShuffleMode(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#setSurface(android.view.Surface):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#setVolumeTo(int, int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#skipBackward():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#skipForward():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#skipToNextPlaylistItem():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#skipToPlaylistItem(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#skipToPreviousPlaylistItem():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaController#updatePlaylistMetadata(androidx.media2.common.MediaMetadata):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaSession#sendCustomCommand(androidx.media2.session.MediaSession.ControllerInfo, androidx.media2.session.SessionCommand, android.os.Bundle):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.media2.session.MediaSession#setCustomLayout(androidx.media2.session.MediaSession.ControllerInfo, java.util.List<androidx.media2.session.MediaSession.CommandButton>):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
BadFuture: androidx.media2.session.RemoteSessionPlayer#adjustVolume(int):
Use ListenableFuture (library), or a combination of Consumer<T>, Executor, and CancellationSignal (platform) instead of java.util.concurrent.Future (method androidx.media2.session.RemoteSessionPlayer.adjustVolume(int))
BadFuture: androidx.media2.session.RemoteSessionPlayer#setVolume(int):
diff --git a/mediarouter/mediarouter/api/api_lint.ignore b/mediarouter/mediarouter/api/api_lint.ignore
index 4be53a4..deee53e 100644
--- a/mediarouter/mediarouter/api/api_lint.ignore
+++ b/mediarouter/mediarouter/api/api_lint.ignore
@@ -53,6 +53,10 @@
Inconsistent extra value; expected `androidx.mediarouter.media.extra.HTTP_STATUS_CODE`, was `android.media.status.extra.HTTP_STATUS_CODE`
+AsyncSuffixFuture: androidx.mediarouter.media.MediaRouter.OnPrepareTransferListener#onPrepareTransfer(androidx.mediarouter.media.MediaRouter.RouteInfo, androidx.mediarouter.media.MediaRouter.RouteInfo):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
ExecutorRegistration: androidx.mediarouter.media.MediaRouteProvider#setCallback(androidx.mediarouter.media.MediaRouteProvider.Callback):
Registration methods should have overload that accepts delivery Executor: `setCallback`
ExecutorRegistration: androidx.mediarouter.media.MediaRouter#addCallback(androidx.mediarouter.media.MediaRouteSelector, androidx.mediarouter.media.MediaRouter.Callback, int):
diff --git a/paging/paging-guava/api/api_lint.ignore b/paging/paging-guava/api/api_lint.ignore
new file mode 100644
index 0000000..b8469c9
--- /dev/null
+++ b/paging/paging-guava/api/api_lint.ignore
@@ -0,0 +1,3 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.paging.ListenableFuturePagingSource#loadFuture(androidx.paging.PagingSource.LoadParams<Key>):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/paging/paging-guava/src/main/java/androidx/paging/ListenableFutureRemoteMediator.kt b/paging/paging-guava/src/main/java/androidx/paging/ListenableFutureRemoteMediator.kt
index 982a4e9..a28145c 100644
--- a/paging/paging-guava/src/main/java/androidx/paging/ListenableFutureRemoteMediator.kt
+++ b/paging/paging-guava/src/main/java/androidx/paging/ListenableFutureRemoteMediator.kt
@@ -61,6 +61,7 @@
* @return [MediatorResult] signifying what [LoadState] to be passed to the UI, and whether
* there's more data available.
*/
+ @Suppress("AsyncSuffixFuture")
abstract fun loadFuture(
loadType: LoadType,
state: PagingState<Key, Value>
@@ -79,6 +80,7 @@
* * [SKIP_INITIAL_REFRESH][InitializeAction.SKIP_INITIAL_REFRESH] to wait for a
* refresh request from the UI before dispatching a [load] with load type [LoadType.REFRESH].
*/
+ @Suppress("AsyncSuffixFuture")
open fun initializeFuture(): ListenableFuture<InitializeAction> {
return Futures.immediateFuture(LAUNCH_INITIAL_REFRESH)
}
diff --git a/playground-common/playground.properties b/playground-common/playground.properties
index bf01123..530186c 100644
--- a/playground-common/playground.properties
+++ b/playground-common/playground.properties
@@ -27,6 +27,6 @@
# Disable docs
androidx.enableDocumentation=false
androidx.playground.snapshotBuildId=7680668
-androidx.playground.metalavaBuildId=7659017
+androidx.playground.metalavaBuildId=7738715
androidx.playground.dokkaBuildId=7472101
androidx.studio.type=playground
diff --git a/preference/preference/api/api_lint.ignore b/preference/preference/api/api_lint.ignore
index 99fff15..2f6c3aa 100644
--- a/preference/preference/api/api_lint.ignore
+++ b/preference/preference/api/api_lint.ignore
@@ -130,7 +130,7 @@
MissingNullability: androidx.preference.DropDownPreference#createAdapter():
Missing nullability on method `createAdapter` return
MissingNullability: androidx.preference.DropDownPreference#onBindViewHolder(androidx.preference.PreferenceViewHolder) parameter #0:
- Missing nullability on parameter `view` in method `onBindViewHolder`
+ Missing nullability on parameter `holder` in method `onBindViewHolder`
MissingNullability: androidx.preference.EditTextPreference#EditTextPreference(android.content.Context) parameter #0:
Missing nullability on parameter `context` in method `EditTextPreference`
MissingNullability: androidx.preference.EditTextPreference#EditTextPreference(android.content.Context, android.util.AttributeSet) parameter #0:
@@ -658,7 +658,7 @@
MissingNullability: androidx.preference.SeekBarPreference#SeekBarPreference(android.content.Context, android.util.AttributeSet, int, int) parameter #1:
Missing nullability on parameter `attrs` in method `SeekBarPreference`
MissingNullability: androidx.preference.SeekBarPreference#onBindViewHolder(androidx.preference.PreferenceViewHolder) parameter #0:
- Missing nullability on parameter `view` in method `onBindViewHolder`
+ Missing nullability on parameter `holder` in method `onBindViewHolder`
MissingNullability: androidx.preference.SeekBarPreference#onGetDefaultValue(android.content.res.TypedArray, int):
Missing nullability on method `onGetDefaultValue` return
MissingNullability: androidx.preference.SeekBarPreference#onGetDefaultValue(android.content.res.TypedArray, int) parameter #0:
diff --git a/wear/tiles/tiles-renderer/api/api_lint.ignore b/wear/tiles/tiles-renderer/api/api_lint.ignore
new file mode 100644
index 0000000..93c6574
--- /dev/null
+++ b/wear/tiles/tiles-renderer/api/api_lint.ignore
@@ -0,0 +1,29 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.wear.tiles.client.TileClient#requestApiVersion():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.client.TileClient#requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.client.TileClient#requestTile(androidx.wear.tiles.RequestBuilders.TileRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.client.TileClient#sendOnTileAddedEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.client.TileClient#sendOnTileEnterEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.client.TileClient#sendOnTileLeaveEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.client.TileClient#sendOnTileRemovedEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.connection.DefaultTileClient#requestApiVersion():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.connection.DefaultTileClient#requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.connection.DefaultTileClient#requestTile(androidx.wear.tiles.RequestBuilders.TileRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.connection.DefaultTileClient#sendOnTileAddedEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.connection.DefaultTileClient#sendOnTileEnterEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.connection.DefaultTileClient#sendOnTileLeaveEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.connection.DefaultTileClient#sendOnTileRemovedEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/wear/tiles/tiles-testing/api/api_lint.ignore b/wear/tiles/tiles-testing/api/api_lint.ignore
new file mode 100644
index 0000000..0af6fa5
--- /dev/null
+++ b/wear/tiles/tiles-testing/api/api_lint.ignore
@@ -0,0 +1,15 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.wear.tiles.testing.TestTileClient#requestApiVersion():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.testing.TestTileClient#requestResources(androidx.wear.tiles.RequestBuilders.ResourcesRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.testing.TestTileClient#requestTile(androidx.wear.tiles.RequestBuilders.TileRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.testing.TestTileClient#sendOnTileAddedEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.testing.TestTileClient#sendOnTileEnterEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.testing.TestTileClient#sendOnTileLeaveEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.testing.TestTileClient#sendOnTileRemovedEvent():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/wear/tiles/tiles/api/api_lint.ignore b/wear/tiles/tiles/api/api_lint.ignore
new file mode 100644
index 0000000..219d959
--- /dev/null
+++ b/wear/tiles/tiles/api/api_lint.ignore
@@ -0,0 +1,5 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.wear.tiles.TileService#onResourcesRequest(androidx.wear.tiles.RequestBuilders.ResourcesRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.tiles.TileService#onTileRequest(androidx.wear.tiles.RequestBuilders.TileRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/wear/watchface/watchface-client-guava/api/api_lint.ignore b/wear/watchface/watchface-client-guava/api/api_lint.ignore
new file mode 100644
index 0000000..fe4686d
--- /dev/null
+++ b/wear/watchface/watchface-client-guava/api/api_lint.ignore
@@ -0,0 +1,7 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.wear.watchface.client.ListenableWatchFaceControlClient#createWatchFaceControlClient(android.content.Context, String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.watchface.client.ListenableWatchFaceControlClient#listenableGetOrCreateInteractiveWatchFaceClient(String, androidx.wear.watchface.client.DeviceConfig, androidx.wear.watchface.client.WatchUiState, androidx.wear.watchface.style.UserStyleData, java.util.Map<java.lang.Integer,? extends androidx.wear.complications.data.ComplicationData>):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.watchface.client.ListenableWatchFaceControlClient.Companion#createWatchFaceControlClient(android.content.Context, String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/wear/watchface/watchface-client-guava/src/main/java/androidx/wear/watchface/client/ListenableWatchFaceControlClient.kt b/wear/watchface/watchface-client-guava/src/main/java/androidx/wear/watchface/client/ListenableWatchFaceControlClient.kt
index 0d27069..d1f4dbb 100644
--- a/wear/watchface/watchface-client-guava/src/main/java/androidx/wear/watchface/client/ListenableWatchFaceControlClient.kt
+++ b/wear/watchface/watchface-client-guava/src/main/java/androidx/wear/watchface/client/ListenableWatchFaceControlClient.kt
@@ -144,6 +144,7 @@
* @param slotIdToComplicationData The initial [androidx.wear.watchface.ComplicationSlot] data,
* or `null` if unavailable.
*/
+ @Suppress("AsyncSuffixFuture")
public open fun listenableGetOrCreateInteractiveWatchFaceClient(
id: String,
deviceConfig: DeviceConfig,
diff --git a/wear/watchface/watchface-client-guava/src/main/java/androidx/wear/watchface/client/ListenableWatchFaceMetadataClient.kt b/wear/watchface/watchface-client-guava/src/main/java/androidx/wear/watchface/client/ListenableWatchFaceMetadataClient.kt
index 5894779..fc42326 100644
--- a/wear/watchface/watchface-client-guava/src/main/java/androidx/wear/watchface/client/ListenableWatchFaceMetadataClient.kt
+++ b/wear/watchface/watchface-client-guava/src/main/java/androidx/wear/watchface/client/ListenableWatchFaceMetadataClient.kt
@@ -42,6 +42,7 @@
* control service can not be bound or a [ServiceStartFailureException] if the watch face
* dies during startup.
*/
+ @Suppress("AsyncSuffixFuture")
@JvmStatic
public fun createListenableWatchFaceMetadataClient(
context: Context,
diff --git a/wear/watchface/watchface-editor-guava/api/api_lint.ignore b/wear/watchface/watchface-editor-guava/api/api_lint.ignore
new file mode 100644
index 0000000..16ace53
--- /dev/null
+++ b/wear/watchface/watchface-editor-guava/api/api_lint.ignore
@@ -0,0 +1,11 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.wear.watchface.editor.ListenableEditorSession#getListenableComplicationPreviewData():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.watchface.editor.ListenableEditorSession#getListenableComplicationsProviderInfo():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.watchface.editor.ListenableEditorSession#listenableCreateOnWatchEditorSession(androidx.activity.ComponentActivity):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.watchface.editor.ListenableEditorSession#listenableOpenComplicationDataSourceChooser(int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.watchface.editor.ListenableEditorSession.Companion#listenableCreateOnWatchEditorSession(androidx.activity.ComponentActivity):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/wear/watchface/watchface-guava/api/api_lint.ignore b/wear/watchface/watchface-guava/api/api_lint.ignore
new file mode 100644
index 0000000..bd7afd7
--- /dev/null
+++ b/wear/watchface/watchface-guava/api/api_lint.ignore
@@ -0,0 +1,9 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.wear.watchface.ListenableCanvasRenderer#initFuture():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.watchface.ListenableGlesRenderer#onBackgroundThreadGlContextCreatedFuture():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.watchface.ListenableGlesRenderer#onUiThreadGlSurfaceCreatedFuture(int, int):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.watchface.ListenableWatchFaceService#createWatchFaceFuture(android.view.SurfaceHolder, androidx.wear.watchface.WatchState, androidx.wear.watchface.ComplicationSlotsManager, androidx.wear.watchface.style.CurrentUserStyleRepository):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/wear/wear-remote-interactions/api/api_lint.ignore b/wear/wear-remote-interactions/api/api_lint.ignore
new file mode 100644
index 0000000..12e000d
--- /dev/null
+++ b/wear/wear-remote-interactions/api/api_lint.ignore
@@ -0,0 +1,5 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.wear.remote.interactions.RemoteActivityHelper#startRemoteActivity(android.content.Intent):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.wear.remote.interactions.RemoteActivityHelper#startRemoteActivity(android.content.Intent, String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/window/window-extensions/api/api_lint.ignore b/window/window-extensions/api/api_lint.ignore
deleted file mode 100644
index c929e8e..0000000
--- a/window/window-extensions/api/api_lint.ignore
+++ /dev/null
@@ -1,3 +0,0 @@
-// Baseline format: 1.0
-ExecutorRegistration: androidx.window.extensions.layout.ExtensionInterface#setExtensionCallback(androidx.window.extensions.layout.ExtensionInterface.ExtensionCallback):
- Registration methods should have overload that accepts delivery Executor: `setExtensionCallback`
diff --git a/work/work-multiprocess/api/api_lint.ignore b/work/work-multiprocess/api/api_lint.ignore
new file mode 100644
index 0000000..07b6896
--- /dev/null
+++ b/work/work-multiprocess/api/api_lint.ignore
@@ -0,0 +1,7 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteCoroutineWorker#startRemoteWork():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteListenableWorker#startRemoteWork():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteListenableWorker#startWork():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/work/work-runtime-ktx/api/api_lint.ignore b/work/work-runtime-ktx/api/api_lint.ignore
index 539a475..ee82cf9 100644
--- a/work/work-runtime-ktx/api/api_lint.ignore
+++ b/work/work-runtime-ktx/api/api_lint.ignore
@@ -1,4 +1,8 @@
// Baseline format: 1.0
+AsyncSuffixFuture: androidx.work.CoroutineWorker#startWork():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
MissingNullability: androidx.work.OneTimeWorkRequestKt#OneTimeWorkRequestBuilder():
Missing nullability on method `OneTimeWorkRequestBuilder` return
MissingNullability: androidx.work.PeriodicWorkRequestKt#PeriodicWorkRequestBuilder(java.time.Duration):
diff --git a/work/work-runtime/api/api_lint.ignore b/work/work-runtime/api/api_lint.ignore
index a1d408b..c37582c 100644
--- a/work/work-runtime/api/api_lint.ignore
+++ b/work/work-runtime/api/api_lint.ignore
@@ -7,6 +7,50 @@
Acronyms should not be capitalized in class names: was `SUCCESS`, should this be `Success`?
+AsyncSuffixFuture: androidx.work.ListenableWorker#startWork():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.Operation#getResult():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.ProgressUpdater#updateProgress(android.content.Context, java.util.UUID, androidx.work.Data):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.WorkContinuation#getWorkInfos():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.WorkManager#getLastCancelAllTimeMillis():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.WorkManager#getWorkInfoById(java.util.UUID):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.WorkManager#getWorkInfos(androidx.work.WorkQuery):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.WorkManager#getWorkInfosByTag(String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.WorkManager#getWorkInfosForUniqueWork(String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.Worker#startWork():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkContinuation#enqueue():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#cancelAllWork():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#cancelAllWorkByTag(String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#cancelUniqueWork(String):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#cancelWorkById(java.util.UUID):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#enqueue(androidx.work.WorkRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#enqueue(java.util.List<androidx.work.WorkRequest>):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#enqueueUniquePeriodicWork(String, androidx.work.ExistingPeriodicWorkPolicy, androidx.work.PeriodicWorkRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#enqueueUniqueWork(String, androidx.work.ExistingWorkPolicy, androidx.work.OneTimeWorkRequest):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#enqueueUniqueWork(String, androidx.work.ExistingWorkPolicy, java.util.List<androidx.work.OneTimeWorkRequest>):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+AsyncSuffixFuture: androidx.work.multiprocess.RemoteWorkManager#getWorkInfos(androidx.work.WorkQuery):
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
+
+
BuilderSetStyle: androidx.work.Data.Builder#putAll(androidx.work.Data):
Builder methods names should use setFoo() / addFoo() / clearFoo() style: method androidx.work.Data.Builder.putAll(androidx.work.Data)
BuilderSetStyle: androidx.work.Data.Builder#putAll(java.util.Map<java.lang.String,java.lang.Object>):
diff --git a/work/work-rxjava2/api/api_lint.ignore b/work/work-rxjava2/api/api_lint.ignore
new file mode 100644
index 0000000..9707043
--- /dev/null
+++ b/work/work-rxjava2/api/api_lint.ignore
@@ -0,0 +1,3 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.work.RxWorker#startWork():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function
diff --git a/work/work-rxjava3/api/api_lint.ignore b/work/work-rxjava3/api/api_lint.ignore
new file mode 100644
index 0000000..7e7192e
--- /dev/null
+++ b/work/work-rxjava3/api/api_lint.ignore
@@ -0,0 +1,3 @@
+// Baseline format: 1.0
+AsyncSuffixFuture: androidx.work.rxjava3.RxWorker#startWork():
+ Methods returning com.google.common.util.concurrent.ListenableFuture should have a suffix *Async to reserve unmodified name for a suspend function