aws-amplify / amplify-js

A declarative JavaScript library for application development using cloud services.
https://docs.amplify.aws/lib/q/platform/js
Apache License 2.0
9.36k stars 2.1k forks source link

React Native - @aws-amplify/rtn-push-notification - Could not find org.jetbrains.kotlin:kotlin-serialization-compiler-plugin-embeddable:1.8.0 - Upgrading React native 0.73 > 0.74 #13314

Open George-field opened 2 weeks ago

George-field commented 2 weeks ago

Before opening, please confirm:

JavaScript Framework

React Native

Amplify APIs

Push Notifications

Amplify Version

v6

Amplify Categories

notifications

Backend

Other

Environment information

``` System: OS: macOS 14.3.1 CPU: (10) arm64 Apple M2 Pro Memory: 87.48 MB / 16.00 GB Shell: 5.9 - /bin/zsh Binaries: Node: 21.6.0 - /opt/homebrew/bin/node Yarn: 4.1.1 - /opt/homebrew/bin/yarn npm: 10.2.4 - /opt/homebrew/bin/npm pnpm: 8.9.2 - /opt/homebrew/bin/pnpm Watchman: 2024.01.22.00 - /opt/homebrew/bin/watchman Browsers: Chrome: 124.0.6367.92 Safari: 17.3.1 npmPackages: @aws-amplify/react-native: ^1.0.19 => 1.0.19 @aws-amplify/rtn-push-notification: ^1.2.19 => 1.2.28 @babel/core: ^7.20.0 => 7.22.17 @babel/preset-env: ^7.20.0 => 7.22.15 @babel/runtime: ^7.20.0 => 7.22.15 (7.23.2) @dr.pogodin/react-native-fs: ^2.22.0-alpha.1 => 2.22.0-alpha.1 @gorhom/bottom-sheet: ^4.6.1 => 4.6.1 @react-native-async-storage/async-storage: ^1.22.3 => 1.22.3 @react-native-community/netinfo: ^11.3.1 => 11.3.1 @react-native-picker/picker: ^2.5.1 => 2.5.1 @react-native/babel-preset: ^0.74.81 => 0.74.81 (0.73.21) @react-native/eslint-config: ^0.74.81 => 0.74.81 @react-native/metro-config: ^0.74.81 => 0.74.81 @react-native/typescript-config: ^0.74.81 => 0.74.81 @react-navigation/bottom-tabs: ^6.5.11 => 6.5.11 @react-navigation/native: ^6.1.9 => 6.1.9 @react-navigation/native-stack: ^6.9.17 => 6.9.17 @reduxjs/toolkit: ^2.0.1 => 2.0.1 @reduxjs/toolkit-query: 1.0.0 @reduxjs/toolkit-query-react: 1.0.0 @reduxjs/toolkit-react: 1.0.0 @rneui/base: ^4.0.0-rc.8 => 4.0.0-rc.8 @rneui/themed: ^4.0.0-rc.8 => 4.0.0-rc.8 @sentry/react-native: ^5.20.0 => 5.20.0 @superfeel/types: workspace:^ => 1.0.0 @types/jest: ^29.5.12 => 29.5.12 @types/luxon: ^3.4.2 => 3.4.2 @types/react: ^18.2.55 => 18.2.55 (18.2.21) @types/react-native-video: ^5.0.19 => 5.0.19 @types/react-test-renderer: ^18.0.7 => 18.0.7 @types/validator: ^13.11.9 => 13.11.9 @typescript-eslint/eslint-plugin: ^6.21.0 => 6.21.0 (6.13.2) @typescript-eslint/parser: ^6.21.0 => 6.21.0 (6.13.2) ContextAPIMixpanel: 0.0.1 HelloWorld: 0.0.1 MixpanelDemo: 0.0.1 SimpleMixpanel: 0.0.1 appcenter-cli: ^2.14.0 => 2.14.0 aws-amplify: ^6.0.19 => 6.0.19 aws-amplify/adapter-core: undefined () aws-amplify/analytics: undefined () aws-amplify/analytics/kinesis: undefined () aws-amplify/analytics/kinesis-firehose: undefined () aws-amplify/analytics/personalize: undefined () aws-amplify/analytics/pinpoint: undefined () aws-amplify/api: undefined () aws-amplify/api/server: undefined () aws-amplify/auth: undefined () aws-amplify/auth/cognito: undefined () aws-amplify/auth/cognito/server: undefined () aws-amplify/auth/enable-oauth-listener: undefined () aws-amplify/auth/server: undefined () aws-amplify/datastore: undefined () aws-amplify/in-app-messaging: undefined () aws-amplify/in-app-messaging/pinpoint: undefined () aws-amplify/push-notifications: undefined () aws-amplify/push-notifications/pinpoint: undefined () aws-amplify/storage: undefined () aws-amplify/storage/s3: undefined () aws-amplify/storage/s3/server: undefined () aws-amplify/storage/server: undefined () aws-amplify/utils: undefined () babel-jest: ^29.7.0 => 29.7.0 babel-plugin-transform-remove-console: ^6.9.4 => 6.9.4 country-flag-emoji-json: ^2.0.0 => 2.0.0 eslint: ^8.56.0 => 8.56.0 eslint-config-airbnb: ^19.0.4 => 19.0.4 eslint-config-prettier: ^9.1.0 => 9.1.0 (8.10.0) eslint-plugin-import: ^2.29.1 => 2.29.1 eslint-plugin-jest: ^27.6.3 => 27.6.3 (26.9.0) eslint-plugin-jsx-a11y: ^6.8.0 => 6.8.0 eslint-plugin-prettier: ^5.1.3 => 5.1.3 (4.2.1) eslint-plugin-react: ^7.33.2 => 7.33.2 eslint-plugin-react-hooks: ^4.6.0 => 4.6.0 ffmpeg-kit-react-native: ^6.0.2 => 6.0.2 jest: ^29.7.0 => 29.7.0 libphonenumber-js: ^1.10.45 => 1.10.53 libphonenumber-js/build: undefined () libphonenumber-js/core: undefined () libphonenumber-js/max: undefined () libphonenumber-js/max/metadata: undefined () libphonenumber-js/min: undefined () libphonenumber-js/min/metadata: undefined () libphonenumber-js/mobile: undefined () libphonenumber-js/mobile/examples: undefined () libphonenumber-js/mobile/metadata: undefined () luxon: ^3.4.4 => 3.4.4 mixpanel-react-native: ^2.4.0 => 2.4.0 nativewind: ^2.0.11 => 2.0.11 prettier: ^3.2.5 => 3.2.5 (3.1.1) react: 18.2.0 => 18.2.0 react-native: 0.74.0 => 0.74.0 (0.73.4) react-native-background-actions: ^3.0.1 => 3.0.1 react-native-blob-util: ^0.19.6 => 0.19.6 react-native-bootsplash: ^5.4.1 => 5.4.1 react-native-code-push: ^8.2.1 => 8.2.1 react-native-config: ^1.5.1 => 1.5.1 react-native-confirmation-code-field: ^7.3.2 => 7.3.2 react-native-console-time-polyfill: ^1.2.3 => 1.2.3 react-native-contacts: ^7.0.8 => 7.0.8 react-native-create-thumbnail: ^2.0.0 => 2.0.0 react-native-date-picker: ^4.3.5 => 4.3.5 react-native-device-info: ^10.12.0 => 10.12.0 react-native-gesture-handler: ^2.15.0 => 2.15.0 react-native-get-random-values: ^1.10.0 => 1.10.0 react-native-gifted-charts: ^1.4.7 => 1.4.7 react-native-haptic-feedback: ^2.2.0 => 2.2.0 react-native-image-crop-picker: ^0.40.2 => 0.40.2 react-native-linear-gradient: ^2.8.3 => 2.8.3 react-native-localize: ^3.0.6 => 3.0.6 react-native-pager-view: ^6.2.3 => 6.2.3 react-native-picker-select: ^9.0.1 => 9.0.1 react-native-reanimated: ^3.8.1 => 3.8.1 react-native-safe-area-context: ^4.9.0 => 4.9.0 react-native-screens: ^3.29.0 => 3.29.0 react-native-svg: ^14.1.0 => 14.1.0 react-native-system-navigation-bar: ^2.6.4 => 2.6.4 react-native-tab-view: ^3.5.2 => 3.5.2 react-native-url-polyfill: ^2.0.0 => 2.0.0 react-native-vector-icons: ^10.0.3 => 10.0.3 react-native-video: ^6.0.0-beta.4 => 6.0.0-beta.4 react-native-vision-camera: ^3.9.1 => 3.9.1 react-native-worklets-core: ^0.4.0 => 0.4.0 react-redux: ^9.1.0 => 9.1.0 react-test-renderer: 18.2.0 => 18.2.0 tailwindcss: 3.3.2 => 3.3.2 typescript: ^5.3.3 => 5.3.3 uuid: ^9.0.1 => 9.0.1 (9.0.0, 8.3.2, 7.0.3, 3.4.0) validator: ^13.11.0 => 13.11.0 world-countries: ^5.0.0 => 5.0.0 npmGlobalPackages: fontello-cli: 0.6.2 npm: 10.2.4 yarn: 1.22.22 ```

Describe the bug

When upgrading to the latest react native version and trying to build for android, I am getting the following error -

BUILD FAILED in 9s
error Failed to install the app. Command failed with exit code 1: ./gradlew app:installLocalDebug -PreactNativeDevServerPort=8081 -PreactNativeDebugArchitectures=arm64-v8a -PreactNativeArchitectures=arm64-v8a FAILURE: Build failed with an exception. * What went wrong:
Could not determine the dependencies of task ':aws-amplify_rtn-push-notification:compileDebugKotlin'.
> Could not resolve all task dependencies for configuration ':aws-amplify_rtn-push-notification:kotlinCompilerPluginClasspathDebug'. > Could not find org.jetbrains.kotlin:kotlin-serialization-compiler-plugin-embeddable:1.8.0. Searched in the following locations: - https://oss.sonatype.org/content/repositories/snapshots/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - file:/Users/georgefield/repos/superfeel-repos/superfeel/pkg/app/node_modules/jsc-android/dist/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - https://dl.google.com/dl/android/maven2/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - https://www.jitpack.io/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - file:/Users/georgefield/repos/superfeel-repos/superfeel/pkg/app/node_modules/react-native/android/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - file:/Users/georgefield/repos/superfeel-repos/superfeel/node_modules/react-native/android/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom Required by: project :aws-amplify_rtn-push-notification * Try:

Specifically the issue seems to be with Could not find org.jetbrains.kotlin:kotlin-serialization-compiler-plugin-embeddable:1.8.0

I have tried updating to the latest version of @aws-amplify/rtn-push-notification but the issue persists.

While upgrading to react native version 0.74.0 I have been following the guide on what to change and I have implemented all of the android related changes mentioned here

Expected behavior

I expect the build to work or there be a guide on how to fix it in the React Native docs for amplify

Reproduction steps

Id imagine this is how you could recreate 1) Create a react native project on version 0.73.0 2) follow the android part of the react native upgrade guide here. 3) run build and the emulator locally

you will get the error stated above.

Code Snippet

No response

Log output

``` Could not determine the dependencies of task ':aws-amplify_rtn-push-notification:compileDebugKotlin'. > Could not resolve all task dependencies for configuration ':aws-amplify_rtn-push-notification:kotlinCompilerPluginClasspathDebug'. > Could not find org.jetbrains.kotlin:kotlin-serialization-compiler-plugin-embeddable:1.8.0. Searched in the following locations: - https://oss.sonatype.org/content/repositories/snapshots/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - https://repo.maven.apache.org/maven2/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - file:/Users/georgefield/repos/superfeel-repos/superfeel/pkg/app/node_modules/jsc-android/dist/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - https://dl.google.com/dl/android/maven2/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - https://www.jitpack.io/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - file:/Users/georgefield/repos/superfeel-repos/superfeel/pkg/app/node_modules/react-native/android/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom - file:/Users/georgefield/repos/superfeel-repos/superfeel/node_modules/react-native/android/org/jetbrains/kotlin/kotlin-serialization-compiler-plugin-embeddable/1.8.0/kotlin-serialization-compiler-plugin-embeddable-1.8.0.pom Required by: project :aws-amplify_rtn-push-notification ```

aws-exports.js

No response

Manual configuration

No response

Additional configuration

No response

Mobile Device

No response

Mobile Operating System

No response

Mobile Browser

No response

Mobile Browser Version

No response

Additional information and screenshots

No response

Samaritan1011001 commented 2 weeks ago

Hi @George-field, can you share your android>build.gradle file contents or just confirm that the kotlinVersion is 1.9.22? From the error it might be that it was missed. Thank you.

james-cohen commented 2 weeks ago

Hi @Samaritan1011001, I've pasted the build.gradle contents below (I'm working on the same project):

buildscript {
    ext {
        kotlinVersion = "1.9.22"
        buildToolsVersion = "34.0.0"
        minSdkVersion = 26
        compileSdkVersion = 34
        targetSdkVersion = 34

        ndkVersion = "26.1.10909125"

        ffmpegKitPackage = "https"
    }
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath("com.android.tools.build:gradle")
        classpath("com.facebook.react:react-native-gradle-plugin")
        classpath("com.google.gms:google-services:4.4.0")
        classpath("org.jetbrains.kotlin:kotlin-gradle-plugin")
    }
}
apply plugin: "com.facebook.react.rootproject"
cwomack commented 2 weeks ago

@George-field, is there any other or more details on the error message beyond what's in this issue? Also, can you share what version of Java you're currently on as well? Should be able to run java -version on your CLI to check.

George-field commented 2 weeks ago

@George-field, is there any other or more details on the error message beyond what's in this issue? Also, can you share what version of Java you're currently on as well? Should be able to run java -version on your CLI to check.

Hey @Samaritan1011001 , thanks for getting back to us.

Java Version Details

openjdk version "17.0.9" 2023-10-17 LTS
OpenJDK Runtime Environment Zulu17.46+19-CA (build 17.0.9+8-LTS)
OpenJDK 64-Bit Server VM Zulu17.46+19-CA (build 17.0.9+8-LTS, mixed mode, sharing)

Are there any details you need? There is not much else I can give you aside from the logs above. I tried playing with the Kotlin version and setting classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlinVersion" but this was more of wishful thinking