Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🐛 DittoPresenceViewer 2.x is not compatible with apps using AGP 7.x and and compileSdk 33 #124

Open
phatblat opened this issue Oct 14, 2024 · 0 comments
Labels
K-bug Something isn't working

Comments

@phatblat
Copy link
Member

phatblat commented Oct 14, 2024

Problem

The current Ditto Cars app in the monorepo is built using AGP 7.4.1 and compileSdk = 33.

When using the published presence viewer version 2.0.0 or 2.1.0 with the Ditto Cars app, I get the following build errors:

Dependency Compatibility Errors

Execution failed for task ':app:checkDebugAarMetadata'.

23 issues were found when checking AAR metadata:

  1.  Dependency 'androidx.compose.material3:material3-android:1.2.1' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

  2.  Dependency 'androidx.compose.material:material-android:1.6.0' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

  3.  Dependency 'androidx.compose.material:material-icons-extended-android:1.6.0' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

  4.  Dependency 'androidx.compose.material:material-icons-core-android:1.6.0' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

  5.  Dependency 'androidx.compose.material:material-ripple-android:1.6.0' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

  6.  Dependency 'androidx.compose.ui:ui-tooling-preview-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

  7.  Dependency 'androidx.compose.ui:ui-tooling-data-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

  8.  Dependency 'androidx.compose.foundation:foundation-layout-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

  9.  Dependency 'androidx.compose.foundation:foundation-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 10.  Dependency 'androidx.compose.animation:animation-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 11.  Dependency 'androidx.compose.animation:animation-core-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 12.  Dependency 'androidx.compose.ui:ui-unit-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 13.  Dependency 'androidx.compose.ui:ui-util-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 14.  Dependency 'androidx.compose.ui:ui-text-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 15.  Dependency 'androidx.compose.ui:ui-graphics-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 16.  Dependency 'androidx.compose.ui:ui-geometry-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 17.  Dependency 'androidx.compose.ui:ui-tooling-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 18.  Dependency 'androidx.core:core-ktx:1.12.0' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 19.  Dependency 'androidx.core:core:1.12.0' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 20.  Dependency 'androidx.compose.ui:ui-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 21.  Dependency 'androidx.compose.runtime:runtime-saveable-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 22.  Dependency 'androidx.compose.runtime:runtime-android:1.6.8' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

 23.  Dependency 'androidx.annotation:annotation-experimental:1.4.0' requires libraries and applications that
      depend on it to compile against version 34 or later of the
      Android APIs.

      :dittocarsapp is currently compiled against android-33.

      Also, the maximum recommended compile SDK version for Android Gradle
      plugin 7.4.1 is 33.

      Recommended action: Update this project's version of the Android Gradle
      plugin to one that supports 34, then update this project to use
      compileSdkVerion of at least 34.

      Note that updating a library or application's compileSdkVersion (which
      allows newer APIs to be used) can be done separately from updating
      targetSdkVersion (which opts the app in to new runtime behavior) and
      minSdkVersion (which determines which devices the app can be installed
      on).

Solution

Upgrading the compileSdk version of the Ditto SDK and Cars app to 34 would resolve this, but we can't until our next major version (since this is a breaking change).

Since version 2.0.0 introduced a breaking change, this should be documented somewhere like the release description.

Context

This project's compile SDK version was increased to 34 in #111 (released in 2.1.0).

It appears that dependencies that require SDK 34 were introduced in 2.0.0.

@phatblat phatblat added the K-bug Something isn't working label Oct 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
K-bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant