Status Update
Comments
ap...@google.com <ap...@google.com> #2
Tentatively, the annotation should be something use-case-specific like @OutlinedNewApi
that allows alternative build systems (e.g. not R8/D8) to make their own decisions. We'll provide a default Proguard configuration for R8, but it's not guaranteed this will work as intended -- outlining is automatic in newer versions, but it may be disabled.
ap...@google.com <ap...@google.com> #3
Just as an FYI, this was enabled in AGP 2 years ago (AGP 7.3 as far as I remember), ag/18426192, so for AGP users it might fine to just remove the rule for @DoNotInline
. I like the @OutlinedNewApi
to make it clear what this is for other consumers to handle it as they see fit.
ap...@google.com <ap...@google.com> #4
Given the failure mode can include run-time crashes, that's not an acceptable level of usage.
ap...@google.com <ap...@google.com> #5
I think you can still include a top-level proguard.txt
, and it will be used by versions that do not support the com.android.tools
format. E.g.
ap...@google.com <ap...@google.com> #7
Looping in from offline, any new libraries require a high enough compileSdk
that we're going to see a recent-enough AGP. So, we should just remove our manual outlining and use of @DoNotInline
.
ap...@google.com <ap...@google.com> #8
Branch: androidx-main
commit 0c5446468c1e1fc08b1cea04dc57b05c52417ce8
Author: Alan Viverette <alanv@google.com>
Date: Tue Jul 02 13:50:59 2024
Disable class verification failure lint checks
They are no longer needed since we transitively require AGP 8.1.
Bug: 345472586
Test: ./gradlew lintDebug
Change-Id: Icb6ad18297fef4a23071cd849b6e84855d2becd0
M lint-checks/src/main/java/androidx/build/lint/AndroidXIssueRegistry.kt
ap...@google.com <ap...@google.com> #9
Branch: androidx-main
commit 722ebe758557abaf7409c052bb2f326782369c84
Author: Alan Viverette <alanv@google.com>
Date: Tue Jul 02 14:05:38 2024
Remove usage of @DoNotInline for manual NewApi outlines (R thru W)
We no longer need manual NewApi outlines, so we can start by letting the
compiler inline the static methods.
Relnote: """Removed manual outlining of access to new platform APIs
since this happens automatically via API modeling when using R8 with
AGP 7.3 or later (e.g. R8 version 3.3) and for all builds when using
AGP 8.1 or later (e.g. D8 version 8.1). Clients who are not using
AGP are advised to update to D8 version 8.1 or later. See
[this article](
for more details."""
Bug: 345472586
Test: ./gradlew bOS
Change-Id: Ia60e0ab9f0fd613883a772c8aa34e27cc986cae8
M recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/GridLayoutManager.java
M samples/MediaRoutingDemo/src/main/java/com/example/androidx/mediarouting/activities/MainActivity.java
M samples/MediaRoutingDemo/src/main/java/com/example/androidx/mediarouting/activities/systemrouting/source/AudioManagerSystemRoutesSource.java
M samples/MediaRoutingDemo/src/main/java/com/example/androidx/mediarouting/player/Player.java
M samples/MediaRoutingDemo/src/main/java/com/example/androidx/mediarouting/providers/SampleMediaRouteProvider.java
M security/security-crypto/src/main/java/androidx/security/crypto/MasterKey.java
M security/security-identity-credential/src/main/java/androidx/security/identity/HardwareIdentityCredential.java
M slice/slice-core/src/main/java/androidx/slice/Slice.java
M slice/slice-core/src/main/java/androidx/slice/compat/SliceProviderCompat.java
M sqlite/sqlite-framework/src/androidMain/kotlin/androidx/sqlite/db/framework/FrameworkSQLiteDatabase.android.kt
M test/uiautomator/uiautomator/src/main/java/androidx/test/uiautomator/AccessibilityNodeInfoDumper.java
M test/uiautomator/uiautomator/src/main/java/androidx/test/uiautomator/ByMatcher.java
M test/uiautomator/uiautomator/src/main/java/androidx/test/uiautomator/UiDevice.java
M test/uiautomator/uiautomator/src/main/java/androidx/test/uiautomator/UiObject2.java
M testutils/testutils-runtime/src/main/java/androidx/testutils/AndroidFontScaleHelper.kt
M text/text/src/main/java/androidx/compose/ui/text/android/BoringLayoutFactory.android.kt
M text/text/src/main/java/androidx/compose/ui/text/android/PaintExtensions.android.kt
M text/text/src/main/java/androidx/compose/ui/text/android/StaticLayoutFactory.android.kt
M text/text/src/main/java/androidx/compose/ui/text/android/TextAndroidCanvas.android.kt
M text/text/src/main/java/androidx/compose/ui/text/android/TextLayout.android.kt
M text/text/src/main/java/androidx/compose/ui/text/android/selection/SegmentFinder.android.kt
M tracing/tracing/src/main/java/androidx/tracing/TraceApi29Impl.java
M transition/transition/src/main/java/androidx/transition/CanvasUtils.java
M transition/transition/src/main/java/androidx/transition/GhostViewHolder.java
M transition/transition/src/main/java/androidx/transition/ImageViewUtils.java
M transition/transition/src/main/java/androidx/transition/ObjectAnimatorUtils.java
M transition/transition/src/main/java/androidx/transition/PropertyValuesHolderUtils.java
M transition/transition/src/main/java/androidx/transition/Transition.java
M transition/transition/src/main/java/androidx/transition/TransitionUtils.java
M transition/transition/src/main/java/androidx/transition/ViewGroupUtils.java
M transition/transition/src/main/java/androidx/transition/ViewUtilsApi19.java
M transition/transition/src/main/java/androidx/transition/ViewUtilsApi21.java
M transition/transition/src/main/java/androidx/transition/ViewUtilsApi22.java
M transition/transition/src/main/java/androidx/transition/ViewUtilsApi23.java
M vectordrawable/vectordrawable-animated/src/main/java/androidx/vectordrawable/graphics/drawable/AnimatedVectorDrawableCompat.java
M versionedparcelable/versionedparcelable/src/main/java/androidx/versionedparcelable/VersionedParcel.java
M wear/protolayout/protolayout-expression-pipeline/src/main/java/androidx/wear/protolayout/expression/pipeline/NumberFormatter.java
M wear/tiles/tiles/src/main/java/androidx/wear/tiles/TileService.java
M wear/watchface/watchface-complications-data/src/main/java/androidx/wear/watchface/utility/TraceEvent.kt
M wear/wear-remote-interactions/src/main/java/androidx/wear/remote/interactions/RemoteInteractionsUtil.kt
M webkit/webkit/src/main/java/androidx/webkit/internal/ApiHelperForM.java
M webkit/webkit/src/main/java/androidx/webkit/internal/ApiHelperForN.java
M webkit/webkit/src/main/java/androidx/webkit/internal/ApiHelperForO.java
M webkit/webkit/src/main/java/androidx/webkit/internal/ApiHelperForOMR1.java
M webkit/webkit/src/main/java/androidx/webkit/internal/ApiHelperForP.java
M webkit/webkit/src/main/java/androidx/webkit/internal/ApiHelperForQ.java
M webkit/webkit/src/main/java/androidx/webkit/internal/ApiHelperForTiramisu.java
M window/window/src/main/java/androidx/window/embedding/ExtensionEmbeddingBackend.kt
M window/window/src/main/java/androidx/window/embedding/SplitRule.kt
M window/window/src/main/java/androidx/window/layout/util/ContextCompatHelper.kt
M work/work-multiprocess/src/main/java/androidx/work/multiprocess/parcelable/ParcelableRuntimeExtras.java
M work/work-runtime/src/main/java/androidx/work/impl/WorkDatabasePathHelper.kt
M work/work-runtime/src/main/java/androidx/work/impl/WorkManagerImpl.java
M work/work-runtime/src/main/java/androidx/work/impl/background/systemjob/SystemJobService.java
M work/work-runtime/src/main/java/androidx/work/impl/foreground/SystemForegroundService.java
M work/work-runtime/src/main/java/androidx/work/impl/utils/DurationApi26.kt
M work/work-runtime/src/main/java/androidx/work/impl/utils/NetworkApi21.kt
M work/work-runtime/src/main/java/androidx/work/impl/utils/NetworkApi23.kt
M work/work-runtime/src/main/java/androidx/work/impl/utils/NetworkApi24.kt
M work/work-runtime/src/main/java/androidx/work/impl/utils/NetworkRequestCompat.kt
M work/work-runtime/src/main/java/androidx/work/impl/utils/ProcessUtils.kt
au...@google.com <au...@google.com>
ap...@google.com <ap...@google.com> #10
Branch: androidx-main
commit a3c2cdfa79630ce1b6ccfae79068b331bd86889f
Author: Alan Viverette <alanv@google.com>
Date: Tue Jul 02 14:07:44 2024
Remove fully-qualified usages of @DoNotInline for manual NewApi outlines
We no longer need manual NewApi outlines, so we can start by letting the
compiler inline the static methods.
Relnote: """Removed manual outlining of access to new platform APIs
since this happens automatically via API modeling when using R8 with
AGP 7.3 or later (e.g. R8 version 3.3) and for all builds when using
AGP 8.1 or later (e.g. D8 version 8.1). Clients who are not using
AGP are advised to update to D8 version 8.1 or later. See
[this article](
for more details."""
Bug: 345472586
Test: ./gradlew bOS
Change-Id: I5921633fee80fcbc2c6ee05cb94f5fab0b9a6daf
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidPaint.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidRenderEffect.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV23.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV29.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsViewLayer.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/LayerManager.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/LayerSnapshot.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/RenderNodeApi23.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/RenderNodeApi29.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/RenderNodeLayer.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/ViewLayer.android.kt
M graphics/graphics-core/src/main/java/androidx/graphics/CanvasBufferedRendererV29.kt
M graphics/graphics-core/src/main/java/androidx/graphics/lowlatency/BufferTransformHintResolver.kt
M graphics/graphics-core/src/main/java/androidx/graphics/lowlatency/FrontBufferUtils.kt
M graphics/graphics-core/src/main/java/androidx/graphics/lowlatency/LowLatencyCanvasView.kt
M graphics/graphics-core/src/main/java/androidx/graphics/surface/SurfaceControlCompat.kt
M graphics/graphics-core/src/main/java/androidx/graphics/surface/SurfaceControlV33.kt
M graphics/graphics-core/src/main/java/androidx/hardware/SyncFenceCompat.kt
M leanback/leanback/src/main/java/androidx/leanback/widget/GuidedActionsStylist.java
ap...@google.com <ap...@google.com> #11
Remaining work:
- Get the last few
@DoNotInline
CLs merged - Inline existing
NewApi
classes- Or don't? Users running R8 won't see a difference, users not running R8/D8 will get VFY errors
- Write a lint auto-fix to automate this?
ap...@google.com <ap...@google.com> #12
Branch: androidx-main
commit 72d83666a81c444dfc045e292cf52e3ec9c69d8b
Author: Alan Viverette <alanv@google.com>
Date: Tue Jul 02 14:03:53 2024
Remove usage of @DoNotInline for manual NewApi outlines (Cr thru P)
Excludes some privacysandbox libraries because I'm not certain how the
annotation is being used there.
Suppresses flaky PrimitiveInCollection lint failure in Glance.
We no longer need manual NewApi outlines, so we can start by letting the
compiler inline the static methods.
Relnote: """Removed manual outlining of access to new platform APIs
since this happens automatically via API modeling when using R8 with
AGP 7.3 or later (e.g. R8 version 3.3) and for all builds when using
AGP 8.1 or later (e.g. D8 version 8.1). Clients who are not using
AGP are advised to update to D8 version 8.1 or later. See
[this article](
for more details."""
Bug: 345472586
Test: ./gradlew bOS
Change-Id: If6b4ccfca0a943b45971a422b58949b13a10bada
M credentials/credentials-play-services-auth/src/main/java/androidx/credentials/playservices/controllers/CreatePublicKeyCredential/PublicKeyCredentialControllerUtility.kt
M credentials/credentials/src/main/java/androidx/credentials/provider/BeginCreateCredentialRequest.kt
M credentials/credentials/src/main/java/androidx/credentials/provider/BeginCreateCredentialResponse.kt
M credentials/credentials/src/main/java/androidx/credentials/provider/BeginGetCredentialRequest.kt
M credentials/credentials/src/main/java/androidx/credentials/provider/BeginGetCredentialResponse.kt
M datastore/datastore/src/androidMain/kotlin/androidx/datastore/migrations/SharedPreferencesMigration.android.kt
M draganddrop/draganddrop/src/main/java/androidx/draganddrop/DropAffordanceHighlighter.java
M drawerlayout/drawerlayout/src/main/java/androidx/drawerlayout/widget/DrawerLayout.java
M emoji2/emoji2/src/main/java/androidx/emoji2/text/ConcurrencyHelpers.java
M emoji2/emoji2/src/main/java/androidx/emoji2/text/EmojiExclusions.java
M exifinterface/exifinterface/src/main/java/androidx/exifinterface/media/ExifInterfaceUtils.java
M fragment/fragment/src/main/java/androidx/fragment/app/DefaultSpecialEffectsController.kt
M glance/glance-appwidget/lint-baseline.xml
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/AppWidgetUtils.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/ApplyModifiers.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/GlanceAppWidgetManager.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/GlanceRemoteViewsService.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/LayoutSelection.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/RemoteViewsTranslator.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/WidgetLayout.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/action/ActionTrampoline.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/action/ApplyAction.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/translators/CompoundButtonApi31Impl.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/translators/ImageTranslator.kt
M glance/glance-appwidget/src/main/java/androidx/glance/appwidget/translators/TextTranslator.kt
M glance/glance/src/main/java/androidx/glance/session/IdleEventBroadcastReceiver.kt
M glance/glance/src/main/java/androidx/glance/unit/ColorProvider.kt
M health/connect/connect-client/src/main/java/androidx/health/connect/client/HealthConnectClient.kt
M health/connect/connect-client/src/main/java/androidx/health/platform/client/impl/data/SharedMemory27Impl.kt
M input/input-motionprediction/src/main/java/androidx/input/motionprediction/common/PredictionEstimator.java
M leanback/leanback/src/main/java/androidx/leanback/app/FragmentUtil.java
M lifecycle/lifecycle-process/src/main/java/androidx/lifecycle/ProcessLifecycleOwner.kt
M media/media/src/main/java/android/support/v4/media/MediaBrowserCompat.java
M media/media/src/main/java/android/support/v4/media/MediaDescriptionCompat.java
M media/media/src/main/java/android/support/v4/media/session/MediaSessionCompat.java
M media/media/src/main/java/android/support/v4/media/session/PlaybackStateCompat.java
M media/media/src/main/java/androidx/media/AudioFocusRequestCompat.java
M media/media/src/main/java/androidx/media/AudioManagerCompat.java
M media/media/src/main/java/androidx/media/VolumeProviderCompat.java
M media/media/src/main/java/androidx/media/app/NotificationCompat.java
M media/media/src/main/java/androidx/media/session/MediaButtonReceiver.java
M mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/SystemOutputSwitcherDialogController.java
M mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRoute2Provider.java
M mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouter2Utils.java
M mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouterUtils.java
M mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/PlatformMediaRouter1RouteProvider.java
M mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/RemotePlaybackClient.java
M mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/RouteListingPreference.java
M preference/preference/src/main/java/androidx/preference/PreferenceCategory.java
M preference/preference/src/main/java/androidx/preference/PreferenceDialogFragment.java
M preference/preference/src/main/java/androidx/preference/PreferenceDialogFragmentCompat.java
M print/print/src/main/java/androidx/print/PrintHelper.java
M privacysandbox/sdkruntime/sdkruntime-client/src/main/java/androidx/privacysandbox/sdkruntime/client/loader/InMemorySdkClassLoaderFactory.kt
M privacysandbox/sdkruntime/sdkruntime-client/src/main/java/androidx/privacysandbox/sdkruntime/client/loader/impl/MigrationUtils.kt
M privacysandbox/sdkruntime/sdkruntime-client/src/main/java/androidx/privacysandbox/sdkruntime/client/loader/impl/SandboxedSdkContextCompat.kt
M privacysandbox/sdkruntime/sdkruntime-client/src/main/java/androidx/privacysandbox/sdkruntime/client/loader/storage/LocalSdkFolderProvider.kt
M privacysandbox/sdkruntime/sdkruntime-core/src/main/java/androidx/privacysandbox/sdkruntime/core/LoadSdkCompatException.kt
M privacysandbox/sdkruntime/sdkruntime-core/src/main/java/androidx/privacysandbox/sdkruntime/core/SandboxedSdkCompat.kt
M privacysandbox/ui/ui-client/src/main/java/androidx/privacysandbox/ui/client/view/SandboxedSdkView.kt
M privacysandbox/ui/ui-provider/src/main/java/androidx/privacysandbox/ui/provider/BinderAdapterDelegate.kt
M profileinstaller/profileinstaller/src/main/java/androidx/profileinstaller/ProfileInstallerInitializer.java
M profileinstaller/profileinstaller/src/main/java/androidx/profileinstaller/ProfileVerifier.java
ap...@google.com <ap...@google.com> #13
Branch: androidx-main
commit 10ffa70a46c505e0af76fc71d93af285f7527bdf
Author: Alan Viverette <alanv@google.com>
Date: Tue Jul 09 11:02:59 2024
Remove usage of @DoNotInline for manual NewApi outlines (Com thru Cor)
We no longer need manual NewApi outlines, so we can start by letting the
compiler inline the static methods.
Relnote: """Removed manual outlining of access to new platform APIs
since this happens automatically via API modeling when using R8 with
AGP 7.3 or later (e.g. R8 version 3.3) and for all builds when using
AGP 8.1 or later (e.g. D8 version 8.1). Clients who are not using
AGP are advised to update to D8 version 8.1 or later. See
[this article](
for more details."""
Bug: 345472586
Test: ./gradlew bOS
Change-Id: Ieb9aecd2af5587c5b82833146fee6e912693ab7b
M compose/foundation/foundation/src/androidMain/kotlin/androidx/compose/foundation/EdgeEffectCompat.android.kt
M compose/foundation/foundation/src/androidMain/kotlin/androidx/compose/foundation/text/input/internal/EditorInfo.android.kt
M compose/foundation/foundation/src/androidMain/kotlin/androidx/compose/foundation/text/input/internal/HandwritingGesture.android.kt
M compose/foundation/foundation/src/androidMain/kotlin/androidx/compose/foundation/text/input/internal/InputMethodManager.android.kt
M compose/foundation/foundation/src/androidMain/kotlin/androidx/compose/foundation/text/input/internal/LegacyCursorAnchorInfoBuilder.android.kt
M compose/foundation/foundation/src/androidMain/kotlin/androidx/compose/foundation/text/input/internal/RecordingInputConnection.android.kt
M compose/foundation/foundation/src/androidMain/kotlin/androidx/compose/foundation/text/input/internal/StatelessInputConnection.android.kt
M compose/foundation/foundation/src/androidMain/kotlin/androidx/compose/foundation/text/input/internal/TextFieldLayoutStateCache.android.kt
M compose/material/material-ripple/src/androidMain/kotlin/androidx/compose/material/ripple/RippleHostView.android.kt
M compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/DynamicTonalPalette.android.kt
M compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/ModalBottomSheet.android.kt
M compose/material3/material3/src/androidMain/kotlin/androidx/compose/material3/internal/AccessibilityServiceStateProvider.android.kt
M compose/test-utils/src/androidMain/kotlin/androidx/compose/testutils/AndroidComposeTestCaseRunner.android.kt
M compose/test-utils/src/androidMain/kotlin/androidx/compose/testutils/ViewCapture.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidColorFilter.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidColorSpace.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidImageBitmap.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidTileMode.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/CanvasUtils.android.kt
M compose/ui/ui-test/src/androidMain/kotlin/androidx/compose/ui/test/android/WindowCapture.android.kt
M compose/ui/ui-text-google-fonts/src/main/java/androidx/compose/ui/text/googlefonts/HandlerHelper.kt
M compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/font/AndroidFontUtils.android.kt
M compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/font/AndroidPreloadedFont.android.kt
M compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/platform/AndroidAccessibilitySpannableString.android.kt
M compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/platform/AndroidFontListTypeface.android.kt
M compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/platform/extensions/LocaleExtensions.android.kt
M compose/ui/ui-tooling/src/androidMain/kotlin/androidx/compose/ui/tooling/LayoutlibFontResourceLoader.android.kt
M compose/ui/ui/integration-tests/ui-demos/src/main/java/androidx/compose/ui/demos/viewinterop/ViewInterop.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/autofill/AndroidSemanticAutofill.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/autofill/AutofillCallback.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/autofill/AutofillUtils.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/contentcapture/AndroidContentCaptureManager.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/input/pointer/MotionEventAdapter.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/AndroidAccessibilityManager.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/AndroidClipboardManager.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/AndroidComposeViewAccessibilityDelegateCompat.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/AndroidFontResourceLoader.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/AndroidTextToolbar.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/AndroidViewConfiguration.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/res/ColorResources.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/scrollcapture/ScrollCapture.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/text/input/CursorAnchorInfoBuilder.android.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/window/AndroidPopup.android.kt
M compose/ui/ui/src/main/java/androidx/compose/ui/platform/coreshims/ContentCaptureSessionCompat.java
M compose/ui/ui/src/main/java/androidx/compose/ui/platform/coreshims/ViewCompatShims.java
M compose/ui/ui/src/main/java/androidx/compose/ui/platform/coreshims/ViewStructureCompat.java
M constraintlayout/constraintlayout-compose/src/androidMain/kotlin/androidx/constraintlayout/compose/MotionLayout.kt
M core/core-animation/src/main/java/androidx/core/animation/PathUtils.java
M core/core-i18n/src/main/java/androidx/core/i18n/DateTimeFormatter.kt
M core/core-ktx/src/main/java/androidx/core/content/res/TypedArray.kt
M core/core-ktx/src/main/java/androidx/core/os/Bundle.kt
M core/core-ktx/src/main/java/androidx/core/os/PersistableBundle.kt
M core/core-location-altitude/src/main/java/androidx/core/location/altitude/AltitudeConverterCompat.java
M core/core-remoteviews/src/main/java/androidx/core/widget/AppWidgetManagerCompat.kt
M core/core-remoteviews/src/main/java/androidx/core/widget/RemoteViewsCompat.kt
M core/core-splashscreen/src/main/java/androidx/core/splashscreen/ThemeUtils.kt
M core/core-telecom/src/main/java/androidx/core/telecom/extensions/CallExtensions.kt
M core/core-telecom/src/main/java/androidx/core/telecom/internal/CallSessionLegacy.kt
M core/core-telecom/src/main/java/androidx/core/telecom/internal/utils/CallAttributesUtils.kt
M core/core-telecom/src/main/java/androidx/core/telecom/internal/utils/EndpointUtils.kt
M core/core-telecom/src/main/java/androidx/core/telecom/internal/utils/Utils.kt
M core/core/src/androidTest/java/androidx/core/location/LocationRequestCompatTestApi19.java
M core/core/src/main/java/androidx/core/app/ActivityCompat.java
M core/core/src/main/java/androidx/core/app/ActivityOptionsCompat.java
M core/core/src/main/java/androidx/core/app/AlarmManagerCompat.java
M core/core/src/main/java/androidx/core/app/AppOpsManagerCompat.java
M core/core/src/main/java/androidx/core/app/DialogCompat.java
M core/core/src/main/java/androidx/core/app/GrammaticalInflectionManagerCompat.java
M core/core/src/main/java/androidx/core/app/LocaleManagerCompat.java
M core/core/src/main/java/androidx/core/app/NotificationChannelCompat.java
M core/core/src/main/java/androidx/core/app/NotificationChannelGroupCompat.java
M core/core/src/main/java/androidx/core/app/NotificationCompat.java
M core/core/src/main/java/androidx/core/app/NotificationCompatBuilder.java
M core/core/src/main/java/androidx/core/app/NotificationManagerCompat.java
M core/core/src/main/java/androidx/core/app/PendingIntentCompat.java
M core/core/src/main/java/androidx/core/app/Person.java
M core/core/src/main/java/androidx/core/app/RemoteActionCompat.java
M core/core/src/main/java/androidx/core/app/RemoteInput.java
M core/core/src/main/java/androidx/core/app/ServiceCompat.java
M core/core/src/main/java/androidx/core/content/ContextCompat.java
M core/core/src/main/java/androidx/core/content/FileProvider.java
M core/core/src/main/java/androidx/core/content/IntentCompat.java
M core/core/src/main/java/androidx/core/content/IntentSanitizer.java
M core/core/src/main/java/androidx/core/content/pm/PackageInfoCompat.java
M core/core/src/main/java/androidx/core/content/pm/PermissionInfoCompat.java
M core/core/src/main/java/androidx/core/content/res/FontResourcesParserCompat.java
M core/core/src/main/java/androidx/core/content/res/ResourcesCompat.java
M core/core/src/main/java/androidx/core/database/CursorWindowCompat.java
M core/core/src/main/java/androidx/core/database/sqlite/SQLiteCursorCompat.java
M core/core/src/main/java/androidx/core/graphics/BitmapCompat.java
M core/core/src/main/java/androidx/core/graphics/BlendModeColorFilterCompat.java
M core/core/src/main/java/androidx/core/graphics/BlendModeUtils.java
M core/core/src/main/java/androidx/core/graphics/ColorUtils.java
M core/core/src/main/java/androidx/core/graphics/Insets.java
M core/core/src/main/java/androidx/core/graphics/PaintCompat.java
M core/core/src/main/java/androidx/core/graphics/PathUtils.java
M core/core/src/main/java/androidx/core/graphics/drawable/DrawableCompat.java
M core/core/src/main/java/androidx/core/graphics/drawable/IconCompat.java
M core/core/src/main/java/androidx/core/hardware/fingerprint/FingerprintManagerCompat.java
M core/core/src/main/java/androidx/core/location/GnssStatusWrapper.java
M core/core/src/main/java/androidx/core/location/LocationCompat.java
M core/core/src/main/java/androidx/core/location/LocationManagerCompat.java
M core/core/src/main/java/androidx/core/location/LocationRequestCompat.java
M core/core/src/main/java/androidx/core/net/ConnectivityManagerCompat.java
M core/core/src/main/java/androidx/core/net/TrafficStatsCompat.java
M core/core/src/main/java/androidx/core/os/BuildCompat.kt
M core/core/src/main/java/androidx/core/os/BundleCompat.java
M core/core/src/main/java/androidx/core/os/ConfigurationCompat.java
M core/core/src/main/java/androidx/core/os/EnvironmentCompat.java
M core/core/src/main/java/androidx/core/os/LocaleListCompat.java
M core/core/src/main/java/androidx/core/os/LocaleListCompatWrapper.java
M core/core/src/main/java/androidx/core/os/MessageCompat.java
M core/core/src/main/java/androidx/core/os/ParcelCompat.java
M core/core/src/main/java/androidx/core/os/TraceCompat.java
M core/core/src/main/java/androidx/core/os/UserManagerCompat.java
M core/core/src/main/java/androidx/core/provider/DocumentsContractCompat.java
M core/core/src/main/java/androidx/core/service/quicksettings/TileServiceCompat.java
M core/core/src/main/java/androidx/core/telephony/SubscriptionManagerCompat.java
M core/core/src/main/java/androidx/core/telephony/TelephonyManagerCompat.java
M core/core/src/main/java/androidx/core/text/HtmlCompat.java
M core/core/src/main/java/androidx/core/text/ICUCompat.java
M core/core/src/main/java/androidx/core/text/PrecomputedTextCompat.java
M core/core/src/main/java/androidx/core/text/util/LinkifyCompat.java
M core/core/src/main/java/androidx/core/text/util/LocalePreferences.java
M core/core/src/main/java/androidx/core/util/SizeFCompat.java
M core/core/src/main/java/androidx/core/util/TypedValueCompat.java
M core/core/src/main/java/androidx/core/view/ContentInfoCompat.java
M core/core/src/main/java/androidx/core/view/DisplayCompat.java
M core/core/src/main/java/androidx/core/view/DisplayCutoutCompat.java
M core/core/src/main/java/androidx/core/view/DragAndDropPermissionsCompat.java
M core/core/src/main/java/androidx/core/view/MenuCompat.java
M core/core/src/main/java/androidx/core/view/MenuItemCompat.java
M core/core/src/main/java/androidx/core/view/PointerIconCompat.java
M core/core/src/main/java/androidx/core/view/VelocityTrackerCompat.java
M core/core/src/main/java/androidx/core/view/ViewCompat.java
M core/core/src/main/java/androidx/core/view/ViewConfigurationCompat.java
M core/core/src/main/java/androidx/core/view/ViewGroupCompat.java
M core/core/src/main/java/androidx/core/view/ViewParentCompat.java
M core/core/src/main/java/androidx/core/view/ViewPropertyAnimatorCompat.java
M core/core/src/main/java/androidx/core/view/ViewStructureCompat.java
M core/core/src/main/java/androidx/core/view/WindowCompat.java
M core/core/src/main/java/androidx/core/view/accessibility/AccessibilityEventCompat.java
M core/core/src/main/java/androidx/core/view/accessibility/AccessibilityManagerCompat.java
M core/core/src/main/java/androidx/core/view/accessibility/AccessibilityNodeInfoCompat.java
M core/core/src/main/java/androidx/core/view/accessibility/AccessibilityWindowInfoCompat.java
M core/core/src/main/java/androidx/core/view/animation/PathInterpolatorCompat.java
M core/core/src/main/java/androidx/core/view/contentcapture/ContentCaptureSessionCompat.java
M core/core/src/main/java/androidx/core/view/inputmethod/InputConnectionCompat.java
M core/core/src/main/java/androidx/core/widget/CompoundButtonCompat.java
M core/core/src/main/java/androidx/core/widget/EdgeEffectCompat.java
M core/core/src/main/java/androidx/core/widget/ImageViewCompat.java
M core/core/src/main/java/androidx/core/widget/NestedScrollView.java
M core/core/src/main/java/androidx/core/widget/PopupWindowCompat.java
M core/core/src/main/java/androidx/core/widget/TextViewCompat.java
M core/haptics/haptics/src/main/java/androidx/core/haptics/impl/HapticAttributesConverter.kt
M core/haptics/haptics/src/main/java/androidx/core/haptics/impl/HapticSignalConverter.kt
M core/haptics/haptics/src/main/java/androidx/core/haptics/impl/VibratorWrapperImpl.kt
ap...@google.com <ap...@google.com> #14
Branch: androidx-main
commit 12ea61e42c7f29a0f539a069f06507a0f133910d
Author: Alan Viverette <alanv@google.com>
Date: Tue Jul 02 13:55:26 2024
Remove usage of @DoNotInline for manual NewApi outlines (A thru Ca)
Does not include AppSearch because they have downstream changes.
We no longer need manual NewApi outlines, so we can start by letting the
compiler inline the static methods.
Relnote: """Removed manual outlining of access to new platform APIs
since this happens automatically via API modeling when using R8 with
AGP 7.3 or later (e.g. R8 version 3.3) and for all builds when using
AGP 8.1 or later (e.g. D8 version 8.1). Clients who are not using
AGP are advised to update to D8 version 8.1 or later. See
[this article](
for more details."""
Bug: 345472586
Test: ./gradlew bOS
Change-Id: I9496cfaeb50a5c484fbee6521b74a0605fb013dc
M activity/activity/src/main/java/androidx/activity/BackEventCompat.kt
M activity/activity/src/main/java/androidx/activity/ComponentActivity.kt
M activity/activity/src/main/java/androidx/activity/OnBackPressedDispatcher.kt
M appcompat/appcompat-resources/src/main/java/androidx/appcompat/resources/Compatibility.java
M appcompat/appcompat-resources/src/main/java/androidx/appcompat/widget/DrawableUtils.java
M appcompat/appcompat/src/main/java/androidx/appcompat/app/AppCompatDelegate.java
M appcompat/appcompat/src/main/java/androidx/appcompat/app/AppCompatDelegateImpl.java
M appcompat/appcompat/src/main/java/androidx/appcompat/app/AppLocalesMetadataHolderService.java
M appcompat/appcompat/src/main/java/androidx/appcompat/view/WindowCallbackWrapper.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatReceiveContentHelper.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatSpinner.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatTextClassifierHelper.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatTextHelper.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatTextViewAutoSizeHelper.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/DropDownListView.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/ListPopupWindow.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/MenuPopupWindow.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/SearchView.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/TintTypedArray.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/Toolbar.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/TooltipCompat.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/ViewUtils.java
M benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/server/PerfettoHttpServer.kt
M benchmark/integration-tests/macrobenchmark-target/src/main/java/androidx/benchmark/integration/macrobenchmark/target/SingleColorActivity.kt
M biometric/integration-tests/testapp/src/main/java/androidx/biometric/integration/testapp/CryptoUtils.kt
M bluetooth/bluetooth/src/main/java/androidx/bluetooth/AdvertiseParams.kt
M bluetooth/bluetooth/src/main/java/androidx/bluetooth/ScanFilter.kt
M bluetooth/bluetooth/src/main/java/androidx/bluetooth/ScanResult.kt
M browser/browser/src/main/java/androidx/browser/customtabs/Api33Impl.java
M browser/browser/src/main/java/androidx/browser/customtabs/CustomTabsIntent.java
M camera/camera-camera2-pipe-integration/src/main/java/androidx/camera/camera2/pipe/integration/adapter/EncoderProfilesProviderAdapter.kt
M camera/camera-camera2-pipe-integration/src/main/java/androidx/camera/camera2/pipe/integration/compat/ApiCompat.kt
M camera/camera-camera2-pipe-integration/src/main/java/androidx/camera/camera2/pipe/integration/impl/CameraInteropStateCallbackRepository.kt
M camera/camera-camera2-pipe-integration/src/main/java/androidx/camera/camera2/pipe/integration/internal/DynamicRangeConversions.kt
M camera/camera-camera2-pipe-integration/src/main/java/androidx/camera/camera2/pipe/integration/internal/DynamicRangeResolver.kt
M camera/camera-camera2-pipe/src/main/java/androidx/camera/camera2/pipe/compat/ApiCompat.kt
M camera/camera-camera2-pipe/src/main/java/androidx/camera/camera2/pipe/compat/CaptureSessionWrapper.kt
M camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/Camera2CaptureRequestBuilder.java
M camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/Camera2EncoderProfilesProvider.java
M camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/DynamicRangeResolver.java
M camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/SupportedSurfaceCombination.java
M camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/SynchronizedCaptureSessionBaseImpl.java
M camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/compat/ApiCompat.java
M camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/compat/StreamConfigurationMapCompatBaseImpl.java
M camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/compat/params/DynamicRangeConversions.java
M camera/camera-core/src/main/java/androidx/camera/core/imagecapture/Bitmap2JpegBytes.java
M camera/camera-core/src/main/java/androidx/camera/core/impl/CameraValidator.java
M camera/camera-core/src/main/java/androidx/camera/core/impl/utils/ContextUtil.java
M camera/camera-effects/src/main/java/androidx/camera/effects/internal/Utils.java
M camera/camera-extensions/src/androidTest/java/androidx/camera/extensions/util/Api21Impl.kt
M camera/camera-extensions/src/main/java/androidx/camera/extensions/internal/ExtensionsUtils.java
M camera/camera-extensions/src/main/java/androidx/camera/extensions/internal/compat/workaround/CaptureOutputSurfaceForCaptureProcessor.java
M camera/camera-testing/src/main/java/androidx/camera/testing/impl/CameraUtil.java
M camera/camera-testing/src/main/java/androidx/camera/testing/impl/TestImageUtil.java
M camera/camera-testing/src/main/java/androidx/camera/testing/impl/WakelockEmptyActivityRule.kt
M camera/camera-testing/src/main/java/androidx/camera/testing/impl/compat/LooperCompat.java
M camera/camera-video/src/main/java/androidx/camera/video/internal/compat/Api23Impl.java
M camera/camera-video/src/main/java/androidx/camera/video/internal/compat/Api24Impl.java
M camera/camera-video/src/main/java/androidx/camera/video/internal/compat/Api26Impl.java
M camera/camera-video/src/main/java/androidx/camera/video/internal/compat/Api28Impl.java
M camera/camera-video/src/main/java/androidx/camera/video/internal/compat/Api29Impl.java
M camera/camera-video/src/main/java/androidx/camera/video/internal/compat/Api31Impl.java
M camera/camera-video/src/main/java/androidx/camera/video/internal/encoder/EncoderImpl.java
M camera/camera-view/src/main/java/androidx/camera/view/SurfaceViewImplementation.java
M camera/camera-viewfinder/src/main/java/androidx/camera/viewfinder/SurfaceViewImplementation.java
M camera/integration-tests/avsynctestapp/src/main/java/androidx/camera/integration/avsync/MainActivity.kt
M camera/integration-tests/camerapipetestapp/src/main/java/androidx/camera/integration/camera2/pipe/SimpleCamera.kt
M camera/integration-tests/coretestapp/src/main/java/androidx/camera/integration/core/CameraXActivity.java
M camera/integration-tests/coretestapp/src/main/java/androidx/camera/integration/core/CameraXService.java
M camera/integration-tests/coretestapp/src/main/java/androidx/camera/integration/core/OpenGLActivity.java
M camera/integration-tests/coretestapp/src/main/java/androidx/camera/integration/core/SurfaceViewRenderSurface.java
M camera/integration-tests/extensionstestapp/src/main/java/androidx/camera/integration/extensions/Camera2ExtensionsActivity.kt
M car/app/app-automotive/src/main/java/androidx/car/app/activity/BaseCarAppActivity.java
M car/app/app-automotive/src/main/java/androidx/car/app/activity/renderer/surface/TemplateSurfaceView.java
M car/app/app-automotive/src/main/java/androidx/car/app/hardware/info/AutomotiveCarInfo.java
M car/app/app/src/main/java/androidx/car/app/CarAppMetadataHolderService.java
M car/app/app/src/main/java/androidx/car/app/CarContext.java
M car/app/app/src/main/java/androidx/car/app/SessionInfoIntentEncoder.java
M car/app/app/src/main/java/androidx/car/app/connection/CarConnectionTypeLiveData.java
M car/app/app/src/main/java/androidx/car/app/model/DateTimeWithZone.java
M car/app/app/src/main/java/androidx/car/app/model/DurationSpan.java
M car/app/app/src/main/java/androidx/car/app/navigation/model/TravelEstimate.java
M car/app/app/src/main/java/androidx/car/app/notification/CarNotificationManager.java
M car/app/app/src/main/java/androidx/car/app/validation/HostValidator.java
ap...@google.com <ap...@google.com> #15
We still have some @DoNotInline
usages lingering because of conflicts with androidx-platform-dev
. Once the upstreaming is completed and those are removed, I think we should call it done. Manually inlining the ApiXXImpl
classes isn't urgent or really necessary.
ap...@google.com <ap...@google.com> #16
Bugjuggler:
ap...@google.com <ap...@google.com> #17
Branch: androidx-main
commit c520a87c6e27a14472cfcf8b03c0d4ea8c1a37c7
Author: Ian Baker <ibaker@google.com>
Date: Thu Jul 18 08:32:31 2024
Remove `@DoNotInline` recommendations from go/androidx-api-guidelines
The associated lint check has been disabled, see
PiperOrigin-RevId: 653629895
Change-Id: I186c052a059e5ad30386cd45beb47f24bdafe657
M docs/api_guidelines/compat.md
M docs/api_guidelines/platform_compat.md
ap...@google.com <ap...@google.com> #18
We'll take removing manual outlining on a case-by-case basis. Removing it all at once would be a lot of work for not much gain.
ap...@google.com <ap...@google.com> #19
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.benchmark:benchmark-macro:1.3.0-rc01
androidx.camera:camera-camera2:1.4.0-rc01
androidx.camera:camera-core:1.4.0-rc01
androidx.camera:camera-effects:1.4.0-rc01
androidx.camera:camera-extensions:1.4.0-rc01
androidx.camera:camera-video:1.4.0-rc01
androidx.camera:camera-view:1.4.0-rc01
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha14
androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha14
androidx.lifecycle:lifecycle-process:2.9.0-alpha01
androidx.profileinstaller:profileinstaller:1.4.0-alpha02
androidx.recyclerview:recyclerview:1.4.0-alpha02
androidx.sqlite:sqlite-framework:2.5.0-alpha06
androidx.sqlite:sqlite-framework-android:2.5.0-alpha06
androidx.sqlite:sqlite-framework-iosarm64:2.5.0-alpha06
androidx.sqlite:sqlite-framework-iossimulatorarm64:2.5.0-alpha06
androidx.sqlite:sqlite-framework-iosx64:2.5.0-alpha06
androidx.sqlite:sqlite-framework-linuxx64:2.5.0-alpha06
androidx.sqlite:sqlite-framework-macosarm64:2.5.0-alpha06
androidx.sqlite:sqlite-framework-macosx64:2.5.0-alpha06
androidx.window:window:1.4.0-alpha01
ap...@google.com <ap...@google.com> #20
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.core:core:1.15.0-alpha02
androidx.core:core-ktx:1.15.0-alpha02
androidx.emoji2:emoji2:1.5.0-rc01
androidx.webkit:webkit:1.12.0-beta01
ap...@google.com <ap...@google.com> #21
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.activity:activity:1.10.0-alpha02
androidx.core:core-splashscreen:1.2.0-alpha02
androidx.work:work-multiprocess:2.10.0-alpha03
androidx.work:work-runtime:2.10.0-alpha03
ap...@google.com <ap...@google.com> #22
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.car.app:app:1.7.0-beta02
androidx.car.app:app-automotive:1.7.0-beta02
androidx.privacysandbox.ui:ui-client:1.0.0-alpha10
androidx.privacysandbox.ui:ui-provider:1.0.0-alpha10
androidx.wear.watchface:watchface-complications-data:1.3.0-alpha04
ap...@google.com <ap...@google.com> #23
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.input:input-motionprediction:1.0.0-beta05
androidx.webkit:webkit:1.12.1
ap...@google.com <ap...@google.com> #24
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.core:core-location-altitude:1.0.0-alpha03
ap...@google.com <ap...@google.com> #25
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.exifinterface:exifinterface:1.4.0-alpha01
ap...@google.com <ap...@google.com> #26
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.core:core-telecom:1.0.0-beta01
androidx.mediarouter:mediarouter:1.8.0-alpha01
androidx.transition:transition:1.6.0-alpha01
ap...@google.com <ap...@google.com> #27
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.browser:browser:1.9.0-alpha01
androidx.versionedparcelable:versionedparcelable:1.2.1
ap...@google.com <ap...@google.com> #28
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.tracing:tracing:1.3.0-beta01
ap...@google.com <ap...@google.com> #29
Branch: androidx-master-dev
commit 72583b1a33918bcd4064704eeeb84a13e44ad45d
Author: Sergey <zakharovsergey1000@gmail.com>
Date: Thu Mar 19 18:00:55 2020
API lint check for the MissingJvmstatic is enabled for androidx
The check is enabled only for projects intended to be accessed from
Java-language source code.
Bug: 138602561
Test: ./gradlew checkApi
Change-Id: I8ff95224f8246426f88a2c49c563e268080905d5
M buildSrc/src/main/kotlin/androidx/build/AndroidXExtension.kt
M buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
M datastore/datastore-preferences/api/1.0.0-alpha01.txt
M datastore/datastore-preferences/api/current.txt
M datastore/datastore-preferences/api/public_plus_experimental_1.0.0-alpha01.txt
M datastore/datastore-preferences/api/public_plus_experimental_current.txt
M datastore/datastore-preferences/api/restricted_1.0.0-alpha01.txt
M datastore/datastore-preferences/api/restricted_current.txt
M datastore/datastore-preferences/src/main/java/androidx/datastore/preferences/Preferences.kt
M paging/common/api/api_lint.ignore
ap...@google.com <ap...@google.com> #30
Branch: androidx-master-dev
commit 5bb26c0c742912c5fe99ffd46e3558c556f2de0a
Author: Sergey <zakharovsergey1000@gmail.com>
Date: Tue Dec 03 17:54:01 2019
API lint check for the NotCloseable is enabled for androidx
Existing issues are suppressed with updated baseline and the
NotCloseable is turned into an error in androidx configuration
Bug: 138602561
Test: ./gradlew checkApi
Change-Id: I6e40ebb4a9531766dbb4c064ba6e10feab26d635
M buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
M compose/compose-runtime/api/api_lint.ignore
M concurrent/futures/api/api_lint.ignore
M ui/ui-animation-core/api/api_lint.ignore
M ui/ui-core/api/api_lint.ignore
M ui/ui-graphics/api/api_lint.ignore
A ui/ui-material/api/api_lint.ignore
M vectordrawable/vectordrawable-animated/api/api_lint.ignore
ap...@google.com <ap...@google.com> #31
Branch: androidx-master-dev
commit 017c121d8aede0439072de34890e61fbab5c3c59
Author: Sergey <zakharovsergey1000@gmail.com>
Date: Sun Jul 05 00:51:15 2020
API lint check for the MissingJvmstatic is enabled for androidx
The check is enabled only for projects intended to be accessed from
Java-language source code.
Bug: 138602561
Test: ./gradlew checkApi
Change-Id: Ic4468e8bedf6c1479b54983a2dfecd57cdd06e2c
M buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
ap...@google.com <ap...@google.com> #32
Branch: androidx-master-dev
commit 4a6bc898df028ed81a424f0a970d4ca5c40bf589
Author: Sergey <zakharovsergey1000@gmail.com>
Date: Wed Feb 19 03:55:58 2020
API lint check for the ExecutorRegistration is enabled for androidx
Existing issues are suppressed with updated baseline and the
ExecutorRegistration is turned into an error in androidx configuration
Bug: 138602561
Test: ./gradlew checkApi
Change-Id: I46c81f7f8a4906149ac241a7d7d8ef5eedcd1724
M activity/activity/api/api_lint.ignore
M appcompat/appcompat/api/api_lint.ignore
M browser/browser/api/api_lint.ignore
M buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
M camera/camera-camera2/src/main/java/androidx/camera/camera2/interop/Camera2Interop.java
M compose/runtime/runtime/api/api_lint.ignore
M compose/ui/ui/api/api_lint.ignore
M contentpager/contentpager/api/api_lint.ignore
M core/core/api/api_lint.ignore
M emoji/core/api/api_lint.ignore
A enterprise/feedback/api/api_lint.ignore
A enterprise/feedback/testing/api/api_lint.ignore
M leanback/leanback/api/api_lint.ignore
M media/media/api/api_lint.ignore
M media2/common/api/api_lint.ignore
M mediarouter/mediarouter/api/api_lint.ignore
M navigation/navigation-runtime/api/api_lint.ignore
M navigation/navigation-ui/api/api_lint.ignore
M paging/common/api/api_lint.ignore
A paging/runtime/api/api_lint.ignore
M preference/preference/api/api_lint.ignore
A print/print/api/api_lint.ignore
M recyclerview/recyclerview-selection/api/api_lint.ignore
M room/runtime/api/api_lint.ignore
M security/crypto/api/api_lint.ignore
M slices/builders/api/api_lint.ignore
M slices/view/api/api_lint.ignore
M sqlite/sqlite/api/api_lint.ignore
A window/window-extensions/api/api_lint.ignore
M window/window-sidecar/api/api_lint.ignore
ap...@google.com <ap...@google.com> #33
Branch: androidx-master-dev
commit aefc62cba13de9888609b7372ddaf808c263a80b
Author: Daniel Santiago Rivera <danysantiago@google.com>
Date: Mon Aug 24 09:02:19 2020
Add missing API baselines for aosp/1242687
Relnote: n/a
Bug: 138602561
Test: ./gradlew checkApi
Change-Id: I9869a6f29a9844392ecd537a029c708fde09707e
M room/runtime/api/api_lint.ignore
ap...@google.com <ap...@google.com> #34
Branch: androidx-master-dev
commit 5e7fc48929b3fd30a0717ae423b7814c42a4c941
Author: Sergey <zakharovsergey1000@gmail.com>
Date: Sun May 17 18:28:55 2020
API lint check for the CallbackMethodName is enabled for androidx
Existing issues are suppressed with updated baseline and the
CallbackMethodName is turned into an error in androidx configuration
Bug: 138602561
Test: ./gradlew checkApi
Change-Id: Id5b690751b23319580b109d5cb1039d3ed592617
M activity/activity/api/api_lint.ignore
M browser/browser/api/api_lint.ignore
M buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
M compose/ui/ui/api/api_lint.ignore
M contentpager/contentpager/api/api_lint.ignore
M customview/customview/api/api_lint.ignore
M leanback/leanback/api/api_lint.ignore
M media/media/api/api_lint.ignore
M media2/common/api/api_lint.ignore
M preference/preference/api/api_lint.ignore
M recyclerview/recyclerview/api/api_lint.ignore
M remotecallback/remotecallback/api/api_lint.ignore
M swiperefreshlayout/swiperefreshlayout/api/api_lint.ignore
M wear/wear/api/api_lint.ignore
ap...@google.com <ap...@google.com> #35
Branch: androidx-master-dev
commit fdb836b6143bae101047a1a0241f69a1cb82294e
Author: Sergey <zakharovsergey1000@gmail.com>
Date: Mon May 18 02:36:46 2020
API lint check for the GetterOnBuilder is enabled for androidx
Existing issues are suppressed with updated baseline and the
GetterOnBuilder is turned into an error in androidx configuration
Bug: 138602561
Test: ./gradlew checkApi
Change-Id: I4b717667f833b8240b1f4432344026f44dd0d93e
M appcompat/appcompat/api/api_lint.ignore
M browser/browser/api/api_lint.ignore
M buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
M compose/ui/ui-graphics/api/api_lint.ignore
M compose/ui/ui-text/api/api_lint.ignore
M compose/ui/ui/api/api_lint.ignore
M core/core/api/api_lint.ignore
M navigation/navigation-common-ktx/api/api_lint.ignore
ap...@google.com <ap...@google.com> #36
Branch: androidx-master-dev
commit 012a88b4545d870c4df83783cbb922f2967ec9f5
Author: Sergey <zakharovsergey1000@gmail.com>
Date: Wed May 20 00:06:53 2020
API lint check for the StaticFinalBuilder is enabled for androidx
Existing issues are suppressed with updated baseline and the
StaticFinalBuilder is turned into an error in androidx configuration
Relnote: API lint check for the StaticFinalBuilder is enabled for androidx
Bug: 138602561
Test: ./gradlew checkApi
Change-Id: I2b11be1bb370e178e3e0d1d1083d43af38eece23
M appcompat/appcompat/api/api_lint.ignore
A appsearch/appsearch/api/api_lint.ignore
A biometric/biometric/api/api_lint.ignore
M browser/browser/api/api_lint.ignore
M buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
M camera/camera-core/api/api_lint.ignore
M camera/camera-core/api/public_plus_experimental_1.0.0-beta07.txt
M camera/camera-core/api/public_plus_experimental_1.0.0-beta09.txt
M camera/camera-core/api/public_plus_experimental_current.txt
M camera/camera-core/src/main/java/androidx/camera/core/UseCaseGroup.java
M camera/camera-core/src/main/java/androidx/camera/core/ViewPort.java
M core/core-animation/api/api_lint.ignore
M core/core/api/api_lint.ignore
M enterprise/feedback/api/api_lint.ignore
M media/media/api/api_lint.ignore
M media2/common/api/api_lint.ignore
M navigation/navigation-common-ktx/api/api_lint.ignore
M room/runtime/api/api_lint.ignore
M slices/builders/api/api_lint.ignore
M sqlite/sqlite/api/api_lint.ignore
M tv-provider/tv-provider/api/api_lint.ignore
M webkit/webkit/api/api_lint.ignore
M work/workmanager-testing/api/api_lint.ignore
M work/workmanager/api/api_lint.ignore
ap...@google.com <ap...@google.com> #37
Branch: androidx-master-dev
commit 757ff428f74b1d85f4a932e55fc7d79aabf555b9
Author: Alexander Dorokhine <adorokhine@google.com>
Date: Tue Oct 20 22:30:12 2020
Enable API lint check for MissingGetterMatchingBuilder in androidx.
Existing issues are suppressed with updated baseline and
MissingGetterMatchingBuilder is turned into an error in androidx
configuration
This linter is enabled in framework, and its lack in androidx made it
more difficult to share code.
Relnote: API lint check for MissingGetterMatchingBuilder is enabled for androidx
Bug: 138602561
Bug: 171261337
Test: ./gradlew checkApi
Change-Id: I4bbeacf9869d8338a3d7086acb40bc56ec68c3f9
M activity/activity/api/api_lint.ignore
M appsearch/appsearch/api/api_lint.ignore
M autofill/autofill/api/api_lint.ignore
M browser/browser/api/api_lint.ignore
M buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
M camera/camera-core/api/api_lint.ignore
M compose/ui/ui/api/api_lint.ignore
M core/core/api/api_lint.ignore
M heifwriter/heifwriter/api/api_lint.ignore
M media/media/api/api_lint.ignore
M media2/session/api/api_lint.ignore
M mediarouter/mediarouter/api/api_lint.ignore
M navigation/navigation-common-ktx/api/api_lint.ignore
M navigation/navigation-common/api/api_lint.ignore
A navigation/navigation-fragment/api/api_lint.ignore
M navigation/navigation-runtime/api/api_lint.ignore
M paging/common/api/api_lint.ignore
M paging/runtime/api/api_lint.ignore
M recommendation/recommendation/api/api_lint.ignore
M recyclerview/recyclerview/api/api_lint.ignore
M room/runtime/api/api_lint.ignore
M security/crypto/api/api_lint.ignore
A security/identity-credential/api/api_lint.ignore
M textclassifier/textclassifier/api/api_lint.ignore
M tv-provider/tv-provider/api/api_lint.ignore
A wear/wear-complications-data/api/api_lint.ignore
A wear/wear-watchface/api/api_lint.ignore
M webkit/webkit/api/api_lint.ignore
M work/workmanager-testing/api/api_lint.ignore
M work/workmanager/api/api_lint.ignore
za...@gmail.com <za...@gmail.com>
ap...@google.com <ap...@google.com> #38
Branch: androidx-master-dev
commit 5e7fc48929b3fd30a0717ae423b7814c42a4c941
Author: Sergey <zakharovsergey1000@gmail.com>
Date: Sun May 17 18:28:55 2020
API lint check for the CallbackMethodName is enabled for androidx
Existing issues are suppressed with updated baseline and the
CallbackMethodName is turned into an error in androidx configuration
Bug: 138602561
Test: ./gradlew checkApi
Change-Id: Id5b690751b23319580b109d5cb1039d3ed592617
M activity/activity/api/api_lint.ignore
M browser/browser/api/api_lint.ignore
M buildSrc/src/main/kotlin/androidx/build/metalava/MetalavaRunner.kt
M compose/ui/ui/api/api_lint.ignore
M contentpager/contentpager/api/api_lint.ignore
M customview/customview/api/api_lint.ignore
M leanback/leanback/api/api_lint.ignore
M media/media/api/api_lint.ignore
M media2/common/api/api_lint.ignore
M preference/preference/api/api_lint.ignore
M recyclerview/recyclerview/api/api_lint.ignore
M remotecallback/remotecallback/api/api_lint.ignore
M swiperefreshlayout/swiperefreshlayout/api/api_lint.ignore
M wear/wear/api/api_lint.ignore
as...@google.com <as...@google.com> #39
Looks like 2 have bugs and only SamShouldBeLast
needs to be enabled?
// List of checks that have bugs, but should be enabled once fixed.
"StaticUtils", // b/135489083
"StartWithLower", // b/135710527
// The list of checks that are API lint warnings and are yet to be enabled
"SamShouldBeLast",
Description
Estimated workload: ~1 day per check
Technologies: Gradle, Metalava, API signature files
We have a number of API lint checks that are yet to be enabled. Some checks should be as simple as turning it on and whitelisting existing issues. Some checks will require improving the checks so it has less false positive results.