
> echo Attempting build for mthnglac-chuck-the-joker with Node 18 and jdk 11
Attempting build for mthnglac-chuck-the-joker with Node 18 and jdk 11

> docker run --rm -v /home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output -v /home/ubuntu/.npm:/root/.npm react-android:18-jdk11 bash -c 
                set -e

                cp -r /source/. /app &&                 cd /app && 
                # ---- install deps (yarn or npm) ----
                if [ -f yarn.lock ]; then
                    yarn install;
                else
                    npm install --ignore-scripts;
                fi && 
                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----
                if [ ! -f google-services.json ]; then                     python3 -c "import json; open('google-services.json','w').write(json.dumps({'project_info':{'project_number':'000000000000','project_id':'stub','storage_bucket':'stub.appspot.com'},'client':[{'client_info':{'mobilesdk_app_id':'1:000000000000:android:0000000000000000','android_client_info':{'package_name':'com.stub'}},'oauth_client':[],'api_key':[{'current_key':'stub'}],'services':{'appinvite_service':{'other_platform_oauth_client':[]}}}],'configuration_version':'1'}))" 2>/dev/null || true;                 fi && 
                # ---- detect expo ----
                if grep -q '"expo"' package.json && [ ! -d android ]; then
                    echo "Expo project detected";
                    CI=1 npx --yes expo prebuild --platform android
                fi && 
                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && 
                chmod +x gradlew && 
                # ---- inject fallback repositories via Gradle init script ----
                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo 'gradle.beforeProject {project ->' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.buildscript.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '}' >> $GRADLE_USER_HOME/init.d/repos.gradle && 
                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----
                sed -i 's/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\/.bin\/react-native config")/' settings.gradle 2>/dev/null || true && 
                # ---- clean gradle ----
                (./gradlew clean || true) && 
                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----
                ./gradlew :app:dependencies --configuration debugCompileClasspath --no-daemon > /dev/null 2>&1 || true && 
                # ---- enable ABI splits ----
                if grep -q 'splits' app/build.gradle 2>/dev/null; then                     sed -i 's/enable false/enable true/' app/build.gradle || true;                 else                     sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' app/build.gradle || true;                 fi && 
                # ---- build debug apk ----
                ./gradlew assembleDebug --no-daemon || exit 1 && 
                APK_PATH="app/build/outputs/apk/debug"

                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then
                    echo "ERROR: APK not generated"
                    exit 1
                fi
                # ---- copy output ----
                cp app/build/outputs/apk/debug/*.apk /output/

                # ---- copy TPL metadata ----
                [ -f ../package.json ] && cp ../package.json /output/ || true
                [ -f ../package-lock.json ] && cp ../package-lock.json /output/ || true
                [ -f ../yarn.lock ] && cp ../yarn.lock /output/ || true
                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/ || true
                [ -f app/build.gradle ] && cp app/build.gradle /output/android-build.gradle || true
                [ -f build.gradle ] && cp build.gradle /output/root-build.gradle || true
                [ -f build.gradle.kts ] && cp build.gradle.kts /output/root-build.gradle.kts || true
                [ -f settings.gradle ] && cp settings.gradle /output/ || true
                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/ || true
                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/ || true
                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true
                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true
                mkdir -p /output/libs
                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
                    
yarn install v1.22.22
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > @react-native-async-storage/async-storage@1.15.14" has incorrect peer dependency "react-native@^0.0.0-0 || ^0.60.6 || ^0.61.5 || ^0.62.2 || ^0.63.2 || ^0.64.0 || ^0.65.0 || ^0.66.0 || 1000.0.0".
warning " > @react-native-community/masked-view@0.1.10" has incorrect peer dependency "react@^16.0".
warning "react-native > react-native-codegen > jscodeshift@0.11.0" has unmet peer dependency "@babel/preset-env@^7.1.6".
warning " > reactotron-mst@3.1.3" has unmet peer dependency "reactotron-core-client@^2.5.0".
warning " > reactotron-mst@3.1.3" has incorrect peer dependency "mobx@^3.4.1 || ^4.1.0".
warning " > reactotron-mst@3.1.3" has incorrect peer dependency "mobx-state-tree@^1.4.0 || ^2.0.2 || ^3.0.0".
warning " > reactotron-react-native@5.0.0" has incorrect peer dependency "react@^15.2.1 || 16.0.0-alpha.6 || 16.0.0-alpha.12 || 16.0.0-beta.5 || ^16.0.0".
warning "reactotron-react-native > react-native-flipper@0.34.0" has incorrect peer dependency "react@^16.8.1".
warning "reactotron-react-native > react-native-flipper@0.34.0" has incorrect peer dependency "react-native@^0.62.0".
warning " > @storybook/addon-storyshots@6.1.10" has unmet peer dependency "@storybook/react@*".
warning "@storybook/addon-storyshots > jest-specific-snapshot@4.0.0" has incorrect peer dependency "jest@>= 26.0.0".
warning "@storybook/addon-storyshots > @storybook/addons > @storybook/api > @reach/router@1.3.4" has incorrect peer dependency "react@15.x || 16.x || 16.4.0-alpha.0911da3".
warning "@storybook/addon-storyshots > @storybook/addons > @storybook/api > @reach/router@1.3.4" has incorrect peer dependency "react-dom@15.x || 16.x || 16.4.0-alpha.0911da3".
warning "@storybook/addon-storyshots > @storybook/addons > @storybook/api > @reach/router > create-react-context@0.3.0" has incorrect peer dependency "react@^0.14.0 || ^15.0.0 || ^16.0.0".
warning "@storybook/react-native-server > @storybook/api@5.3.21" has unmet peer dependency "regenerator-runtime@*".
warning " > babel-loader@8.2.2" has unmet peer dependency "webpack@>=2".
warning " > detox@17.14.5" has incorrect peer dependency "jest-circus@26.0.x - 26.4.x || >=26.5.2".
warning " > detox@17.14.5" has unmet peer dependency "jest-environment-node@>=25.0.0".
warning " > detox@17.14.5" has unmet peer dependency "mocha@>=6.0.0".
warning "jest-expo > jest-watch-typeahead@0.6.4" has incorrect peer dependency "jest@^26.0.0 || ^27.0.0".
warning " > react-powerplug@1.0.0" has incorrect peer dependency "react@^0.14.0 || ^15.0.0-0 || ^16.0.0-0".
[4/4] Building fresh packages...
$ node ./bin/postInstall
patch-package 6.2.2
Applying patches...
No patch files found

✔︎ Solidarity checks valid
Done in 114.07s.
Downloading https://services.gradle.org/distributions/gradle-7.2-all.zip
..............10%...............20%...............30%...............40%...............50%...............60%...............70%...............80%...............90%...............100%

Welcome to Gradle 7.2!

Here are the highlights of this release:
 - Toolchain support for Scala
 - More cache hits when Java source files have platform-specific line endings
 - More resilient remote HTTP build cache behavior

For more details see https://docs.gradle.org/7.2/release-notes.html


> Configure project :expo-file-system
WARNING:: Configuration 'testApi' is obsolete and has been replaced with 'testImplementation'.
It will be removed in version 7.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.

> Configure project :expo

Using expo modules
  - [32mexpo-application[0m (4.0.2)
  - [32mexpo-constants[0m (13.0.2)
  - [32mexpo-error-recovery[0m (3.0.5)
  - [32mexpo-file-system[0m (13.1.4)
  - [32mexpo-font[0m (10.0.5)
  - [32mexpo-keep-awake[0m (10.0.2)
  - [32mexpo-linear-gradient[0m (11.0.3)
  - [32mexpo-localization[0m (12.0.1)
  - [32mexpo-modules-core[0m (0.6.5)


> Task :app:clean UP-TO-DATE
> Task :expo:clean UP-TO-DATE
> Task :expo-application:clean UP-TO-DATE
> Task :expo-constants:clean UP-TO-DATE
> Task :expo-error-recovery:clean UP-TO-DATE
> Task :expo-file-system:clean UP-TO-DATE
> Task :expo-font:clean UP-TO-DATE
> Task :expo-keep-awake:clean UP-TO-DATE
> Task :expo-linear-gradient:clean UP-TO-DATE
> Task :expo-localization:clean UP-TO-DATE
> Task :expo-modules-core:clean UP-TO-DATE
> Task :react-native-async-storage_async-storage:clean UP-TO-DATE
> Task :react-native-community_masked-view:clean UP-TO-DATE
> Task :react-native-gesture-handler:clean UP-TO-DATE
> Task :react-native-safe-area-context:clean UP-TO-DATE
> Task :react-native-screens:clean UP-TO-DATE
> Task :react-native-splash-screen:clean UP-TO-DATE

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 1m 49s
17 actionable tasks: 17 up-to-date

> Configure project :expo-file-system
WARNING:: Configuration 'testApi' is obsolete and has been replaced with 'testImplementation'.
It will be removed in version 7.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.

> Configure project :expo

Using expo modules
  - [32mexpo-application[0m (4.0.2)
  - [32mexpo-constants[0m (13.0.2)
  - [32mexpo-error-recovery[0m (3.0.5)
  - [32mexpo-file-system[0m (13.1.4)
  - [32mexpo-font[0m (10.0.5)
  - [32mexpo-keep-awake[0m (10.0.2)
  - [32mexpo-linear-gradient[0m (11.0.3)
  - [32mexpo-localization[0m (12.0.1)
  - [32mexpo-modules-core[0m (0.6.5)


> Task :app:generatePackageList
> Task :app:preBuild
> Task :app:preDebugBuild
> Task :expo:generateExpoModulesPackageList
> Task :expo:preBuild
> Task :expo:preDebugBuild
> Task :expo-application:preBuild UP-TO-DATE
> Task :expo-application:preDebugBuild UP-TO-DATE
> Task :expo-modules-core:preBuild UP-TO-DATE
> Task :expo-modules-core:preDebugBuild UP-TO-DATE
> Task :expo-modules-core:compileDebugAidl NO-SOURCE
> Task :expo-application:compileDebugAidl NO-SOURCE
> Task :expo-constants:preBuild UP-TO-DATE
> Task :expo-constants:preDebugBuild UP-TO-DATE
> Task :expo-constants:compileDebugAidl NO-SOURCE
> Task :expo-error-recovery:preBuild UP-TO-DATE
> Task :expo-error-recovery:preDebugBuild UP-TO-DATE
> Task :expo-error-recovery:compileDebugAidl NO-SOURCE
> Task :expo-file-system:preBuild UP-TO-DATE
> Task :expo-file-system:preDebugBuild UP-TO-DATE
> Task :expo-file-system:compileDebugAidl NO-SOURCE
> Task :expo-font:preBuild UP-TO-DATE
> Task :expo-font:preDebugBuild UP-TO-DATE
> Task :expo-font:compileDebugAidl NO-SOURCE
> Task :expo-keep-awake:preBuild UP-TO-DATE
> Task :expo-keep-awake:preDebugBuild UP-TO-DATE
> Task :expo-keep-awake:compileDebugAidl NO-SOURCE
> Task :expo-linear-gradient:preBuild UP-TO-DATE
> Task :expo-linear-gradient:preDebugBuild UP-TO-DATE
> Task :expo-linear-gradient:compileDebugAidl NO-SOURCE
> Task :expo-localization:preBuild UP-TO-DATE
> Task :expo-localization:preDebugBuild UP-TO-DATE
> Task :expo-localization:compileDebugAidl NO-SOURCE
> Task :expo:compileDebugAidl NO-SOURCE
> Task :react-native-async-storage_async-storage:preBuild UP-TO-DATE
> Task :react-native-async-storage_async-storage:preDebugBuild UP-TO-DATE
> Task :react-native-async-storage_async-storage:compileDebugAidl NO-SOURCE
> Task :react-native-community_masked-view:preBuild UP-TO-DATE
> Task :react-native-community_masked-view:preDebugBuild UP-TO-DATE
> Task :react-native-community_masked-view:compileDebugAidl NO-SOURCE
> Task :react-native-gesture-handler:preBuild UP-TO-DATE
> Task :react-native-gesture-handler:preDebugBuild UP-TO-DATE
> Task :react-native-gesture-handler:compileDebugAidl NO-SOURCE
> Task :react-native-safe-area-context:preBuild UP-TO-DATE
> Task :react-native-safe-area-context:preDebugBuild UP-TO-DATE
> Task :react-native-safe-area-context:compileDebugAidl NO-SOURCE
> Task :react-native-screens:preBuild UP-TO-DATE
> Task :react-native-screens:preDebugBuild UP-TO-DATE
> Task :react-native-screens:compileDebugAidl NO-SOURCE
> Task :react-native-splash-screen:preBuild UP-TO-DATE
> Task :react-native-splash-screen:preDebugBuild UP-TO-DATE
> Task :react-native-splash-screen:compileDebugAidl NO-SOURCE
> Task :app:compileDebugAidl NO-SOURCE
> Task :expo:packageDebugRenderscript NO-SOURCE
> Task :expo-application:packageDebugRenderscript NO-SOURCE
> Task :expo-constants:packageDebugRenderscript NO-SOURCE
> Task :expo-error-recovery:packageDebugRenderscript NO-SOURCE
> Task :expo-file-system:packageDebugRenderscript NO-SOURCE
> Task :expo-font:packageDebugRenderscript NO-SOURCE
> Task :expo-keep-awake:packageDebugRenderscript NO-SOURCE
> Task :expo-linear-gradient:packageDebugRenderscript NO-SOURCE
> Task :expo-localization:packageDebugRenderscript NO-SOURCE
> Task :expo-modules-core:packageDebugRenderscript NO-SOURCE
> Task :react-native-async-storage_async-storage:packageDebugRenderscript NO-SOURCE
> Task :react-native-community_masked-view:packageDebugRenderscript NO-SOURCE
> Task :react-native-gesture-handler:packageDebugRenderscript NO-SOURCE
> Task :react-native-safe-area-context:packageDebugRenderscript NO-SOURCE
> Task :react-native-screens:packageDebugRenderscript NO-SOURCE
> Task :react-native-splash-screen:packageDebugRenderscript NO-SOURCE
> Task :app:compileDebugRenderscript NO-SOURCE
> Task :app:generateDebugBuildConfig
> Task :expo:writeDebugAarMetadata
> Task :expo-constants:writeDebugAarMetadata
> Task :expo-application:writeDebugAarMetadata
> Task :expo-error-recovery:writeDebugAarMetadata
> Task :expo-file-system:writeDebugAarMetadata
> Task :expo-font:writeDebugAarMetadata
> Task :expo-keep-awake:writeDebugAarMetadata
> Task :expo-linear-gradient:writeDebugAarMetadata
> Task :expo-localization:writeDebugAarMetadata
> Task :expo-modules-core:writeDebugAarMetadata
> Task :react-native-async-storage_async-storage:writeDebugAarMetadata
> Task :react-native-community_masked-view:writeDebugAarMetadata
> Task :react-native-gesture-handler:writeDebugAarMetadata
> Task :react-native-safe-area-context:writeDebugAarMetadata
> Task :react-native-screens:writeDebugAarMetadata
> Task :app:bundleDebugJsAndAssets SKIPPED
> Task :react-native-splash-screen:writeDebugAarMetadata
> Task :app:mergeDebugShaders
> Task :app:compileDebugShaders NO-SOURCE
> Task :app:generateDebugAssets UP-TO-DATE
> Task :expo:mergeDebugShaders
> Task :expo:compileDebugShaders NO-SOURCE
> Task :expo:generateDebugAssets UP-TO-DATE
> Task :expo:packageDebugAssets
> Task :expo-application:mergeDebugShaders
> Task :expo-application:compileDebugShaders NO-SOURCE
> Task :expo-application:generateDebugAssets UP-TO-DATE
> Task :expo-application:packageDebugAssets
> Task :expo-constants:mergeDebugShaders
> Task :expo-constants:compileDebugShaders NO-SOURCE

> Task :expo-constants:createDebugExpoConfig
Execution optimizations have been disabled for task ':expo-constants:createDebugExpoConfig' to ensure correctness due to the following reasons:
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:compileDebugAidl' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:compileDebugRenderscript' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:compileDebugShaders' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:generateDebugBuildConfig' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:mergeDebugShaders' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.

> Task :expo-constants:copyDebugExpoConfig
> Task :expo-constants:generateDebugAssets UP-TO-DATE
> Task :expo-constants:packageDebugAssets
> Task :expo-error-recovery:mergeDebugShaders
> Task :expo-error-recovery:compileDebugShaders NO-SOURCE
> Task :expo-error-recovery:generateDebugAssets UP-TO-DATE
> Task :expo-error-recovery:packageDebugAssets
> Task :expo-file-system:mergeDebugShaders
> Task :expo-file-system:compileDebugShaders NO-SOURCE
> Task :expo-file-system:generateDebugAssets UP-TO-DATE
> Task :expo-file-system:packageDebugAssets
> Task :expo-font:mergeDebugShaders
> Task :expo-font:compileDebugShaders NO-SOURCE
> Task :expo-font:generateDebugAssets UP-TO-DATE
> Task :expo-font:packageDebugAssets
> Task :expo-keep-awake:mergeDebugShaders
> Task :expo-keep-awake:compileDebugShaders NO-SOURCE
> Task :expo-keep-awake:generateDebugAssets UP-TO-DATE
> Task :expo-keep-awake:packageDebugAssets
> Task :expo-linear-gradient:mergeDebugShaders
> Task :expo-linear-gradient:compileDebugShaders NO-SOURCE
> Task :expo-linear-gradient:generateDebugAssets UP-TO-DATE
> Task :expo-linear-gradient:packageDebugAssets
> Task :expo-localization:mergeDebugShaders
> Task :expo-localization:compileDebugShaders NO-SOURCE
> Task :expo-localization:generateDebugAssets UP-TO-DATE
> Task :expo-localization:packageDebugAssets
> Task :expo-modules-core:mergeDebugShaders
> Task :expo-modules-core:compileDebugShaders NO-SOURCE
> Task :expo-modules-core:generateDebugAssets UP-TO-DATE
> Task :expo-modules-core:packageDebugAssets
> Task :react-native-async-storage_async-storage:mergeDebugShaders
> Task :react-native-async-storage_async-storage:compileDebugShaders NO-SOURCE
> Task :react-native-async-storage_async-storage:generateDebugAssets UP-TO-DATE
> Task :react-native-async-storage_async-storage:packageDebugAssets
> Task :react-native-community_masked-view:mergeDebugShaders
> Task :react-native-community_masked-view:compileDebugShaders NO-SOURCE
> Task :react-native-community_masked-view:generateDebugAssets UP-TO-DATE
> Task :react-native-community_masked-view:packageDebugAssets
> Task :react-native-gesture-handler:mergeDebugShaders
> Task :react-native-gesture-handler:compileDebugShaders NO-SOURCE
> Task :react-native-gesture-handler:generateDebugAssets UP-TO-DATE
> Task :react-native-gesture-handler:packageDebugAssets
> Task :react-native-safe-area-context:mergeDebugShaders
> Task :react-native-safe-area-context:compileDebugShaders NO-SOURCE
> Task :react-native-safe-area-context:generateDebugAssets UP-TO-DATE
> Task :react-native-safe-area-context:packageDebugAssets
> Task :react-native-screens:mergeDebugShaders
> Task :react-native-screens:compileDebugShaders NO-SOURCE
> Task :react-native-screens:generateDebugAssets UP-TO-DATE
> Task :react-native-screens:packageDebugAssets
> Task :react-native-splash-screen:mergeDebugShaders
> Task :react-native-splash-screen:compileDebugShaders NO-SOURCE
> Task :react-native-splash-screen:generateDebugAssets UP-TO-DATE
> Task :react-native-splash-screen:packageDebugAssets
> Task :app:mergeDebugAssets
> Task :app:copyDebugBundledJs SKIPPED
> Task :app:generateDebugResValues
> Task :app:generateDebugResources
> Task :expo:compileDebugRenderscript NO-SOURCE
> Task :expo:generateDebugResValues
> Task :expo:generateDebugResources
> Task :expo:packageDebugResources
> Task :expo-application:compileDebugRenderscript NO-SOURCE
> Task :expo-application:generateDebugResValues
> Task :expo-application:generateDebugResources
> Task :expo-application:packageDebugResources
> Task :expo-constants:compileDebugRenderscript NO-SOURCE
> Task :expo-constants:generateDebugResValues
> Task :expo-constants:generateDebugResources
> Task :expo-constants:packageDebugResources
> Task :expo-error-recovery:compileDebugRenderscript NO-SOURCE
> Task :expo-error-recovery:generateDebugResValues
> Task :expo-error-recovery:generateDebugResources
> Task :expo-error-recovery:packageDebugResources
> Task :expo-file-system:compileDebugRenderscript NO-SOURCE
> Task :expo-file-system:generateDebugResValues
> Task :expo-file-system:generateDebugResources
> Task :expo-file-system:packageDebugResources
> Task :expo-font:compileDebugRenderscript NO-SOURCE
> Task :expo-font:generateDebugResValues
> Task :expo-font:generateDebugResources
> Task :expo-font:packageDebugResources
> Task :expo-keep-awake:compileDebugRenderscript NO-SOURCE
> Task :expo-keep-awake:generateDebugResValues
> Task :expo-keep-awake:generateDebugResources
> Task :expo-keep-awake:packageDebugResources
> Task :expo-linear-gradient:compileDebugRenderscript NO-SOURCE
> Task :expo-linear-gradient:generateDebugResValues
> Task :expo-linear-gradient:generateDebugResources
> Task :expo-linear-gradient:packageDebugResources
> Task :expo-localization:compileDebugRenderscript NO-SOURCE
> Task :expo-localization:generateDebugResValues
> Task :expo-localization:generateDebugResources
> Task :expo-localization:packageDebugResources
> Task :expo-modules-core:compileDebugRenderscript NO-SOURCE
> Task :expo-modules-core:generateDebugResValues
> Task :expo-modules-core:generateDebugResources
> Task :expo-modules-core:packageDebugResources
> Task :react-native-async-storage_async-storage:compileDebugRenderscript NO-SOURCE
> Task :react-native-async-storage_async-storage:generateDebugResValues
> Task :react-native-async-storage_async-storage:generateDebugResources
> Task :react-native-async-storage_async-storage:packageDebugResources
> Task :react-native-community_masked-view:compileDebugRenderscript NO-SOURCE
> Task :react-native-community_masked-view:generateDebugResValues
> Task :react-native-community_masked-view:generateDebugResources
> Task :react-native-community_masked-view:packageDebugResources
> Task :react-native-gesture-handler:compileDebugRenderscript NO-SOURCE
> Task :react-native-gesture-handler:generateDebugResValues
> Task :react-native-gesture-handler:generateDebugResources
> Task :react-native-gesture-handler:packageDebugResources
> Task :react-native-safe-area-context:compileDebugRenderscript NO-SOURCE
> Task :react-native-safe-area-context:generateDebugResValues
> Task :react-native-safe-area-context:generateDebugResources
> Task :react-native-safe-area-context:packageDebugResources
> Task :react-native-screens:compileDebugRenderscript NO-SOURCE
> Task :react-native-screens:generateDebugResValues
> Task :react-native-screens:generateDebugResources
> Task :react-native-screens:packageDebugResources
> Task :react-native-splash-screen:compileDebugRenderscript NO-SOURCE
> Task :react-native-splash-screen:generateDebugResValues
> Task :react-native-splash-screen:generateDebugResources
> Task :react-native-splash-screen:packageDebugResources
> Task :app:createDebugCompatibleScreenManifests
> Task :app:extractDeepLinksDebug
> Task :expo:extractDeepLinksDebug
> Task :expo-application:extractDeepLinksDebug
> Task :expo-constants:extractDeepLinksDebug
> Task :expo-application:processDebugManifest
> Task :expo:processDebugManifest
> Task :app:checkDebugAarMetadata
> Task :expo-error-recovery:extractDeepLinksDebug
> Task :expo-constants:processDebugManifest
> Task :expo-file-system:extractDeepLinksDebug
> Task :expo-error-recovery:processDebugManifest
> Task :expo-font:extractDeepLinksDebug

> Task :expo-file-system:processDebugManifest
/app/node_modules/expo-file-system/android/src/main/AndroidManifest.xml:8:9-10:20 Warning:
	provider#expo.modules.filesystem.FileSystemFileProvider@android:authorities was tagged at AndroidManifest.xml:8 to replace other declarations but no other declaration present

> Task :expo-keep-awake:extractDeepLinksDebug
> Task :expo-linear-gradient:extractDeepLinksDebug
> Task :expo-keep-awake:processDebugManifest
> Task :expo-localization:extractDeepLinksDebug
> Task :expo-linear-gradient:processDebugManifest
> Task :expo-modules-core:extractDeepLinksDebug
> Task :expo-localization:processDebugManifest
> Task :expo-font:processDebugManifest
> Task :react-native-async-storage_async-storage:extractDeepLinksDebug
> Task :expo-modules-core:processDebugManifest
> Task :react-native-community_masked-view:extractDeepLinksDebug
> Task :react-native-async-storage_async-storage:processDebugManifest
> Task :react-native-gesture-handler:extractDeepLinksDebug
> Task :react-native-community_masked-view:processDebugManifest
> Task :react-native-safe-area-context:extractDeepLinksDebug
> Task :react-native-gesture-handler:processDebugManifest
> Task :app:mergeDebugResources
> Task :react-native-screens:extractDeepLinksDebug
> Task :react-native-safe-area-context:processDebugManifest
> Task :react-native-splash-screen:extractDeepLinksDebug
> Task :react-native-screens:processDebugManifest
> Task :react-native-splash-screen:processDebugManifest
> Task :expo:compileDebugLibraryResources
> Task :expo:parseDebugLocalResources
> Task :expo-application:parseDebugLocalResources
> Task :expo-constants:parseDebugLocalResources
> Task :expo-error-recovery:parseDebugLocalResources
> Task :expo-modules-core:parseDebugLocalResources
> Task :expo-file-system:parseDebugLocalResources
> Task :expo-font:parseDebugLocalResources

> Task :app:processDebugMainManifest
/app/android/app/src/debug/AndroidManifest.xml:23:9-32:20 Warning:
	provider#expo.modules.filesystem.FileSystemFileProvider@android:authorities was tagged at AndroidManifest.xml:23 to replace other declarations but no other declaration present

> Task :app:processDebugManifest
> Task :expo-keep-awake:parseDebugLocalResources
> Task :expo-linear-gradient:parseDebugLocalResources
> Task :expo-application:compileDebugLibraryResources
> Task :expo-localization:parseDebugLocalResources
> Task :expo-constants:compileDebugLibraryResources
> Task :expo-error-recovery:compileDebugLibraryResources
> Task :expo-file-system:compileDebugLibraryResources
> Task :expo-font:compileDebugLibraryResources
> Task :expo-keep-awake:compileDebugLibraryResources
> Task :expo-linear-gradient:compileDebugLibraryResources
> Task :expo-modules-core:generateDebugRFile
> Task :expo-localization:compileDebugLibraryResources
> Task :expo-modules-core:compileDebugLibraryResources
> Task :react-native-async-storage_async-storage:compileDebugLibraryResources
> Task :react-native-async-storage_async-storage:parseDebugLocalResources
> Task :react-native-community_masked-view:compileDebugLibraryResources
> Task :react-native-community_masked-view:parseDebugLocalResources
> Task :react-native-gesture-handler:compileDebugLibraryResources
> Task :react-native-async-storage_async-storage:generateDebugRFile
> Task :react-native-community_masked-view:generateDebugRFile
> Task :expo-application:generateDebugRFile
> Task :expo-constants:generateDebugRFile
> Task :expo-error-recovery:generateDebugRFile
> Task :expo-file-system:generateDebugRFile
> Task :expo-font:generateDebugRFile
> Task :expo-keep-awake:generateDebugRFile
> Task :expo-linear-gradient:generateDebugRFile
> Task :react-native-gesture-handler:parseDebugLocalResources
> Task :react-native-safe-area-context:compileDebugLibraryResources
> Task :expo-localization:generateDebugRFile
> Task :react-native-safe-area-context:parseDebugLocalResources
> Task :react-native-gesture-handler:generateDebugRFile
> Task :react-native-screens:compileDebugLibraryResources
> Task :react-native-screens:parseDebugLocalResources
> Task :app:processDebugManifestForPackage
> Task :react-native-safe-area-context:generateDebugRFile
> Task :react-native-splash-screen:compileDebugLibraryResources
> Task :expo:generateDebugBuildConfig
> Task :expo-application:generateDebugBuildConfig
> Task :react-native-splash-screen:parseDebugLocalResources
> Task :expo-modules-core:generateDebugBuildConfig
> Task :react-native-screens:generateDebugRFile
> Task :react-native-splash-screen:generateDebugRFile
> Task :expo-modules-core:compileDebugKotlin
w: /app/node_modules/expo-modules-core/android/src/main/java/expo/modules/kotlin/records/RecordTypeConverter.kt: (38, 13): Name shadowed: value

> Task :expo-modules-core:javaPreCompileDebug
> Task :expo-application:javaPreCompileDebug
> Task :expo-constants:generateDebugBuildConfig

> Task :expo-modules-core:compileDebugJavaWithJavacNote: Some input files use or override a deprecated API.

Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :expo-constants:javaPreCompileDebug
> Task :expo-error-recovery:generateDebugBuildConfig
> Task :expo-error-recovery:javaPreCompileDebug
> Task :expo-file-system:generateDebugBuildConfig
> Task :expo-file-system:javaPreCompileDebug
> Task :expo-font:generateDebugBuildConfig
> Task :expo-modules-core:bundleLibCompileToJarDebug
> Task :expo-font:javaPreCompileDebug
> Task :expo-keep-awake:generateDebugBuildConfig
> Task :expo-keep-awake:javaPreCompileDebug
> Task :expo:generateDebugRFile

> Task :expo-application:compileDebugKotlin
w: /app/node_modules/expo-application/android/src/main/java/expo/modules/application/ApplicationModule.kt: (129, 14): 'versionCode: Int' is deprecated. Deprecated in Java

> Task :expo-application:compileDebugJavaWithJavac
> Task :expo-application:bundleLibCompileToJarDebug

> Task :expo-constants:compileDebugKotlin
w: /app/node_modules/expo-constants/android/src/main/java/expo/modules/constants/ConstantsService.kt: (132, 17): 'versionCode: Int' is deprecated. Deprecated in Java

> Task :expo-constants:compileDebugJavaWithJavac
> Task :expo-constants:bundleLibCompileToJarDebug
> Task :expo-error-recovery:compileDebugKotlin
> Task :expo-error-recovery:compileDebugJavaWithJavac
> Task :expo-error-recovery:bundleLibCompileToJarDebug

> Task :expo-file-system:compileDebugKotlin
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (8, 19): 'AsyncTask<Params : Any!, Progress : Any!, Result : Any!>' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (419, 27): Type mismatch: inferred type is String? but String was expected
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (463, 29): Type mismatch: inferred type is String? but String was expected
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (552, 43): Parameter 'options' is never used
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (640, 46): Parameter 'options' is never used
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (764, 43): Unchecked cast: Any? to Map<String, Any>?
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (769, 36): Type mismatch: inferred type is String? but String was expected
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (786, 15): Unchecked cast: Any to Map<String, Any>
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (918, 49): Unchecked cast: Any? to Map<String, Any>?
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1019, 43): Unchecked cast: Any? to Map<String, Any>?
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1031, 9): 'execute(vararg FileSystemModule.DownloadResumableTaskParams?): AsyncTask<FileSystemModule.DownloadResumableTaskParams?, Void?, Void?>!' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1092, 47): 'AsyncTask<Params : Any!, Progress : Any!, Result : Any!>' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1092, 47): 'constructor AsyncTask<Params : Any!, Progress : Any!, Result : Any!>()' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1105, 21): Variable 'count' initializer is redundant
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1276, 35): Type mismatch: inferred type is String? but String was expected

> Task :expo-file-system:compileDebugJavaWithJavac
> Task :expo-file-system:bundleLibCompileToJarDebug

> Task :expo-font:compileDebugKotlin
w: /app/node_modules/expo-font/android/src/main/java/expo/modules/font/FontLoaderModule.kt: (55, 38): Type mismatch: inferred type is String? but String was expected

> Task :expo-font:compileDebugJavaWithJavac
> Task :expo-font:bundleLibCompileToJarDebug
> Task :expo-keep-awake:compileDebugKotlin
> Task :expo-keep-awake:compileDebugJavaWithJavac
> Task :expo-linear-gradient:generateDebugBuildConfig
> Task :expo-keep-awake:bundleLibCompileToJarDebug
> Task :expo-linear-gradient:compileDebugKotlin
> Task :expo-linear-gradient:javaPreCompileDebug
> Task :expo-localization:generateDebugBuildConfig
> Task :expo-linear-gradient:compileDebugJavaWithJavac
> Task :expo-linear-gradient:bundleLibCompileToJarDebug

> Task :expo-localization:compileDebugKotlin
w: /app/node_modules/expo-localization/android/src/main/java/expo/modules/localization/LocalizationModule.kt: (75, 35): 'locale: Locale!' is deprecated. Deprecated in Java

> Task :expo-localization:javaPreCompileDebug
> Task :expo:javaPreCompileDebug
> Task :expo-localization:compileDebugJavaWithJavac
> Task :react-native-async-storage_async-storage:generateDebugBuildConfig
> Task :expo-localization:bundleLibCompileToJarDebug
> Task :react-native-async-storage_async-storage:javaPreCompileDebug
> Task :react-native-community_masked-view:generateDebugBuildConfig
> Task :app:processDebugResources

> Task :react-native-async-storage_async-storage:compileDebugJavaWithJavac
Note: /app/node_modules/@react-native-async-storage/async-storage/android/src/main/java/com/reactnativecommunity/asyncstorage/AsyncStorageModule.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /app/node_modules/@react-native-async-storage/async-storage/android/src/main/java/com/reactnativecommunity/asyncstorage/AsyncStoragePackage.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :react-native-async-storage_async-storage:bundleLibCompileToJarDebug
> Task :react-native-community_masked-view:javaPreCompileDebug
> Task :react-native-gesture-handler:generateDebugBuildConfig
> Task :react-native-community_masked-view:compileDebugJavaWithJavac
> Task :react-native-gesture-handler:javaPreCompileDebug
> Task :react-native-safe-area-context:generateDebugBuildConfig
> Task :react-native-community_masked-view:bundleLibCompileToJarDebug

> Task :react-native-gesture-handler:compileDebugJavaWithJavac
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :react-native-safe-area-context:javaPreCompileDebug
> Task :react-native-gesture-handler:bundleLibCompileToJarDebug
> Task :react-native-screens:generateDebugBuildConfig

> Task :react-native-safe-area-context:compileDebugJavaWithJavac
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

> Task :react-native-safe-area-context:bundleLibCompileToJarDebug

> Task :react-native-screens:compileDebugKotlin
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/Screen.kt: (80, 26): 'constructor GuardedRunnable(ReactContext!)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt: (59, 28): 'setter for targetElevation: Float' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt: (142, 28): 'setter for targetElevation: Float' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.kt: (154, 56): 'getter for systemWindowInsetTop: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.kt: (222, 29): 'setColorFilter(Int, PorterDuff.Mode): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (56, 22): 'constructor GuardedRunnable(ReactContext!)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (84, 57): 'getter for systemUiVisibility: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (86, 53): 'SYSTEM_UI_FLAG_LIGHT_STATUS_BAR: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (88, 54): 'SYSTEM_UI_FLAG_LIGHT_STATUS_BAR: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (90, 27): 'setter for systemUiVisibility: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (106, 22): 'constructor GuardedRunnable(ReactContext!)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (115, 43): 'replaceSystemWindowInsets(Int, Int, Int, Int): WindowInsets' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (116, 47): 'getter for systemWindowInsetLeft: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (118, 47): 'getter for systemWindowInsetRight: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (119, 47): 'getter for systemWindowInsetBottom: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (138, 69): 'FLAG_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (139, 71): 'FLAG_FORCE_NOT_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (141, 69): 'FLAG_FORCE_NOT_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (142, 71): 'FLAG_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (7, 51): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (17, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (18, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (7, 40): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (7, 43): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (7, 43): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (17, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (13, 5): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (22, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (27, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (7, 44): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (7, 47): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (7, 52): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java

> Task :react-native-screens:javaPreCompileDebug
> Task :react-native-splash-screen:generateDebugBuildConfig
> Task :react-native-screens:compileDebugJavaWithJavac
> Task :react-native-splash-screen:javaPreCompileDebug
> Task :react-native-screens:bundleLibCompileToJarDebug
> Task :app:javaPreCompileDebug
> Task :react-native-splash-screen:compileDebugJavaWithJavac
> Task :react-native-splash-screen:bundleLibCompileToJarDebug
> Task :app:mergeDebugNativeDebugMetadata NO-SOURCE
> Task :app:processDebugJavaRes NO-SOURCE
> Task :app:compressDebugAssets
> Task :expo:processDebugJavaRes NO-SOURCE
> Task :expo-application:processDebugJavaRes NO-SOURCE
> Task :expo-constants:cleanupDebugExpoConfig
> Task :expo-constants:processDebugJavaRes NO-SOURCE
> Task :expo-constants:bundleLibResDebug
> Task :expo-application:bundleLibResDebug
> Task :expo-error-recovery:processDebugJavaRes NO-SOURCE
> Task :expo-error-recovery:bundleLibResDebug
> Task :expo-file-system:processDebugJavaRes NO-SOURCE
> Task :expo-file-system:bundleLibResDebug
> Task :expo-font:processDebugJavaRes NO-SOURCE
> Task :expo-keep-awake:processDebugJavaRes NO-SOURCE
> Task :expo-font:bundleLibResDebug
> Task :expo-keep-awake:bundleLibResDebug
> Task :expo-linear-gradient:processDebugJavaRes NO-SOURCE
> Task :expo-linear-gradient:bundleLibResDebug
> Task :expo-localization:processDebugJavaRes NO-SOURCE
> Task :expo-localization:bundleLibResDebug
> Task :expo-modules-core:processDebugJavaRes NO-SOURCE
> Task :react-native-async-storage_async-storage:processDebugJavaRes NO-SOURCE
> Task :expo-modules-core:bundleLibResDebug
> Task :react-native-async-storage_async-storage:bundleLibResDebug NO-SOURCE
> Task :react-native-community_masked-view:processDebugJavaRes NO-SOURCE
> Task :react-native-community_masked-view:bundleLibResDebug NO-SOURCE
> Task :react-native-gesture-handler:processDebugJavaRes NO-SOURCE
> Task :react-native-gesture-handler:bundleLibResDebug NO-SOURCE
> Task :react-native-safe-area-context:processDebugJavaRes NO-SOURCE
> Task :react-native-safe-area-context:bundleLibResDebug NO-SOURCE
> Task :react-native-screens:processDebugJavaRes NO-SOURCE
> Task :react-native-screens:bundleLibResDebug
> Task :react-native-splash-screen:processDebugJavaRes NO-SOURCE
> Task :react-native-splash-screen:bundleLibResDebug NO-SOURCE
> Task :app:checkDebugDuplicateClasses
> Task :expo:compileDebugKotlin
> Task :expo:compileDebugJavaWithJavac
> Task :expo:bundleLibCompileToJarDebug
> Task :expo:bundleLibResDebug
> Task :react-native-async-storage_async-storage:bundleLibRuntimeToJarDebug
> Task :app:compileDebugKotlin
> Task :app:desugarDebugFileDependencies

> Task :app:compileDebugJavaWithJavac

> Task :app:compileDebugSources
Note: /app/android/app/src/debug/java/com/chuckthejoker/ReactNativeFlipper.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
> Task :app:mergeExtDexDebug
> Task :react-native-community_masked-view:bundleLibRuntimeToJarDebug
> Task :expo-application:bundleLibRuntimeToJarDebug
> Task :expo-constants:bundleLibRuntimeToJarDebug
> Task :expo-error-recovery:bundleLibRuntimeToJarDebug
> Task :expo-font:bundleLibRuntimeToJarDebug
> Task :expo-file-system:bundleLibRuntimeToJarDebug
> Task :expo-keep-awake:bundleLibRuntimeToJarDebug
> Task :expo-linear-gradient:bundleLibRuntimeToJarDebug
> Task :expo-localization:bundleLibRuntimeToJarDebug
> Task :expo:bundleLibRuntimeToJarDebug
> Task :react-native-gesture-handler:bundleLibRuntimeToJarDebug
> Task :expo-modules-core:bundleLibRuntimeToJarDebug
> Task :react-native-safe-area-context:bundleLibRuntimeToJarDebug
> Task :react-native-screens:bundleLibRuntimeToJarDebug
> Task :react-native-splash-screen:bundleLibRuntimeToJarDebug
> Task :app:dexBuilderDebug
> Task :app:mergeDebugJniLibFolders
> Task :expo:mergeDebugJniLibFolders
> Task :expo:mergeDebugNativeLibs NO-SOURCE
> Task :expo:stripDebugDebugSymbols NO-SOURCE
> Task :expo:copyDebugJniLibsProjectOnly
> Task :expo-application:mergeDebugJniLibFolders
> Task :expo-application:mergeDebugNativeLibs NO-SOURCE
> Task :expo-application:stripDebugDebugSymbols NO-SOURCE
> Task :expo-application:copyDebugJniLibsProjectOnly
> Task :expo-constants:mergeDebugJniLibFolders
> Task :expo-constants:mergeDebugNativeLibs NO-SOURCE
> Task :expo-constants:stripDebugDebugSymbols NO-SOURCE
> Task :expo-constants:copyDebugJniLibsProjectOnly
> Task :expo-error-recovery:mergeDebugJniLibFolders
> Task :expo-error-recovery:mergeDebugNativeLibs NO-SOURCE
> Task :expo-error-recovery:stripDebugDebugSymbols NO-SOURCE
> Task :expo-error-recovery:copyDebugJniLibsProjectOnly
> Task :expo-file-system:mergeDebugJniLibFolders
> Task :expo-file-system:mergeDebugNativeLibs NO-SOURCE
> Task :expo-file-system:stripDebugDebugSymbols NO-SOURCE
> Task :expo-file-system:copyDebugJniLibsProjectOnly
> Task :expo-font:mergeDebugJniLibFolders
> Task :expo-font:mergeDebugNativeLibs NO-SOURCE
> Task :expo-font:stripDebugDebugSymbols NO-SOURCE
> Task :expo-font:copyDebugJniLibsProjectOnly
> Task :expo-keep-awake:mergeDebugJniLibFolders
> Task :expo-keep-awake:mergeDebugNativeLibs NO-SOURCE
> Task :expo-keep-awake:stripDebugDebugSymbols NO-SOURCE
> Task :expo-keep-awake:copyDebugJniLibsProjectOnly
> Task :expo-linear-gradient:mergeDebugJniLibFolders
> Task :app:mergeLibDexDebug
> Task :expo-linear-gradient:mergeDebugNativeLibs NO-SOURCE
> Task :expo-linear-gradient:stripDebugDebugSymbols NO-SOURCE
> Task :expo-linear-gradient:copyDebugJniLibsProjectOnly
> Task :expo-localization:mergeDebugJniLibFolders
> Task :expo-localization:mergeDebugNativeLibs NO-SOURCE
> Task :expo-localization:stripDebugDebugSymbols NO-SOURCE
> Task :expo-localization:copyDebugJniLibsProjectOnly
> Task :expo-modules-core:mergeDebugJniLibFolders
> Task :expo-modules-core:mergeDebugNativeLibs NO-SOURCE
> Task :expo-modules-core:stripDebugDebugSymbols NO-SOURCE
> Task :expo-modules-core:copyDebugJniLibsProjectOnly
> Task :react-native-async-storage_async-storage:mergeDebugJniLibFolders
> Task :app:mergeDebugJavaResource
> Task :react-native-async-storage_async-storage:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-async-storage_async-storage:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-async-storage_async-storage:copyDebugJniLibsProjectOnly
> Task :react-native-community_masked-view:mergeDebugJniLibFolders
> Task :react-native-community_masked-view:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-community_masked-view:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-community_masked-view:copyDebugJniLibsProjectOnly
> Task :react-native-gesture-handler:mergeDebugJniLibFolders
> Task :react-native-gesture-handler:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-gesture-handler:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-gesture-handler:copyDebugJniLibsProjectOnly
> Task :react-native-safe-area-context:mergeDebugJniLibFolders
> Task :react-native-safe-area-context:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-safe-area-context:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-safe-area-context:copyDebugJniLibsProjectOnly
> Task :react-native-screens:mergeDebugJniLibFolders
> Task :react-native-screens:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-screens:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-screens:copyDebugJniLibsProjectOnly
> Task :react-native-splash-screen:mergeDebugJniLibFolders
> Task :react-native-splash-screen:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-splash-screen:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-splash-screen:copyDebugJniLibsProjectOnly
> Task :app:validateSigningDebug
> Task :app:writeDebugAppMetadata
> Task :app:mergeProjectDexDebug
> Task :app:writeDebugSigningConfigVersions
> Task :expo:copyDebugJniLibsProjectAndLocalJars
> Task :expo:extractDebugAnnotations
> Task :expo:mergeDebugGeneratedProguardFiles
> Task :expo:mergeDebugConsumerProguardFiles
> Task :expo:prepareLintJarForPublish
> Task :expo:mergeDebugJavaResource
> Task :expo:mergeDebugResources
> Task :expo:syncDebugLibJars
> Task :expo:bundleDebugAar
> Task :expo:compileDebugSources
> Task :expo:assembleDebug
> Task :expo-application:copyDebugJniLibsProjectAndLocalJars
> Task :expo-application:extractDebugAnnotations
> Task :expo-application:mergeDebugGeneratedProguardFiles
> Task :expo-application:mergeDebugConsumerProguardFiles
> Task :expo-application:prepareLintJarForPublish
> Task :expo-application:compileDebugSources
> Task :expo-constants:copyDebugJniLibsProjectAndLocalJars
> Task :expo-application:mergeDebugJavaResource
> Task :expo-constants:extractDebugAnnotations
> Task :expo-application:syncDebugLibJars
> Task :expo-application:bundleDebugAar
> Task :expo-application:assembleDebug
> Task :expo-constants:mergeDebugGeneratedProguardFiles
> Task :expo-constants:mergeDebugConsumerProguardFiles
> Task :expo-constants:prepareLintJarForPublish
> Task :expo-constants:compileDebugSources
> Task :expo-constants:mergeDebugJavaResource
> Task :expo-error-recovery:copyDebugJniLibsProjectAndLocalJars
> Task :expo-error-recovery:extractDebugAnnotations
> Task :expo-constants:syncDebugLibJars
> Task :expo-constants:bundleDebugAar
> Task :expo-constants:assembleDebug
> Task :expo-error-recovery:mergeDebugGeneratedProguardFiles
> Task :expo-error-recovery:mergeDebugConsumerProguardFiles
> Task :expo-error-recovery:prepareLintJarForPublish
> Task :expo-error-recovery:compileDebugSources
> Task :expo-error-recovery:mergeDebugJavaResource
> Task :expo-file-system:copyDebugJniLibsProjectAndLocalJars
> Task :expo-error-recovery:syncDebugLibJars
> Task :expo-error-recovery:bundleDebugAar
> Task :expo-error-recovery:assembleDebug
> Task :expo-file-system:extractDebugAnnotations
> Task :expo-file-system:mergeDebugGeneratedProguardFiles
> Task :expo-file-system:mergeDebugConsumerProguardFiles
> Task :expo-file-system:compileDebugSources
> Task :expo-file-system:prepareLintJarForPublish
> Task :expo-file-system:mergeDebugJavaResource
> Task :expo-font:copyDebugJniLibsProjectAndLocalJars
> Task :expo-file-system:syncDebugLibJars
> Task :expo-file-system:bundleDebugAar
> Task :expo-file-system:assembleDebug
> Task :expo-font:extractDebugAnnotations
> Task :expo-font:mergeDebugGeneratedProguardFiles
> Task :expo-font:mergeDebugConsumerProguardFiles
> Task :expo-font:compileDebugSources
> Task :expo-font:prepareLintJarForPublish
> Task :expo-font:mergeDebugJavaResource
> Task :expo-keep-awake:copyDebugJniLibsProjectAndLocalJars
> Task :expo-font:syncDebugLibJars
> Task :expo-font:bundleDebugAar
> Task :expo-font:assembleDebug
> Task :expo-keep-awake:extractDebugAnnotations
> Task :expo-keep-awake:mergeDebugGeneratedProguardFiles
> Task :expo-keep-awake:mergeDebugConsumerProguardFiles
> Task :expo-keep-awake:prepareLintJarForPublish
> Task :expo-keep-awake:mergeDebugJavaResource
> Task :expo-keep-awake:syncDebugLibJars
> Task :expo-keep-awake:bundleDebugAar
> Task :expo-keep-awake:compileDebugSources
> Task :expo-keep-awake:assembleDebug
> Task :expo-linear-gradient:copyDebugJniLibsProjectAndLocalJars
> Task :expo-linear-gradient:extractDebugAnnotations
> Task :expo-linear-gradient:mergeDebugGeneratedProguardFiles
> Task :expo-linear-gradient:mergeDebugConsumerProguardFiles
> Task :expo-linear-gradient:prepareLintJarForPublish
> Task :expo-linear-gradient:compileDebugSources
> Task :expo-linear-gradient:mergeDebugJavaResource
> Task :expo-localization:copyDebugJniLibsProjectAndLocalJars
> Task :expo-linear-gradient:syncDebugLibJars
> Task :expo-linear-gradient:bundleDebugAar
> Task :expo-linear-gradient:assembleDebug
> Task :expo-localization:extractDebugAnnotations
> Task :expo-localization:mergeDebugGeneratedProguardFiles
> Task :expo-localization:mergeDebugConsumerProguardFiles
> Task :expo-localization:prepareLintJarForPublish
> Task :expo-localization:compileDebugSources
> Task :expo-localization:mergeDebugJavaResource
> Task :expo-modules-core:copyDebugJniLibsProjectAndLocalJars
> Task :expo-modules-core:extractDebugAnnotations
> Task :expo-localization:syncDebugLibJars
> Task :expo-localization:bundleDebugAar
> Task :expo-localization:assembleDebug
> Task :expo-modules-core:mergeDebugGeneratedProguardFiles
> Task :expo-modules-core:mergeDebugConsumerProguardFiles
> Task :expo-modules-core:prepareLintJarForPublish
> Task :expo-modules-core:compileDebugSources
> Task :react-native-async-storage_async-storage:copyDebugJniLibsProjectAndLocalJars
> Task :expo-modules-core:mergeDebugJavaResource
> Task :react-native-async-storage_async-storage:extractDebugAnnotations
> Task :expo-modules-core:syncDebugLibJars
> Task :expo-modules-core:bundleDebugAar
> Task :expo-modules-core:assembleDebug
> Task :react-native-async-storage_async-storage:mergeDebugGeneratedProguardFiles
> Task :react-native-async-storage_async-storage:mergeDebugConsumerProguardFiles
> Task :react-native-async-storage_async-storage:prepareLintJarForPublish
> Task :react-native-async-storage_async-storage:compileDebugSources
> Task :react-native-community_masked-view:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-async-storage_async-storage:mergeDebugJavaResource
> Task :react-native-community_masked-view:extractDebugAnnotations
> Task :react-native-async-storage_async-storage:syncDebugLibJars
> Task :react-native-async-storage_async-storage:bundleDebugAar
> Task :react-native-async-storage_async-storage:assembleDebug
> Task :react-native-community_masked-view:mergeDebugGeneratedProguardFiles
> Task :react-native-community_masked-view:mergeDebugConsumerProguardFiles
> Task :react-native-community_masked-view:compileDebugSources
> Task :react-native-community_masked-view:prepareLintJarForPublish
> Task :react-native-gesture-handler:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-community_masked-view:mergeDebugJavaResource
> Task :react-native-gesture-handler:extractDebugAnnotations
> Task :react-native-community_masked-view:syncDebugLibJars
> Task :react-native-community_masked-view:bundleDebugAar
> Task :react-native-community_masked-view:assembleDebug
> Task :react-native-gesture-handler:mergeDebugGeneratedProguardFiles
> Task :react-native-gesture-handler:mergeDebugConsumerProguardFiles
> Task :react-native-gesture-handler:prepareLintJarForPublish
> Task :react-native-gesture-handler:compileDebugSources
> Task :react-native-gesture-handler:mergeDebugJavaResource
> Task :react-native-safe-area-context:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-gesture-handler:syncDebugLibJars
> Task :react-native-gesture-handler:bundleDebugAar
> Task :react-native-gesture-handler:assembleDebug
> Task :react-native-safe-area-context:extractDebugAnnotations
> Task :react-native-safe-area-context:mergeDebugGeneratedProguardFiles
> Task :react-native-safe-area-context:mergeDebugConsumerProguardFiles
> Task :react-native-safe-area-context:prepareLintJarForPublish
> Task :react-native-safe-area-context:compileDebugSources
> Task :react-native-safe-area-context:mergeDebugJavaResource
> Task :react-native-screens:copyDebugJniLibsProjectAndLocalJars
> Task :app:mergeDebugNativeLibs

> Task :app:stripDebugDebugSymbols
Unable to strip the following libraries, packaging them as they are: libbetter.so, libc++_shared.so, libevent-2.1.so, libevent_core-2.1.so, libevent_extra-2.1.so, libfabricjni.so, libfb.so, libfbjni.so, libflipper.so, libfolly_futures.so, libfolly_json.so, libgifimage.so, libglog.so, libglog_init.so, libhermes-executor-common-debug.so, libhermes-executor-debug.so, libhermes-inspector.so, libhermes.so, libimagepipeline.so, libjsi.so, libjsijniprofiler.so, libjsinspector.so, liblogger.so, libmapbufferjni.so, libnative-filters.so, libnative-imagetranscoder.so, libreact_codegen_rncore.so, libreact_debug.so, libreact_nativemodule_core.so, libreact_render_animations.so, libreact_render_attributedstring.so, libreact_render_componentregistry.so, libreact_render_core.so, libreact_render_debug.so, libreact_render_graphics.so, libreact_render_imagemanager.so, libreact_render_leakchecker.so, libreact_render_mapbuffer.so, libreact_render_mounting.so, libreact_render_runtimescheduler.so, libreact_render_scheduler.so, libreact_render_telemetry.so, libreact_render_templateprocessor.so, libreact_render_textlayoutmanager.so, libreact_render_uimanager.so, libreact_utils.so, libreactconfig.so, libreactnativeblob.so, libreactnativejni.so, libreactnativeutilsjni.so, libreactperfloggerjni.so, librrc_image.so, librrc_modal.so, librrc_progressbar.so, librrc_root.so, librrc_scrollview.so, librrc_slider.so, librrc_switch.so, librrc_text.so, librrc_textinput.so, librrc_unimplementedview.so, librrc_view.so, libstatic-webp.so, libturbomodulejsijni.so, libyoga.so.

> Task :react-native-safe-area-context:syncDebugLibJars
> Task :react-native-safe-area-context:bundleDebugAar
> Task :react-native-safe-area-context:assembleDebug
> Task :react-native-screens:extractDebugAnnotations
> Task :react-native-screens:mergeDebugGeneratedProguardFiles
> Task :react-native-screens:mergeDebugConsumerProguardFiles
> Task :react-native-screens:prepareLintJarForPublish
> Task :react-native-screens:compileDebugSources
> Task :react-native-splash-screen:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-screens:mergeDebugJavaResource
> Task :react-native-splash-screen:extractDebugAnnotations
> Task :react-native-screens:syncDebugLibJars
> Task :react-native-screens:bundleDebugAar
> Task :react-native-screens:assembleDebug
> Task :react-native-splash-screen:mergeDebugGeneratedProguardFiles
> Task :react-native-splash-screen:mergeDebugConsumerProguardFiles
> Task :react-native-splash-screen:prepareLintJarForPublish
> Task :react-native-splash-screen:compileDebugSources
> Task :react-native-splash-screen:mergeDebugJavaResource
> Task :react-native-splash-screen:syncDebugLibJars
> Task :react-native-splash-screen:bundleDebugAar
> Task :react-native-splash-screen:assembleDebug
> Task :app:packageDebug
> Task :app:assembleDebug

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings

Execution optimizations have been disabled for 1 invalid unit(s) of work during this build to ensure correctness.
Please consult deprecation warnings for more details.

BUILD SUCCESSFUL in 4m 11s
458 actionable tasks: 458 executed

> docker run --rm -v /home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output -v /home/ubuntu/.npm:/root/.npm react-android:18-jdk11 bash -c 
                set -e

                cp -r /source/. /app &&                 cd /app && 
                # ---- install deps (yarn or npm) ----
                if [ -f yarn.lock ]; then
                    yarn install;
                else
                    npm install --ignore-scripts;
                fi && 
                # ---- stub missing parent package.json (monorepo metro configs) ----
                [ ! -f ../package.json ] && cp package.json ../package.json 2>/dev/null || true && 
                # ---- patch toReversed (Node <20 compat) ----
                find node_modules -name "loadConfig.js" -path "*/metro-config/*" -exec sed -i 's/\.toReversed()/.slice().reverse()/g' {} \; 2>/dev/null || true && 
                # ---- patch missing expo/AppEntry ----
                if grep -q '"main".*expo/AppEntry' package.json 2>/dev/null &&                    [ ! -f node_modules/expo/AppEntry.js ] && [ ! -f node_modules/expo/AppEntry.ts ]; then                     node -e "const fs=require('fs'); const p=JSON.parse(fs.readFileSync('package.json','utf8')); if(fs.existsSync('index.js')){p.main='index.js'; fs.writeFileSync('package.json',JSON.stringify(p,null,2));}" 2>/dev/null || true;                 fi && 
                # ---- patch broken metro config (ESM-only, null-returning, or monorepo-only) ----
                # NOTE: do NOT replace configs that merely use expo/metro-config — those carry
                # Expo-specific resolver paths (watchFolders, extraNodeModules) needed for
                # packages like @react-native-masked-view/masked-view to resolve.
                if grep -q 'react-native-monorepo-config' metro.config.js 2>/dev/null ||                    ! node -e "const c=require('./metro.config.js'); if(!c||typeof c!=='object') process.exit(1);" 2>/dev/null; then                     if [ -d node_modules/@react-native/metro-config ]; then                         printf 'const {getDefaultConfig, mergeConfig} = require("@react-native/metro-config");
module.exports = mergeConfig(getDefaultConfig(__dirname), {});
' > metro.config.js;                     else                         printf 'const {getDefaultConfig} = require("metro-config");
module.exports = getDefaultConfig(__dirname);
' > metro.config.js;                     fi;                 fi && 
                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----
                if [ ! -f google-services.json ]; then                     python3 -c "import json; open('google-services.json','w').write(json.dumps({'project_info':{'project_number':'000000000000','project_id':'stub','storage_bucket':'stub.appspot.com'},'client':[{'client_info':{'mobilesdk_app_id':'1:000000000000:android:0000000000000000','android_client_info':{'package_name':'com.stub'}},'oauth_client':[],'api_key':[{'current_key':'stub'}],'services':{'appinvite_service':{'other_platform_oauth_client':[]}}}],'configuration_version':'1'}))" 2>/dev/null || true;                 fi && 
                # ---- detect expo ----
                if grep -q '"expo"' package.json && [ ! -d android ]; then
                    echo "Expo project detected";
                    CI=1 npx --yes expo prebuild --platform android
                fi && 
                # ---- fix expo/metro-config: serializer + Flow transformIgnorePatterns ----
                # Runs AFTER prebuild because prebuild generates metro.config.js for managed-workflow
                # projects — patching before prebuild would be overwritten by the generated file.
                # Fix 1: remove customSerializer that returns JS string instead of JSON
                #   ("var __BUND..." → "Serializer did not return expected format").
                # Fix 2: add transformIgnorePatterns so expo/src/Expo.ts goes through Babel
                #   (default pattern excludes all node_modules → raw Flow types → SyntaxError).
                if [ -f metro.config.js ] && [ -d node_modules/expo ] &&                    ( grep -q 'expo/metro-config\|@expo/metro-config' metro.config.js 2>/dev/null ||                      ! grep -q 'transformIgnorePatterns' metro.config.js 2>/dev/null ); then                     cp metro.config.js metro.config.orig.js &&                     printf 'const c=require("./metro.config.orig.js");const r=Object.assign({},c);if(r.serializer){r.serializer=Object.assign({},r.serializer);delete r.serializer.customSerializer;}r.transformer=Object.assign({},r.transformer||{});if(!r.transformer.transformIgnorePatterns){r.transformer.transformIgnorePatterns=["node_modules/(?!(react-native|@react-native|expo|@expo|@unimodules|react-clone-referenced-element|@react-navigation|native-base)/)"];}module.exports=r;\n' > metro.config.js;                 fi && 
                # ---- stub missing metro watchFolders paths ----
                mkdir -p /src 2>/dev/null || true && 
                # ---- fix babel configs that use react-native-builder-bob ----
                # builder-bob is a library-dev tool; its getConfig() throws "Couldn't determine the source
                # directory" when built outside the library's own workspace. Replace with a standard preset.
                if grep -ql 'react-native-builder-bob' babel.config.js babel.config.json .babelrc .babelrc.js 2>/dev/null; then                     if [ -d node_modules/babel-preset-expo ]; then                         printf 'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};
' > babel.config.js;                     elif [ -d node_modules/@react-native/babel-preset ]; then                         printf 'module.exports={presets:["module:@react-native/babel-preset"]};' > babel.config.js;                     else                         printf 'module.exports={presets:["module:metro-react-native-babel-preset"]};' > babel.config.js;                     fi;                 fi && 
                # ---- ensure TypeScript babel support (fixes 'interface' SyntaxError in metro bundling) ----
                if [ -d node_modules/babel-preset-expo ]; then                     grep -ql "expo\|typescript" babel.config.js .babelrc .babelrc.js babel.config.json 2>/dev/null ||                     printf 'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};
' > babel.config.js;                 fi && 
                # ---- stub missing-asset-registry-path (Metro virtual module not resolved in release) ----
                # Metro normally aliases this to @react-native/assets-registry/registry at bundle time.
                # When that alias is missing, any PNG asset in node_modules triggers "Unable to resolve module".
                if [ ! -d node_modules/missing-asset-registry-path ]; then                     mkdir -p node_modules/missing-asset-registry-path &&                     if [ -f node_modules/@react-native/assets-registry/registry.js ]; then                         printf 'module.exports=require("@react-native/assets-registry/registry");' > node_modules/missing-asset-registry-path/index.js;                     else                         printf 'module.exports={registerAsset:function(){return 0;},getAssetByID:function(){return null;}};' > node_modules/missing-asset-registry-path/index.js;                     fi;                 fi && 
                # ---- stub @react-native-masked-view/masked-view if missing ----
                # Required by @react-navigation/elements but often not installed as a direct dependency.
                if [ ! -d node_modules/@react-native-masked-view/masked-view ]; then                     mkdir -p node_modules/@react-native-masked-view/masked-view &&                     printf '{"name":"@react-native-masked-view/masked-view","version":"0.1.11","main":"index.js"}' > node_modules/@react-native-masked-view/masked-view/package.json &&                     printf 'const React=require("react");const {View}=require("react-native");function MaskedView(p){return React.createElement(View,p.style?{style:p.style}:{},p.children);}module.exports=MaskedView;module.exports.default=MaskedView;' > node_modules/@react-native-masked-view/masked-view/index.js;                 fi && 
                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && 
                chmod +x gradlew && 
                # ---- inject fallback repositories via Gradle init script ----
                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo 'gradle.beforeProject {project ->' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.buildscript.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '}' >> $GRADLE_USER_HOME/init.d/repos.gradle && 
                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----
                sed -i 's/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\/.bin\/react-native config")/' settings.gradle 2>/dev/null || true && 
                # ---- disable Sentry source map upload (no credentials in CI) ----
                export SENTRY_DISABLE_AUTO_UPLOAD=true &&                 echo "sentryUploadEnabled=false" >> gradle.properties 2>/dev/null || true && 
                # ---- enable ABI splits ----
                if grep -q 'splits' app/build.gradle 2>/dev/null; then                     sed -i 's/enable false/enable true/' app/build.gradle || true;                 else                     sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' app/build.gradle || true;                 fi && 
                # ---- enable R8 ----
                sed -i 's/enableProguardInReleaseBuilds = false/enableProguardInReleaseBuilds = true/' app/build.gradle || true && 
                # ---- sign release with debug key ----
                sed -i '/buildTypes/,/}/s/release {/release {
            signingConfig signingConfigs.debug/' app/build.gradle || true && 
                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----
                ./gradlew :app:dependencies --configuration releaseCompileClasspath --no-daemon > /dev/null 2>&1 || true && 
                # ---- build release apk ----
                ./gradlew assembleRelease --no-daemon || exit 1 &&                     
                APK_PATH="app/build/outputs/apk/release"

                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then
                    echo "ERROR: APK not generated"
                    exit 1
                fi

                # ---- copy output ----
                cp app/build/outputs/apk/release/*.apk /output/r8/

                # ---- copy TPL metadata ----
                [ -f ../package.json ] && cp ../package.json /output/r8/ || true
                [ -f ../package-lock.json ] && cp ../package-lock.json /output/r8/ || true
                [ -f ../yarn.lock ] && cp ../yarn.lock /output/r8/ || true
                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/r8/ || true
                [ -f app/build.gradle ] && cp app/build.gradle /output/r8/android-build.gradle || true
                [ -f build.gradle ] && cp build.gradle /output/r8/root-build.gradle || true
                [ -f build.gradle.kts ] && cp build.gradle.kts /output/r8/root-build.gradle.kts || true
                [ -f settings.gradle ] && cp settings.gradle /output/r8/ || true
                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/r8/ || true
                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/r8/ || true
                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true
                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true
                mkdir -p /output/r8/libs
                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
                    

ERROR: Command timed out

> echo Build failed with Node 18 and jdk version 11 with the following error: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'react-android:18-jdk11', 'bash', '-c', '\n                set -e\n\n                cp -r /source/. /app &&                 cd /app && \n                # ---- install deps (yarn or npm) ----\n                if [ -f yarn.lock ]; then\n                    yarn install;\n                else\n                    npm install --ignore-scripts;\n                fi && \n                # ---- stub missing parent package.json (monorepo metro configs) ----\n                [ ! -f ../package.json ] && cp package.json ../package.json 2>/dev/null || true && \n                # ---- patch toReversed (Node <20 compat) ----\n                find node_modules -name "loadConfig.js" -path "*/metro-config/*" -exec sed -i \'s/\\.toReversed()/.slice().reverse()/g\' {} \\; 2>/dev/null || true && \n                # ---- patch missing expo/AppEntry ----\n                if grep -q \'"main".*expo/AppEntry\' package.json 2>/dev/null &&                    [ ! -f node_modules/expo/AppEntry.js ] && [ ! -f node_modules/expo/AppEntry.ts ]; then                     node -e "const fs=require(\'fs\'); const p=JSON.parse(fs.readFileSync(\'package.json\',\'utf8\')); if(fs.existsSync(\'index.js\')){p.main=\'index.js\'; fs.writeFileSync(\'package.json\',JSON.stringify(p,null,2));}" 2>/dev/null || true;                 fi && \n                # ---- patch broken metro config (ESM-only, null-returning, or monorepo-only) ----\n                # NOTE: do NOT replace configs that merely use expo/metro-config — those carry\n                # Expo-specific resolver paths (watchFolders, extraNodeModules) needed for\n                # packages like @react-native-masked-view/masked-view to resolve.\n                if grep -q \'react-native-monorepo-config\' metro.config.js 2>/dev/null ||                    ! node -e "const c=require(\'./metro.config.js\'); if(!c||typeof c!==\'object\') process.exit(1);" 2>/dev/null; then                     if [ -d node_modules/@react-native/metro-config ]; then                         printf \'const {getDefaultConfig, mergeConfig} = require("@react-native/metro-config");\nmodule.exports = mergeConfig(getDefaultConfig(__dirname), {});\n\' > metro.config.js;                     else                         printf \'const {getDefaultConfig} = require("metro-config");\nmodule.exports = getDefaultConfig(__dirname);\n\' > metro.config.js;                     fi;                 fi && \n                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----\n                if [ ! -f google-services.json ]; then                     python3 -c "import json; open(\'google-services.json\',\'w\').write(json.dumps({\'project_info\':{\'project_number\':\'000000000000\',\'project_id\':\'stub\',\'storage_bucket\':\'stub.appspot.com\'},\'client\':[{\'client_info\':{\'mobilesdk_app_id\':\'1:000000000000:android:0000000000000000\',\'android_client_info\':{\'package_name\':\'com.stub\'}},\'oauth_client\':[],\'api_key\':[{\'current_key\':\'stub\'}],\'services\':{\'appinvite_service\':{\'other_platform_oauth_client\':[]}}}],\'configuration_version\':\'1\'}))" 2>/dev/null || true;                 fi && \n                # ---- detect expo ----\n                if grep -q \'"expo"\' package.json && [ ! -d android ]; then\n                    echo "Expo project detected";\n                    CI=1 npx --yes expo prebuild --platform android\n                fi && \n                # ---- fix expo/metro-config: serializer + Flow transformIgnorePatterns ----\n                # Runs AFTER prebuild because prebuild generates metro.config.js for managed-workflow\n                # projects — patching before prebuild would be overwritten by the generated file.\n                # Fix 1: remove customSerializer that returns JS string instead of JSON\n                #   ("var __BUND..." → "Serializer did not return expected format").\n                # Fix 2: add transformIgnorePatterns so expo/src/Expo.ts goes through Babel\n                #   (default pattern excludes all node_modules → raw Flow types → SyntaxError).\n                if [ -f metro.config.js ] && [ -d node_modules/expo ] &&                    ( grep -q \'expo/metro-config\\|@expo/metro-config\' metro.config.js 2>/dev/null ||                      ! grep -q \'transformIgnorePatterns\' metro.config.js 2>/dev/null ); then                     cp metro.config.js metro.config.orig.js &&                     printf \'const c=require("./metro.config.orig.js");const r=Object.assign({},c);if(r.serializer){r.serializer=Object.assign({},r.serializer);delete r.serializer.customSerializer;}r.transformer=Object.assign({},r.transformer||{});if(!r.transformer.transformIgnorePatterns){r.transformer.transformIgnorePatterns=["node_modules/(?!(react-native|@react-native|expo|@expo|@unimodules|react-clone-referenced-element|@react-navigation|native-base)/)"];}module.exports=r;\\n\' > metro.config.js;                 fi && \n                # ---- stub missing metro watchFolders paths ----\n                mkdir -p /src 2>/dev/null || true && \n                # ---- fix babel configs that use react-native-builder-bob ----\n                # builder-bob is a library-dev tool; its getConfig() throws "Couldn\'t determine the source\n                # directory" when built outside the library\'s own workspace. Replace with a standard preset.\n                if grep -ql \'react-native-builder-bob\' babel.config.js babel.config.json .babelrc .babelrc.js 2>/dev/null; then                     if [ -d node_modules/babel-preset-expo ]; then                         printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                     elif [ -d node_modules/@react-native/babel-preset ]; then                         printf \'module.exports={presets:["module:@react-native/babel-preset"]};\' > babel.config.js;                     else                         printf \'module.exports={presets:["module:metro-react-native-babel-preset"]};\' > babel.config.js;                     fi;                 fi && \n                # ---- ensure TypeScript babel support (fixes \'interface\' SyntaxError in metro bundling) ----\n                if [ -d node_modules/babel-preset-expo ]; then                     grep -ql "expo\\|typescript" babel.config.js .babelrc .babelrc.js babel.config.json 2>/dev/null ||                     printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                 fi && \n                # ---- stub missing-asset-registry-path (Metro virtual module not resolved in release) ----\n                # Metro normally aliases this to @react-native/assets-registry/registry at bundle time.\n                # When that alias is missing, any PNG asset in node_modules triggers "Unable to resolve module".\n                if [ ! -d node_modules/missing-asset-registry-path ]; then                     mkdir -p node_modules/missing-asset-registry-path &&                     if [ -f node_modules/@react-native/assets-registry/registry.js ]; then                         printf \'module.exports=require("@react-native/assets-registry/registry");\' > node_modules/missing-asset-registry-path/index.js;                     else                         printf \'module.exports={registerAsset:function(){return 0;},getAssetByID:function(){return null;}};\' > node_modules/missing-asset-registry-path/index.js;                     fi;                 fi && \n                # ---- stub @react-native-masked-view/masked-view if missing ----\n                # Required by @react-navigation/elements but often not installed as a direct dependency.\n                if [ ! -d node_modules/@react-native-masked-view/masked-view ]; then                     mkdir -p node_modules/@react-native-masked-view/masked-view &&                     printf \'{"name":"@react-native-masked-view/masked-view","version":"0.1.11","main":"index.js"}\' > node_modules/@react-native-masked-view/masked-view/package.json &&                     printf \'const React=require("react");const {View}=require("react-native");function MaskedView(p){return React.createElement(View,p.style?{style:p.style}:{},p.children);}module.exports=MaskedView;module.exports.default=MaskedView;\' > node_modules/@react-native-masked-view/masked-view/index.js;                 fi && \n                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && \n                chmod +x gradlew && \n                # ---- inject fallback repositories via Gradle init script ----\n                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo \'gradle.beforeProject {project ->\' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.buildscript.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'}\' >> $GRADLE_USER_HOME/init.d/repos.gradle && \n                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----\n                sed -i \'s/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\\/.bin\\/react-native config")/\' settings.gradle 2>/dev/null || true && \n                # ---- disable Sentry source map upload (no credentials in CI) ----\n                export SENTRY_DISABLE_AUTO_UPLOAD=true &&                 echo "sentryUploadEnabled=false" >> gradle.properties 2>/dev/null || true && \n                # ---- enable ABI splits ----\n                if grep -q \'splits\' app/build.gradle 2>/dev/null; then                     sed -i \'s/enable false/enable true/\' app/build.gradle || true;                 else                     sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' app/build.gradle || true;                 fi && \n                # ---- enable R8 ----\n                sed -i \'s/enableProguardInReleaseBuilds = false/enableProguardInReleaseBuilds = true/\' app/build.gradle || true && \n                # ---- sign release with debug key ----\n                sed -i \'/buildTypes/,/}/s/release {/release {\n            signingConfig signingConfigs.debug/\' app/build.gradle || true && \n                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----\n                ./gradlew :app:dependencies --configuration releaseCompileClasspath --no-daemon > /dev/null 2>&1 || true && \n                # ---- build release apk ----\n                ./gradlew assembleRelease --no-daemon || exit 1 &&                     \n                APK_PATH="app/build/outputs/apk/release"\n\n                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then\n                    echo "ERROR: APK not generated"\n                    exit 1\n                fi\n\n                # ---- copy output ----\n                cp app/build/outputs/apk/release/*.apk /output/r8/\n\n                # ---- copy TPL metadata ----\n                [ -f ../package.json ] && cp ../package.json /output/r8/ || true\n                [ -f ../package-lock.json ] && cp ../package-lock.json /output/r8/ || true\n                [ -f ../yarn.lock ] && cp ../yarn.lock /output/r8/ || true\n                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/r8/ || true\n                [ -f app/build.gradle ] && cp app/build.gradle /output/r8/android-build.gradle || true\n                [ -f build.gradle ] && cp build.gradle /output/r8/root-build.gradle || true\n                [ -f build.gradle.kts ] && cp build.gradle.kts /output/r8/root-build.gradle.kts || true\n                [ -f settings.gradle ] && cp settings.gradle /output/r8/ || true\n                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/r8/ || true\n                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/r8/ || true\n                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                mkdir -p /output/r8/libs\n                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                    ']' timed out after 7200 seconds
Build failed with Node 18 and jdk version 11 with the following error: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'react-android:18-jdk11', 'bash', '-c', '\n                set -e\n\n                cp -r /source/. /app &&                 cd /app && \n                # ---- install deps (yarn or npm) ----\n                if [ -f yarn.lock ]; then\n                    yarn install;\n                else\n                    npm install --ignore-scripts;\n                fi && \n                # ---- stub missing parent package.json (monorepo metro configs) ----\n                [ ! -f ../package.json ] && cp package.json ../package.json 2>/dev/null || true && \n                # ---- patch toReversed (Node <20 compat) ----\n                find node_modules -name "loadConfig.js" -path "*/metro-config/*" -exec sed -i \'s/\\.toReversed()/.slice().reverse()/g\' {} \\; 2>/dev/null || true && \n                # ---- patch missing expo/AppEntry ----\n                if grep -q \'"main".*expo/AppEntry\' package.json 2>/dev/null &&                    [ ! -f node_modules/expo/AppEntry.js ] && [ ! -f node_modules/expo/AppEntry.ts ]; then                     node -e "const fs=require(\'fs\'); const p=JSON.parse(fs.readFileSync(\'package.json\',\'utf8\')); if(fs.existsSync(\'index.js\')){p.main=\'index.js\'; fs.writeFileSync(\'package.json\',JSON.stringify(p,null,2));}" 2>/dev/null || true;                 fi && \n                # ---- patch broken metro config (ESM-only, null-returning, or monorepo-only) ----\n                # NOTE: do NOT replace configs that merely use expo/metro-config — those carry\n                # Expo-specific resolver paths (watchFolders, extraNodeModules) needed for\n                # packages like @react-native-masked-view/masked-view to resolve.\n                if grep -q \'react-native-monorepo-config\' metro.config.js 2>/dev/null ||                    ! node -e "const c=require(\'./metro.config.js\'); if(!c||typeof c!==\'object\') process.exit(1);" 2>/dev/null; then                     if [ -d node_modules/@react-native/metro-config ]; then                         printf \'const {getDefaultConfig, mergeConfig} = require("@react-native/metro-config");\nmodule.exports = mergeConfig(getDefaultConfig(__dirname), {});\n\' > metro.config.js;                     else                         printf \'const {getDefaultConfig} = require("metro-config");\nmodule.exports = getDefaultConfig(__dirname);\n\' > metro.config.js;                     fi;                 fi && \n                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----\n                if [ ! -f google-services.json ]; then                     python3 -c "import json; open(\'google-services.json\',\'w\').write(json.dumps({\'project_info\':{\'project_number\':\'000000000000\',\'project_id\':\'stub\',\'storage_bucket\':\'stub.appspot.com\'},\'client\':[{\'client_info\':{\'mobilesdk_app_id\':\'1:000000000000:android:0000000000000000\',\'android_client_info\':{\'package_name\':\'com.stub\'}},\'oauth_client\':[],\'api_key\':[{\'current_key\':\'stub\'}],\'services\':{\'appinvite_service\':{\'other_platform_oauth_client\':[]}}}],\'configuration_version\':\'1\'}))" 2>/dev/null || true;                 fi && \n                # ---- detect expo ----\n                if grep -q \'"expo"\' package.json && [ ! -d android ]; then\n                    echo "Expo project detected";\n                    CI=1 npx --yes expo prebuild --platform android\n                fi && \n                # ---- fix expo/metro-config: serializer + Flow transformIgnorePatterns ----\n                # Runs AFTER prebuild because prebuild generates metro.config.js for managed-workflow\n                # projects — patching before prebuild would be overwritten by the generated file.\n                # Fix 1: remove customSerializer that returns JS string instead of JSON\n                #   ("var __BUND..." → "Serializer did not return expected format").\n                # Fix 2: add transformIgnorePatterns so expo/src/Expo.ts goes through Babel\n                #   (default pattern excludes all node_modules → raw Flow types → SyntaxError).\n                if [ -f metro.config.js ] && [ -d node_modules/expo ] &&                    ( grep -q \'expo/metro-config\\|@expo/metro-config\' metro.config.js 2>/dev/null ||                      ! grep -q \'transformIgnorePatterns\' metro.config.js 2>/dev/null ); then                     cp metro.config.js metro.config.orig.js &&                     printf \'const c=require("./metro.config.orig.js");const r=Object.assign({},c);if(r.serializer){r.serializer=Object.assign({},r.serializer);delete r.serializer.customSerializer;}r.transformer=Object.assign({},r.transformer||{});if(!r.transformer.transformIgnorePatterns){r.transformer.transformIgnorePatterns=["node_modules/(?!(react-native|@react-native|expo|@expo|@unimodules|react-clone-referenced-element|@react-navigation|native-base)/)"];}module.exports=r;\\n\' > metro.config.js;                 fi && \n                # ---- stub missing metro watchFolders paths ----\n                mkdir -p /src 2>/dev/null || true && \n                # ---- fix babel configs that use react-native-builder-bob ----\n                # builder-bob is a library-dev tool; its getConfig() throws "Couldn\'t determine the source\n                # directory" when built outside the library\'s own workspace. Replace with a standard preset.\n                if grep -ql \'react-native-builder-bob\' babel.config.js babel.config.json .babelrc .babelrc.js 2>/dev/null; then                     if [ -d node_modules/babel-preset-expo ]; then                         printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                     elif [ -d node_modules/@react-native/babel-preset ]; then                         printf \'module.exports={presets:["module:@react-native/babel-preset"]};\' > babel.config.js;                     else                         printf \'module.exports={presets:["module:metro-react-native-babel-preset"]};\' > babel.config.js;                     fi;                 fi && \n                # ---- ensure TypeScript babel support (fixes \'interface\' SyntaxError in metro bundling) ----\n                if [ -d node_modules/babel-preset-expo ]; then                     grep -ql "expo\\|typescript" babel.config.js .babelrc .babelrc.js babel.config.json 2>/dev/null ||                     printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                 fi && \n                # ---- stub missing-asset-registry-path (Metro virtual module not resolved in release) ----\n                # Metro normally aliases this to @react-native/assets-registry/registry at bundle time.\n                # When that alias is missing, any PNG asset in node_modules triggers "Unable to resolve module".\n                if [ ! -d node_modules/missing-asset-registry-path ]; then                     mkdir -p node_modules/missing-asset-registry-path &&                     if [ -f node_modules/@react-native/assets-registry/registry.js ]; then                         printf \'module.exports=require("@react-native/assets-registry/registry");\' > node_modules/missing-asset-registry-path/index.js;                     else                         printf \'module.exports={registerAsset:function(){return 0;},getAssetByID:function(){return null;}};\' > node_modules/missing-asset-registry-path/index.js;                     fi;                 fi && \n                # ---- stub @react-native-masked-view/masked-view if missing ----\n                # Required by @react-navigation/elements but often not installed as a direct dependency.\n                if [ ! -d node_modules/@react-native-masked-view/masked-view ]; then                     mkdir -p node_modules/@react-native-masked-view/masked-view &&                     printf \'{"name":"@react-native-masked-view/masked-view","version":"0.1.11","main":"index.js"}\' > node_modules/@react-native-masked-view/masked-view/package.json &&                     printf \'const React=require("react");const {View}=require("react-native");function MaskedView(p){return React.createElement(View,p.style?{style:p.style}:{},p.children);}module.exports=MaskedView;module.exports.default=MaskedView;\' > node_modules/@react-native-masked-view/masked-view/index.js;                 fi && \n                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && \n                chmod +x gradlew && \n                # ---- inject fallback repositories via Gradle init script ----\n                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo \'gradle.beforeProject {project ->\' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.buildscript.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'}\' >> $GRADLE_USER_HOME/init.d/repos.gradle && \n                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----\n                sed -i \'s/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\\/.bin\\/react-native config")/\' settings.gradle 2>/dev/null || true && \n                # ---- disable Sentry source map upload (no credentials in CI) ----\n                export SENTRY_DISABLE_AUTO_UPLOAD=true &&                 echo "sentryUploadEnabled=false" >> gradle.properties 2>/dev/null || true && \n                # ---- enable ABI splits ----\n                if grep -q \'splits\' app/build.gradle 2>/dev/null; then                     sed -i \'s/enable false/enable true/\' app/build.gradle || true;                 else                     sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' app/build.gradle || true;                 fi && \n                # ---- enable R8 ----\n                sed -i \'s/enableProguardInReleaseBuilds = false/enableProguardInReleaseBuilds = true/\' app/build.gradle || true && \n                # ---- sign release with debug key ----\n                sed -i \'/buildTypes/,/}/s/release {/release {\n            signingConfig signingConfigs.debug/\' app/build.gradle || true && \n                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----\n                ./gradlew :app:dependencies --configuration releaseCompileClasspath --no-daemon > /dev/null 2>&1 || true && \n                # ---- build release apk ----\n                ./gradlew assembleRelease --no-daemon || exit 1 &&                     \n                APK_PATH="app/build/outputs/apk/release"\n\n                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then\n                    echo "ERROR: APK not generated"\n                    exit 1\n                fi\n\n                # ---- copy output ----\n                cp app/build/outputs/apk/release/*.apk /output/r8/\n\n                # ---- copy TPL metadata ----\n                [ -f ../package.json ] && cp ../package.json /output/r8/ || true\n                [ -f ../package-lock.json ] && cp ../package-lock.json /output/r8/ || true\n                [ -f ../yarn.lock ] && cp ../yarn.lock /output/r8/ || true\n                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/r8/ || true\n                [ -f app/build.gradle ] && cp app/build.gradle /output/r8/android-build.gradle || true\n                [ -f build.gradle ] && cp build.gradle /output/r8/root-build.gradle || true\n                [ -f build.gradle.kts ] && cp build.gradle.kts /output/r8/root-build.gradle.kts || true\n                [ -f settings.gradle ] && cp settings.gradle /output/r8/ || true\n                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/r8/ || true\n                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/r8/ || true\n                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                mkdir -p /output/r8/libs\n                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                    ']' timed out after 7200 seconds

> echo Attempting build for mthnglac-chuck-the-joker with Node 20 and jdk 11
Attempting build for mthnglac-chuck-the-joker with Node 20 and jdk 11

> docker run --rm -v /home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output -v /home/ubuntu/.npm:/root/.npm react-android:20-jdk11 bash -c 
                set -e

                cp -r /source/. /app &&                 cd /app && 
                # ---- install deps (yarn or npm) ----
                if [ -f yarn.lock ]; then
                    yarn install;
                else
                    npm install --ignore-scripts;
                fi && 
                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----
                if [ ! -f google-services.json ]; then                     python3 -c "import json; open('google-services.json','w').write(json.dumps({'project_info':{'project_number':'000000000000','project_id':'stub','storage_bucket':'stub.appspot.com'},'client':[{'client_info':{'mobilesdk_app_id':'1:000000000000:android:0000000000000000','android_client_info':{'package_name':'com.stub'}},'oauth_client':[],'api_key':[{'current_key':'stub'}],'services':{'appinvite_service':{'other_platform_oauth_client':[]}}}],'configuration_version':'1'}))" 2>/dev/null || true;                 fi && 
                # ---- detect expo ----
                if grep -q '"expo"' package.json && [ ! -d android ]; then
                    echo "Expo project detected";
                    CI=1 npx --yes expo prebuild --platform android
                fi && 
                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && 
                chmod +x gradlew && 
                # ---- inject fallback repositories via Gradle init script ----
                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo 'gradle.beforeProject {project ->' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.buildscript.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '}' >> $GRADLE_USER_HOME/init.d/repos.gradle && 
                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----
                sed -i 's/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\/.bin\/react-native config")/' settings.gradle 2>/dev/null || true && 
                # ---- clean gradle ----
                (./gradlew clean || true) && 
                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----
                ./gradlew :app:dependencies --configuration debugCompileClasspath --no-daemon > /dev/null 2>&1 || true && 
                # ---- enable ABI splits ----
                if grep -q 'splits' app/build.gradle 2>/dev/null; then                     sed -i 's/enable false/enable true/' app/build.gradle || true;                 else                     sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' app/build.gradle || true;                 fi && 
                # ---- build debug apk ----
                ./gradlew assembleDebug --no-daemon || exit 1 && 
                APK_PATH="app/build/outputs/apk/debug"

                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then
                    echo "ERROR: APK not generated"
                    exit 1
                fi
                # ---- copy output ----
                cp app/build/outputs/apk/debug/*.apk /output/

                # ---- copy TPL metadata ----
                [ -f ../package.json ] && cp ../package.json /output/ || true
                [ -f ../package-lock.json ] && cp ../package-lock.json /output/ || true
                [ -f ../yarn.lock ] && cp ../yarn.lock /output/ || true
                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/ || true
                [ -f app/build.gradle ] && cp app/build.gradle /output/android-build.gradle || true
                [ -f build.gradle ] && cp build.gradle /output/root-build.gradle || true
                [ -f build.gradle.kts ] && cp build.gradle.kts /output/root-build.gradle.kts || true
                [ -f settings.gradle ] && cp settings.gradle /output/ || true
                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/ || true
                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/ || true
                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true
                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true
                mkdir -p /output/libs
                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
                    
yarn install v1.22.22
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > @react-native-async-storage/async-storage@1.15.14" has incorrect peer dependency "react-native@^0.0.0-0 || ^0.60.6 || ^0.61.5 || ^0.62.2 || ^0.63.2 || ^0.64.0 || ^0.65.0 || ^0.66.0 || 1000.0.0".
warning " > @react-native-community/masked-view@0.1.10" has incorrect peer dependency "react@^16.0".
warning "react-native > react-native-codegen > jscodeshift@0.11.0" has unmet peer dependency "@babel/preset-env@^7.1.6".
warning " > reactotron-mst@3.1.3" has unmet peer dependency "reactotron-core-client@^2.5.0".
warning " > reactotron-mst@3.1.3" has incorrect peer dependency "mobx@^3.4.1 || ^4.1.0".
warning " > reactotron-mst@3.1.3" has incorrect peer dependency "mobx-state-tree@^1.4.0 || ^2.0.2 || ^3.0.0".
warning " > reactotron-react-native@5.0.0" has incorrect peer dependency "react@^15.2.1 || 16.0.0-alpha.6 || 16.0.0-alpha.12 || 16.0.0-beta.5 || ^16.0.0".
warning "reactotron-react-native > react-native-flipper@0.34.0" has incorrect peer dependency "react@^16.8.1".
warning "reactotron-react-native > react-native-flipper@0.34.0" has incorrect peer dependency "react-native@^0.62.0".
warning " > @storybook/addon-storyshots@6.1.10" has unmet peer dependency "@storybook/react@*".
warning "@storybook/addon-storyshots > jest-specific-snapshot@4.0.0" has incorrect peer dependency "jest@>= 26.0.0".
warning "@storybook/addon-storyshots > @storybook/addons > @storybook/api > @reach/router@1.3.4" has incorrect peer dependency "react@15.x || 16.x || 16.4.0-alpha.0911da3".
warning "@storybook/addon-storyshots > @storybook/addons > @storybook/api > @reach/router@1.3.4" has incorrect peer dependency "react-dom@15.x || 16.x || 16.4.0-alpha.0911da3".
warning "@storybook/addon-storyshots > @storybook/addons > @storybook/api > @reach/router > create-react-context@0.3.0" has incorrect peer dependency "react@^0.14.0 || ^15.0.0 || ^16.0.0".
warning "@storybook/react-native-server > @storybook/api@5.3.21" has unmet peer dependency "regenerator-runtime@*".
warning " > babel-loader@8.2.2" has unmet peer dependency "webpack@>=2".
warning " > detox@17.14.5" has incorrect peer dependency "jest-circus@26.0.x - 26.4.x || >=26.5.2".
warning " > detox@17.14.5" has unmet peer dependency "jest-environment-node@>=25.0.0".
warning " > detox@17.14.5" has unmet peer dependency "mocha@>=6.0.0".
warning "jest-expo > jest-watch-typeahead@0.6.4" has incorrect peer dependency "jest@^26.0.0 || ^27.0.0".
warning " > react-powerplug@1.0.0" has incorrect peer dependency "react@^0.14.0 || ^15.0.0-0 || ^16.0.0-0".
[4/4] Building fresh packages...
$ node ./bin/postInstall
patch-package 6.2.2
Applying patches...
No patch files found

✔︎ Solidarity checks valid
Done in 105.64s.
Downloading https://services.gradle.org/distributions/gradle-7.2-all.zip
..............10%...............20%...............30%...............40%...............50%...............60%...............70%...............80%...............90%...............100%

Welcome to Gradle 7.2!

Here are the highlights of this release:
 - Toolchain support for Scala
 - More cache hits when Java source files have platform-specific line endings
 - More resilient remote HTTP build cache behavior

For more details see https://docs.gradle.org/7.2/release-notes.html


> Configure project :expo-file-system
WARNING:: Configuration 'testApi' is obsolete and has been replaced with 'testImplementation'.
It will be removed in version 7.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.

> Configure project :expo

Using expo modules
  - [32mexpo-application[0m (4.0.2)
  - [32mexpo-constants[0m (13.0.2)
  - [32mexpo-error-recovery[0m (3.0.5)
  - [32mexpo-file-system[0m (13.1.4)
  - [32mexpo-font[0m (10.0.5)
  - [32mexpo-keep-awake[0m (10.0.2)
  - [32mexpo-linear-gradient[0m (11.0.3)
  - [32mexpo-localization[0m (12.0.1)
  - [32mexpo-modules-core[0m (0.6.5)


> Task :app:clean UP-TO-DATE
> Task :expo:clean UP-TO-DATE
> Task :expo-application:clean UP-TO-DATE
> Task :expo-constants:clean UP-TO-DATE
> Task :expo-error-recovery:clean UP-TO-DATE
> Task :expo-file-system:clean UP-TO-DATE
> Task :expo-font:clean UP-TO-DATE
> Task :expo-keep-awake:clean UP-TO-DATE
> Task :expo-linear-gradient:clean UP-TO-DATE
> Task :expo-localization:clean UP-TO-DATE
> Task :expo-modules-core:clean UP-TO-DATE
> Task :react-native-async-storage_async-storage:clean UP-TO-DATE
> Task :react-native-community_masked-view:clean UP-TO-DATE
> Task :react-native-gesture-handler:clean UP-TO-DATE
> Task :react-native-safe-area-context:clean UP-TO-DATE
> Task :react-native-screens:clean UP-TO-DATE
> Task :react-native-splash-screen:clean UP-TO-DATE

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 1m 37s
17 actionable tasks: 17 up-to-date

> Configure project :expo-file-system
WARNING:: Configuration 'testApi' is obsolete and has been replaced with 'testImplementation'.
It will be removed in version 7.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.

> Configure project :expo

Using expo modules
  - [32mexpo-application[0m (4.0.2)
  - [32mexpo-constants[0m (13.0.2)
  - [32mexpo-error-recovery[0m (3.0.5)
  - [32mexpo-file-system[0m (13.1.4)
  - [32mexpo-font[0m (10.0.5)
  - [32mexpo-keep-awake[0m (10.0.2)
  - [32mexpo-linear-gradient[0m (11.0.3)
  - [32mexpo-localization[0m (12.0.1)
  - [32mexpo-modules-core[0m (0.6.5)


> Task :app:generatePackageList
> Task :app:preBuild
> Task :app:preDebugBuild
> Task :expo:generateExpoModulesPackageList
> Task :expo:preBuild
> Task :expo:preDebugBuild
> Task :expo-application:preBuild UP-TO-DATE
> Task :expo-application:preDebugBuild UP-TO-DATE
> Task :expo-modules-core:preBuild UP-TO-DATE
> Task :expo-modules-core:preDebugBuild UP-TO-DATE
> Task :expo-modules-core:compileDebugAidl NO-SOURCE
> Task :expo-application:compileDebugAidl NO-SOURCE
> Task :expo-constants:preBuild UP-TO-DATE
> Task :expo-constants:preDebugBuild UP-TO-DATE
> Task :expo-constants:compileDebugAidl NO-SOURCE
> Task :expo-error-recovery:preBuild UP-TO-DATE
> Task :expo-error-recovery:preDebugBuild UP-TO-DATE
> Task :expo-error-recovery:compileDebugAidl NO-SOURCE
> Task :expo-file-system:preBuild UP-TO-DATE
> Task :expo-file-system:preDebugBuild UP-TO-DATE
> Task :expo-file-system:compileDebugAidl NO-SOURCE
> Task :expo-font:preBuild UP-TO-DATE
> Task :expo-font:preDebugBuild UP-TO-DATE
> Task :expo-font:compileDebugAidl NO-SOURCE
> Task :expo-keep-awake:preBuild UP-TO-DATE
> Task :expo-keep-awake:preDebugBuild UP-TO-DATE
> Task :expo-keep-awake:compileDebugAidl NO-SOURCE
> Task :expo-linear-gradient:preBuild UP-TO-DATE
> Task :expo-linear-gradient:preDebugBuild UP-TO-DATE
> Task :expo-linear-gradient:compileDebugAidl NO-SOURCE
> Task :expo-localization:preBuild UP-TO-DATE
> Task :expo-localization:preDebugBuild UP-TO-DATE
> Task :expo-localization:compileDebugAidl NO-SOURCE
> Task :expo:compileDebugAidl NO-SOURCE
> Task :react-native-async-storage_async-storage:preBuild UP-TO-DATE
> Task :react-native-async-storage_async-storage:preDebugBuild UP-TO-DATE
> Task :react-native-async-storage_async-storage:compileDebugAidl NO-SOURCE
> Task :react-native-community_masked-view:preBuild UP-TO-DATE
> Task :react-native-community_masked-view:preDebugBuild UP-TO-DATE
> Task :react-native-community_masked-view:compileDebugAidl NO-SOURCE
> Task :react-native-gesture-handler:preBuild UP-TO-DATE
> Task :react-native-gesture-handler:preDebugBuild UP-TO-DATE
> Task :react-native-gesture-handler:compileDebugAidl NO-SOURCE
> Task :react-native-safe-area-context:preBuild UP-TO-DATE
> Task :react-native-safe-area-context:preDebugBuild UP-TO-DATE
> Task :react-native-safe-area-context:compileDebugAidl NO-SOURCE
> Task :react-native-screens:preBuild UP-TO-DATE
> Task :react-native-screens:preDebugBuild UP-TO-DATE
> Task :react-native-screens:compileDebugAidl NO-SOURCE
> Task :react-native-splash-screen:preBuild UP-TO-DATE
> Task :react-native-splash-screen:preDebugBuild UP-TO-DATE
> Task :react-native-splash-screen:compileDebugAidl NO-SOURCE
> Task :app:compileDebugAidl NO-SOURCE
> Task :expo:packageDebugRenderscript NO-SOURCE
> Task :expo-application:packageDebugRenderscript NO-SOURCE
> Task :expo-constants:packageDebugRenderscript NO-SOURCE
> Task :expo-error-recovery:packageDebugRenderscript NO-SOURCE
> Task :expo-file-system:packageDebugRenderscript NO-SOURCE
> Task :expo-font:packageDebugRenderscript NO-SOURCE
> Task :expo-keep-awake:packageDebugRenderscript NO-SOURCE
> Task :expo-linear-gradient:packageDebugRenderscript NO-SOURCE
> Task :expo-localization:packageDebugRenderscript NO-SOURCE
> Task :expo-modules-core:packageDebugRenderscript NO-SOURCE
> Task :react-native-async-storage_async-storage:packageDebugRenderscript NO-SOURCE
> Task :react-native-community_masked-view:packageDebugRenderscript NO-SOURCE
> Task :react-native-gesture-handler:packageDebugRenderscript NO-SOURCE
> Task :react-native-safe-area-context:packageDebugRenderscript NO-SOURCE
> Task :react-native-screens:packageDebugRenderscript NO-SOURCE
> Task :react-native-splash-screen:packageDebugRenderscript NO-SOURCE
> Task :app:compileDebugRenderscript NO-SOURCE
> Task :app:generateDebugBuildConfig
> Task :expo:writeDebugAarMetadata
> Task :expo-application:writeDebugAarMetadata
> Task :expo-constants:writeDebugAarMetadata
> Task :expo-error-recovery:writeDebugAarMetadata
> Task :expo-file-system:writeDebugAarMetadata
> Task :expo-font:writeDebugAarMetadata
> Task :expo-keep-awake:writeDebugAarMetadata
> Task :expo-linear-gradient:writeDebugAarMetadata
> Task :expo-localization:writeDebugAarMetadata
> Task :expo-modules-core:writeDebugAarMetadata
> Task :react-native-async-storage_async-storage:writeDebugAarMetadata
> Task :react-native-community_masked-view:writeDebugAarMetadata
> Task :react-native-gesture-handler:writeDebugAarMetadata
> Task :react-native-safe-area-context:writeDebugAarMetadata
> Task :react-native-screens:writeDebugAarMetadata
> Task :app:bundleDebugJsAndAssets SKIPPED
> Task :react-native-splash-screen:writeDebugAarMetadata
> Task :app:mergeDebugShaders
> Task :app:compileDebugShaders NO-SOURCE
> Task :app:generateDebugAssets UP-TO-DATE
> Task :expo:mergeDebugShaders
> Task :expo:compileDebugShaders NO-SOURCE
> Task :expo:generateDebugAssets UP-TO-DATE
> Task :expo:packageDebugAssets
> Task :expo-application:mergeDebugShaders
> Task :expo-application:compileDebugShaders NO-SOURCE
> Task :expo-application:generateDebugAssets UP-TO-DATE
> Task :expo-application:packageDebugAssets
> Task :expo-constants:mergeDebugShaders
> Task :expo-constants:compileDebugShaders NO-SOURCE

> Task :expo-constants:createDebugExpoConfig
Execution optimizations have been disabled for task ':expo-constants:createDebugExpoConfig' to ensure correctness due to the following reasons:
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:compileDebugAidl' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:compileDebugRenderscript' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:compileDebugShaders' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:generateDebugBuildConfig' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:mergeDebugShaders' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.

> Task :expo-constants:copyDebugExpoConfig
> Task :expo-constants:generateDebugAssets UP-TO-DATE
> Task :expo-constants:packageDebugAssets
> Task :expo-error-recovery:mergeDebugShaders
> Task :expo-error-recovery:compileDebugShaders NO-SOURCE
> Task :expo-error-recovery:generateDebugAssets UP-TO-DATE
> Task :expo-error-recovery:packageDebugAssets
> Task :expo-file-system:mergeDebugShaders
> Task :expo-file-system:compileDebugShaders NO-SOURCE
> Task :expo-file-system:generateDebugAssets UP-TO-DATE
> Task :expo-file-system:packageDebugAssets
> Task :expo-font:mergeDebugShaders
> Task :expo-font:compileDebugShaders NO-SOURCE
> Task :expo-font:generateDebugAssets UP-TO-DATE
> Task :expo-font:packageDebugAssets
> Task :expo-keep-awake:mergeDebugShaders
> Task :expo-keep-awake:compileDebugShaders NO-SOURCE
> Task :expo-keep-awake:generateDebugAssets UP-TO-DATE
> Task :expo-keep-awake:packageDebugAssets
> Task :expo-linear-gradient:mergeDebugShaders
> Task :expo-linear-gradient:compileDebugShaders NO-SOURCE
> Task :expo-linear-gradient:generateDebugAssets UP-TO-DATE
> Task :expo-linear-gradient:packageDebugAssets
> Task :expo-localization:mergeDebugShaders
> Task :expo-localization:compileDebugShaders NO-SOURCE
> Task :expo-localization:generateDebugAssets UP-TO-DATE
> Task :expo-localization:packageDebugAssets
> Task :expo-modules-core:mergeDebugShaders
> Task :expo-modules-core:compileDebugShaders NO-SOURCE
> Task :expo-modules-core:generateDebugAssets UP-TO-DATE
> Task :expo-modules-core:packageDebugAssets
> Task :react-native-async-storage_async-storage:mergeDebugShaders
> Task :react-native-async-storage_async-storage:compileDebugShaders NO-SOURCE
> Task :react-native-async-storage_async-storage:generateDebugAssets UP-TO-DATE
> Task :react-native-async-storage_async-storage:packageDebugAssets
> Task :react-native-community_masked-view:mergeDebugShaders
> Task :react-native-community_masked-view:compileDebugShaders NO-SOURCE
> Task :react-native-community_masked-view:generateDebugAssets UP-TO-DATE
> Task :react-native-community_masked-view:packageDebugAssets
> Task :react-native-gesture-handler:mergeDebugShaders
> Task :react-native-gesture-handler:compileDebugShaders NO-SOURCE
> Task :react-native-gesture-handler:generateDebugAssets UP-TO-DATE
> Task :react-native-gesture-handler:packageDebugAssets
> Task :react-native-safe-area-context:mergeDebugShaders
> Task :react-native-safe-area-context:compileDebugShaders NO-SOURCE
> Task :react-native-safe-area-context:generateDebugAssets UP-TO-DATE
> Task :react-native-safe-area-context:packageDebugAssets
> Task :react-native-screens:mergeDebugShaders
> Task :react-native-screens:compileDebugShaders NO-SOURCE
> Task :react-native-screens:generateDebugAssets UP-TO-DATE
> Task :react-native-screens:packageDebugAssets
> Task :react-native-splash-screen:mergeDebugShaders
> Task :react-native-splash-screen:compileDebugShaders NO-SOURCE
> Task :react-native-splash-screen:generateDebugAssets UP-TO-DATE
> Task :react-native-splash-screen:packageDebugAssets
> Task :app:mergeDebugAssets
> Task :app:copyDebugBundledJs SKIPPED
> Task :app:generateDebugResValues
> Task :app:generateDebugResources
> Task :expo:compileDebugRenderscript NO-SOURCE
> Task :expo:generateDebugResValues
> Task :expo:generateDebugResources
> Task :expo:packageDebugResources
> Task :expo-application:compileDebugRenderscript NO-SOURCE
> Task :expo-application:generateDebugResValues
> Task :expo-application:generateDebugResources
> Task :expo-application:packageDebugResources
> Task :expo-constants:compileDebugRenderscript NO-SOURCE
> Task :expo-constants:generateDebugResValues
> Task :expo-constants:generateDebugResources
> Task :expo-constants:packageDebugResources
> Task :expo-error-recovery:compileDebugRenderscript NO-SOURCE
> Task :expo-error-recovery:generateDebugResValues
> Task :expo-error-recovery:generateDebugResources
> Task :expo-error-recovery:packageDebugResources
> Task :expo-file-system:compileDebugRenderscript NO-SOURCE
> Task :expo-file-system:generateDebugResValues
> Task :expo-file-system:generateDebugResources
> Task :expo-file-system:packageDebugResources
> Task :expo-font:compileDebugRenderscript NO-SOURCE
> Task :expo-font:generateDebugResValues
> Task :expo-font:generateDebugResources
> Task :expo-font:packageDebugResources
> Task :expo-keep-awake:compileDebugRenderscript NO-SOURCE
> Task :expo-keep-awake:generateDebugResValues
> Task :expo-keep-awake:generateDebugResources
> Task :expo-keep-awake:packageDebugResources
> Task :expo-linear-gradient:compileDebugRenderscript NO-SOURCE
> Task :expo-linear-gradient:generateDebugResValues
> Task :expo-linear-gradient:generateDebugResources
> Task :expo-linear-gradient:packageDebugResources
> Task :expo-localization:compileDebugRenderscript NO-SOURCE
> Task :expo-localization:generateDebugResValues
> Task :expo-localization:generateDebugResources
> Task :expo-localization:packageDebugResources
> Task :expo-modules-core:compileDebugRenderscript NO-SOURCE
> Task :expo-modules-core:generateDebugResValues
> Task :expo-modules-core:generateDebugResources
> Task :expo-modules-core:packageDebugResources
> Task :react-native-async-storage_async-storage:compileDebugRenderscript NO-SOURCE
> Task :react-native-async-storage_async-storage:generateDebugResValues
> Task :react-native-async-storage_async-storage:generateDebugResources
> Task :react-native-async-storage_async-storage:packageDebugResources
> Task :react-native-community_masked-view:compileDebugRenderscript NO-SOURCE
> Task :react-native-community_masked-view:generateDebugResValues
> Task :react-native-community_masked-view:generateDebugResources
> Task :react-native-community_masked-view:packageDebugResources
> Task :react-native-gesture-handler:compileDebugRenderscript NO-SOURCE
> Task :react-native-gesture-handler:generateDebugResValues
> Task :react-native-gesture-handler:generateDebugResources
> Task :react-native-gesture-handler:packageDebugResources
> Task :react-native-safe-area-context:compileDebugRenderscript NO-SOURCE
> Task :react-native-safe-area-context:generateDebugResValues
> Task :react-native-safe-area-context:generateDebugResources
> Task :react-native-safe-area-context:packageDebugResources
> Task :react-native-screens:compileDebugRenderscript NO-SOURCE
> Task :react-native-screens:generateDebugResValues
> Task :react-native-screens:generateDebugResources
> Task :react-native-screens:packageDebugResources
> Task :react-native-splash-screen:compileDebugRenderscript NO-SOURCE
> Task :react-native-splash-screen:generateDebugResValues
> Task :react-native-splash-screen:generateDebugResources
> Task :react-native-splash-screen:packageDebugResources
> Task :app:checkDebugAarMetadata
> Task :app:createDebugCompatibleScreenManifests
> Task :app:extractDeepLinksDebug
> Task :expo:extractDeepLinksDebug
> Task :expo-application:extractDeepLinksDebug
> Task :expo-constants:extractDeepLinksDebug
> Task :expo-error-recovery:extractDeepLinksDebug
> Task :expo-file-system:extractDeepLinksDebug
> Task :expo-font:extractDeepLinksDebug
> Task :expo-keep-awake:extractDeepLinksDebug
> Task :expo-constants:processDebugManifest
> Task :expo:processDebugManifest
> Task :expo-keep-awake:processDebugManifest
> Task :expo-linear-gradient:extractDeepLinksDebug
> Task :expo-application:processDebugManifest
> Task :expo-error-recovery:processDebugManifest
> Task :expo-font:processDebugManifest

> Task :expo-file-system:processDebugManifest
/app/node_modules/expo-file-system/android/src/main/AndroidManifest.xml:8:9-10:20 Warning:
	provider#expo.modules.filesystem.FileSystemFileProvider@android:authorities was tagged at AndroidManifest.xml:8 to replace other declarations but no other declaration present

> Task :expo-localization:extractDeepLinksDebug
> Task :expo-modules-core:extractDeepLinksDebug
> Task :react-native-async-storage_async-storage:extractDeepLinksDebug
> Task :expo-localization:processDebugManifest
> Task :expo-modules-core:processDebugManifest
> Task :react-native-community_masked-view:extractDeepLinksDebug
> Task :react-native-async-storage_async-storage:processDebugManifest
> Task :react-native-gesture-handler:extractDeepLinksDebug
> Task :expo-linear-gradient:processDebugManifest
> Task :react-native-community_masked-view:processDebugManifest
> Task :react-native-safe-area-context:extractDeepLinksDebug
> Task :react-native-gesture-handler:processDebugManifest
> Task :app:mergeDebugResources
> Task :react-native-screens:extractDeepLinksDebug
> Task :react-native-safe-area-context:processDebugManifest
> Task :react-native-splash-screen:extractDeepLinksDebug
> Task :react-native-screens:processDebugManifest
> Task :react-native-splash-screen:processDebugManifest
> Task :expo:compileDebugLibraryResources
> Task :expo-error-recovery:parseDebugLocalResources
> Task :expo-modules-core:parseDebugLocalResources
> Task :expo:parseDebugLocalResources
> Task :expo-constants:parseDebugLocalResources
> Task :expo-application:parseDebugLocalResources
> Task :expo-file-system:parseDebugLocalResources
> Task :expo-font:parseDebugLocalResources

> Task :app:processDebugMainManifest
/app/android/app/src/debug/AndroidManifest.xml:23:9-32:20 Warning:
	provider#expo.modules.filesystem.FileSystemFileProvider@android:authorities was tagged at AndroidManifest.xml:23 to replace other declarations but no other declaration present

> Task :app:processDebugManifest
> Task :expo-linear-gradient:parseDebugLocalResources
> Task :expo-keep-awake:parseDebugLocalResources
> Task :expo-localization:parseDebugLocalResources
> Task :expo-application:compileDebugLibraryResources
> Task :expo-constants:compileDebugLibraryResources
> Task :expo-error-recovery:compileDebugLibraryResources
> Task :expo-file-system:compileDebugLibraryResources
> Task :expo-font:compileDebugLibraryResources
> Task :expo-keep-awake:compileDebugLibraryResources
> Task :expo-linear-gradient:compileDebugLibraryResources
> Task :expo-localization:compileDebugLibraryResources
> Task :expo-modules-core:compileDebugLibraryResources
> Task :expo-modules-core:generateDebugRFile
> Task :react-native-async-storage_async-storage:compileDebugLibraryResources
> Task :react-native-community_masked-view:compileDebugLibraryResources
> Task :react-native-async-storage_async-storage:parseDebugLocalResources
> Task :react-native-community_masked-view:parseDebugLocalResources
> Task :react-native-async-storage_async-storage:generateDebugRFile
> Task :react-native-gesture-handler:compileDebugLibraryResources
> Task :react-native-gesture-handler:parseDebugLocalResources
> Task :react-native-safe-area-context:compileDebugLibraryResources
> Task :react-native-community_masked-view:generateDebugRFile
> Task :app:processDebugManifestForPackage
> Task :expo-application:generateDebugRFile
> Task :expo-constants:generateDebugRFile
> Task :expo-error-recovery:generateDebugRFile
> Task :expo-file-system:generateDebugRFile
> Task :expo-font:generateDebugRFile
> Task :expo-keep-awake:generateDebugRFile
> Task :expo-linear-gradient:generateDebugRFile
> Task :expo-localization:generateDebugRFile
> Task :react-native-safe-area-context:parseDebugLocalResources
> Task :react-native-gesture-handler:generateDebugRFile
> Task :react-native-screens:compileDebugLibraryResources
> Task :react-native-safe-area-context:generateDebugRFile
> Task :react-native-splash-screen:compileDebugLibraryResources
> Task :react-native-screens:parseDebugLocalResources
> Task :react-native-splash-screen:parseDebugLocalResources
> Task :react-native-screens:generateDebugRFile
> Task :expo:generateDebugBuildConfig
> Task :expo-application:generateDebugBuildConfig
> Task :expo-modules-core:generateDebugBuildConfig
> Task :react-native-splash-screen:generateDebugRFile
> Task :expo-modules-core:compileDebugKotlin
w: /app/node_modules/expo-modules-core/android/src/main/java/expo/modules/kotlin/records/RecordTypeConverter.kt: (38, 13): Name shadowed: value

> Task :expo-modules-core:javaPreCompileDebug
> Task :expo-application:javaPreCompileDebug
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :expo-modules-core:compileDebugJavaWithJavac

> Task :expo-constants:generateDebugBuildConfig
> Task :expo-constants:javaPreCompileDebug
> Task :expo-error-recovery:generateDebugBuildConfig
> Task :expo-error-recovery:javaPreCompileDebug
> Task :expo-file-system:generateDebugBuildConfig
> Task :expo-file-system:javaPreCompileDebug
> Task :expo-font:generateDebugBuildConfig
> Task :expo-font:javaPreCompileDebug
> Task :expo-keep-awake:generateDebugBuildConfig
> Task :expo-modules-core:bundleLibCompileToJarDebug
> Task :expo-linear-gradient:generateDebugBuildConfig
> Task :expo-keep-awake:javaPreCompileDebug
> Task :expo-linear-gradient:javaPreCompileDebug
> Task :expo-localization:generateDebugBuildConfig
> Task :expo-localization:javaPreCompileDebug
> Task :expo:javaPreCompileDebug
> Task :react-native-async-storage_async-storage:generateDebugBuildConfig
> Task :react-native-async-storage_async-storage:javaPreCompileDebug
> Task :react-native-community_masked-view:generateDebugBuildConfig

Note: /app/node_modules/@react-native-async-storage/async-storage/android/src/main/java/com/reactnativecommunity/asyncstorage/AsyncStorageModule.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /app/node_modules/@react-native-async-storage/async-storage/android/src/main/java/com/reactnativecommunity/asyncstorage/AsyncStoragePackage.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
> Task :react-native-async-storage_async-storage:compileDebugJavaWithJavac

> Task :react-native-community_masked-view:javaPreCompileDebug
> Task :react-native-gesture-handler:generateDebugBuildConfig
> Task :react-native-async-storage_async-storage:bundleLibCompileToJarDebug
> Task :react-native-community_masked-view:compileDebugJavaWithJavac
> Task :react-native-community_masked-view:bundleLibCompileToJarDebug
> Task :react-native-gesture-handler:javaPreCompileDebug
> Task :react-native-safe-area-context:generateDebugBuildConfig

> Task :react-native-gesture-handler:compileDebugJavaWithJavac
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :react-native-gesture-handler:bundleLibCompileToJarDebug
> Task :react-native-safe-area-context:javaPreCompileDebug
> Task :react-native-screens:generateDebugBuildConfig

> Task :expo-application:compileDebugKotlin
w: /app/node_modules/expo-application/android/src/main/java/expo/modules/application/ApplicationModule.kt: (129, 14): 'versionCode: Int' is deprecated. Deprecated in Java

> Task :expo-application:compileDebugJavaWithJavac
> Task :expo-application:bundleLibCompileToJarDebug

> Task :expo-constants:compileDebugKotlin
w: /app/node_modules/expo-constants/android/src/main/java/expo/modules/constants/ConstantsService.kt: (132, 17): 'versionCode: Int' is deprecated. Deprecated in Java

> Task :expo-constants:compileDebugJavaWithJavac
> Task :expo-constants:bundleLibCompileToJarDebug
> Task :expo-error-recovery:compileDebugKotlin
> Task :expo-error-recovery:compileDebugJavaWithJavac
> Task :expo-error-recovery:bundleLibCompileToJarDebug

> Task :expo-font:compileDebugKotlin
w: /app/node_modules/expo-font/android/src/main/java/expo/modules/font/FontLoaderModule.kt: (55, 38): Type mismatch: inferred type is String? but String was expected

> Task :expo:generateDebugRFile

> Task :expo-file-system:compileDebugKotlin
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (8, 19): 'AsyncTask<Params : Any!, Progress : Any!, Result : Any!>' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (419, 27): Type mismatch: inferred type is String? but String was expected
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (463, 29): Type mismatch: inferred type is String? but String was expected
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (552, 43): Parameter 'options' is never used
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (640, 46): Parameter 'options' is never used
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (764, 43): Unchecked cast: Any? to Map<String, Any>?
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (769, 36): Type mismatch: inferred type is String? but String was expected
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (786, 15): Unchecked cast: Any to Map<String, Any>
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (918, 49): Unchecked cast: Any? to Map<String, Any>?
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1019, 43): Unchecked cast: Any? to Map<String, Any>?
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1031, 9): 'execute(vararg FileSystemModule.DownloadResumableTaskParams?): AsyncTask<FileSystemModule.DownloadResumableTaskParams?, Void?, Void?>!' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1092, 47): 'AsyncTask<Params : Any!, Progress : Any!, Result : Any!>' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1092, 47): 'constructor AsyncTask<Params : Any!, Progress : Any!, Result : Any!>()' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1105, 21): Variable 'count' initializer is redundant
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1276, 35): Type mismatch: inferred type is String? but String was expected

> Task :expo-file-system:compileDebugJavaWithJavac
> Task :expo-file-system:bundleLibCompileToJarDebug
> Task :expo-font:compileDebugJavaWithJavac
> Task :expo-font:bundleLibCompileToJarDebug
> Task :expo-keep-awake:compileDebugKotlin
> Task :expo-keep-awake:compileDebugJavaWithJavac
> Task :expo-keep-awake:bundleLibCompileToJarDebug
> Task :expo-linear-gradient:compileDebugKotlin
> Task :expo-linear-gradient:compileDebugJavaWithJavac
> Task :expo-linear-gradient:bundleLibCompileToJarDebug
> Task :app:processDebugResources

> Task :expo-localization:compileDebugKotlin
w: /app/node_modules/expo-localization/android/src/main/java/expo/modules/localization/LocalizationModule.kt: (75, 35): 'locale: Locale!' is deprecated. Deprecated in Java

> Task :expo-localization:compileDebugJavaWithJavac
> Task :expo-localization:bundleLibCompileToJarDebug

Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
> Task :react-native-safe-area-context:compileDebugJavaWithJavac

> Task :react-native-safe-area-context:bundleLibCompileToJarDebug

> Task :react-native-screens:compileDebugKotlin
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/Screen.kt: (80, 26): 'constructor GuardedRunnable(ReactContext!)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt: (59, 28): 'setter for targetElevation: Float' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt: (142, 28): 'setter for targetElevation: Float' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.kt: (154, 56): 'getter for systemWindowInsetTop: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.kt: (222, 29): 'setColorFilter(Int, PorterDuff.Mode): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (56, 22): 'constructor GuardedRunnable(ReactContext!)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (84, 57): 'getter for systemUiVisibility: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (86, 53): 'SYSTEM_UI_FLAG_LIGHT_STATUS_BAR: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (88, 54): 'SYSTEM_UI_FLAG_LIGHT_STATUS_BAR: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (90, 27): 'setter for systemUiVisibility: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (106, 22): 'constructor GuardedRunnable(ReactContext!)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (115, 43): 'replaceSystemWindowInsets(Int, Int, Int, Int): WindowInsets' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (116, 47): 'getter for systemWindowInsetLeft: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (118, 47): 'getter for systemWindowInsetRight: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (119, 47): 'getter for systemWindowInsetBottom: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (138, 69): 'FLAG_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (139, 71): 'FLAG_FORCE_NOT_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (141, 69): 'FLAG_FORCE_NOT_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (142, 71): 'FLAG_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (7, 51): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (17, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (18, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (7, 40): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (7, 43): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (7, 43): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (17, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (13, 5): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (22, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (27, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (7, 44): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (7, 47): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (7, 52): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java

> Task :react-native-screens:javaPreCompileDebug
> Task :react-native-splash-screen:generateDebugBuildConfig
> Task :react-native-screens:compileDebugJavaWithJavac
> Task :react-native-splash-screen:javaPreCompileDebug
> Task :app:javaPreCompileDebug
> Task :react-native-screens:bundleLibCompileToJarDebug
> Task :react-native-splash-screen:compileDebugJavaWithJavac
> Task :app:mergeDebugNativeDebugMetadata NO-SOURCE
> Task :react-native-splash-screen:bundleLibCompileToJarDebug
> Task :app:processDebugJavaRes NO-SOURCE
> Task :expo:processDebugJavaRes NO-SOURCE
> Task :expo-application:processDebugJavaRes NO-SOURCE
> Task :app:compressDebugAssets
> Task :expo-constants:cleanupDebugExpoConfig
> Task :expo-constants:processDebugJavaRes NO-SOURCE
> Task :expo-application:bundleLibResDebug
> Task :expo-error-recovery:processDebugJavaRes NO-SOURCE
> Task :expo-file-system:processDebugJavaRes NO-SOURCE
> Task :expo-error-recovery:bundleLibResDebug
> Task :expo-constants:bundleLibResDebug
> Task :expo-file-system:bundleLibResDebug
> Task :expo:compileDebugKotlin
> Task :expo:compileDebugJavaWithJavac
> Task :expo:bundleLibCompileToJarDebug
> Task :expo-font:processDebugJavaRes NO-SOURCE
> Task :expo:bundleLibResDebug
> Task :expo-font:bundleLibResDebug
> Task :expo-keep-awake:processDebugJavaRes NO-SOURCE
> Task :expo-keep-awake:bundleLibResDebug
> Task :expo-linear-gradient:processDebugJavaRes NO-SOURCE
> Task :expo-localization:processDebugJavaRes NO-SOURCE
> Task :expo-linear-gradient:bundleLibResDebug
> Task :expo-modules-core:processDebugJavaRes NO-SOURCE
> Task :expo-localization:bundleLibResDebug
> Task :react-native-async-storage_async-storage:processDebugJavaRes NO-SOURCE
> Task :react-native-async-storage_async-storage:bundleLibResDebug NO-SOURCE
> Task :expo-modules-core:bundleLibResDebug
> Task :react-native-community_masked-view:processDebugJavaRes NO-SOURCE
> Task :app:compileDebugKotlin

> Task :app:compileDebugJavaWithJavac

> Task :app:compileDebugSources
> Task :react-native-community_masked-view:bundleLibResDebug NO-SOURCE
> Task :react-native-gesture-handler:processDebugJavaRes NO-SOURCE
> Task :react-native-gesture-handler:bundleLibResDebug NO-SOURCE
> Task :react-native-safe-area-context:processDebugJavaRes NO-SOURCE
> Task :react-native-safe-area-context:bundleLibResDebug NO-SOURCE
> Task :react-native-screens:processDebugJavaRes NO-SOURCE
> Task :react-native-screens:bundleLibResDebug
> Task :react-native-splash-screen:processDebugJavaRes NO-SOURCE
> Task :react-native-splash-screen:bundleLibResDebug NO-SOURCE
Note: /app/android/app/src/debug/java/com/chuckthejoker/ReactNativeFlipper.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
> Task :app:checkDebugDuplicateClasses
> Task :react-native-async-storage_async-storage:bundleLibRuntimeToJarDebug
> Task :react-native-community_masked-view:bundleLibRuntimeToJarDebug
> Task :expo-application:bundleLibRuntimeToJarDebug
> Task :expo-constants:bundleLibRuntimeToJarDebug
> Task :expo-error-recovery:bundleLibRuntimeToJarDebug
> Task :expo-file-system:bundleLibRuntimeToJarDebug
> Task :expo-keep-awake:bundleLibRuntimeToJarDebug
> Task :expo-font:bundleLibRuntimeToJarDebug
> Task :expo-linear-gradient:bundleLibRuntimeToJarDebug
> Task :expo-localization:bundleLibRuntimeToJarDebug
> Task :expo:bundleLibRuntimeToJarDebug
> Task :expo-modules-core:bundleLibRuntimeToJarDebug
> Task :react-native-gesture-handler:bundleLibRuntimeToJarDebug
> Task :react-native-safe-area-context:bundleLibRuntimeToJarDebug
> Task :react-native-screens:bundleLibRuntimeToJarDebug
> Task :react-native-splash-screen:bundleLibRuntimeToJarDebug
> Task :app:mergeDebugJavaResource
> Task :app:desugarDebugFileDependencies
> Task :app:dexBuilderDebug
> Task :app:mergeExtDexDebug
> Task :app:mergeDebugJniLibFolders
> Task :expo:mergeDebugJniLibFolders
> Task :expo:mergeDebugNativeLibs NO-SOURCE
> Task :expo:stripDebugDebugSymbols NO-SOURCE
> Task :expo-application:mergeDebugJniLibFolders
> Task :expo-application:mergeDebugNativeLibs NO-SOURCE
> Task :expo-application:stripDebugDebugSymbols NO-SOURCE
> Task :expo-application:copyDebugJniLibsProjectOnly
> Task :expo:copyDebugJniLibsProjectOnly
> Task :expo-constants:mergeDebugJniLibFolders
> Task :expo-constants:mergeDebugNativeLibs NO-SOURCE
> Task :expo-constants:stripDebugDebugSymbols NO-SOURCE
> Task :expo-constants:copyDebugJniLibsProjectOnly
> Task :expo-error-recovery:mergeDebugJniLibFolders
> Task :expo-error-recovery:mergeDebugNativeLibs NO-SOURCE
> Task :expo-error-recovery:stripDebugDebugSymbols NO-SOURCE
> Task :expo-error-recovery:copyDebugJniLibsProjectOnly
> Task :expo-file-system:mergeDebugJniLibFolders
> Task :expo-file-system:mergeDebugNativeLibs NO-SOURCE
> Task :expo-file-system:stripDebugDebugSymbols NO-SOURCE
> Task :expo-file-system:copyDebugJniLibsProjectOnly
> Task :expo-font:mergeDebugJniLibFolders
> Task :expo-font:mergeDebugNativeLibs NO-SOURCE
> Task :expo-font:stripDebugDebugSymbols NO-SOURCE
> Task :expo-font:copyDebugJniLibsProjectOnly
> Task :expo-keep-awake:mergeDebugJniLibFolders
> Task :expo-keep-awake:mergeDebugNativeLibs NO-SOURCE
> Task :expo-keep-awake:stripDebugDebugSymbols NO-SOURCE
> Task :expo-keep-awake:copyDebugJniLibsProjectOnly
> Task :expo-linear-gradient:mergeDebugJniLibFolders
> Task :expo-linear-gradient:mergeDebugNativeLibs NO-SOURCE
> Task :expo-linear-gradient:stripDebugDebugSymbols NO-SOURCE
> Task :expo-linear-gradient:copyDebugJniLibsProjectOnly
> Task :expo-localization:mergeDebugJniLibFolders
> Task :expo-localization:mergeDebugNativeLibs NO-SOURCE
> Task :expo-localization:stripDebugDebugSymbols NO-SOURCE
> Task :expo-localization:copyDebugJniLibsProjectOnly
> Task :expo-modules-core:mergeDebugJniLibFolders
> Task :expo-modules-core:mergeDebugNativeLibs NO-SOURCE
> Task :expo-modules-core:stripDebugDebugSymbols NO-SOURCE
> Task :expo-modules-core:copyDebugJniLibsProjectOnly
> Task :react-native-async-storage_async-storage:mergeDebugJniLibFolders
> Task :react-native-async-storage_async-storage:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-async-storage_async-storage:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-async-storage_async-storage:copyDebugJniLibsProjectOnly
> Task :react-native-community_masked-view:mergeDebugJniLibFolders
> Task :react-native-community_masked-view:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-community_masked-view:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-community_masked-view:copyDebugJniLibsProjectOnly
> Task :react-native-gesture-handler:mergeDebugJniLibFolders
> Task :react-native-gesture-handler:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-gesture-handler:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-gesture-handler:copyDebugJniLibsProjectOnly
> Task :app:mergeLibDexDebug
> Task :react-native-safe-area-context:mergeDebugJniLibFolders
> Task :react-native-safe-area-context:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-safe-area-context:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-safe-area-context:copyDebugJniLibsProjectOnly
> Task :react-native-screens:mergeDebugJniLibFolders
> Task :react-native-screens:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-screens:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-screens:copyDebugJniLibsProjectOnly
> Task :react-native-splash-screen:mergeDebugJniLibFolders
> Task :app:mergeProjectDexDebug
> Task :react-native-splash-screen:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-splash-screen:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-splash-screen:copyDebugJniLibsProjectOnly
> Task :app:validateSigningDebug
> Task :app:writeDebugAppMetadata
> Task :app:writeDebugSigningConfigVersions
> Task :expo:copyDebugJniLibsProjectAndLocalJars
> Task :expo:extractDebugAnnotations
> Task :expo:mergeDebugGeneratedProguardFiles
> Task :expo:mergeDebugConsumerProguardFiles
> Task :expo:prepareLintJarForPublish
> Task :expo:mergeDebugJavaResource
> Task :expo:mergeDebugResources
> Task :expo:syncDebugLibJars
> Task :expo:bundleDebugAar
> Task :expo:compileDebugSources
> Task :expo:assembleDebug
> Task :expo-application:copyDebugJniLibsProjectAndLocalJars
> Task :expo-application:extractDebugAnnotations
> Task :expo-application:mergeDebugGeneratedProguardFiles
> Task :expo-application:mergeDebugConsumerProguardFiles
> Task :expo-application:prepareLintJarForPublish
> Task :expo-application:compileDebugSources
> Task :expo-constants:copyDebugJniLibsProjectAndLocalJars
> Task :expo-application:mergeDebugJavaResource
> Task :expo-constants:extractDebugAnnotations
> Task :expo-application:syncDebugLibJars
> Task :expo-application:bundleDebugAar
> Task :expo-application:assembleDebug
> Task :expo-constants:mergeDebugGeneratedProguardFiles
> Task :expo-constants:mergeDebugConsumerProguardFiles
> Task :expo-constants:prepareLintJarForPublish
> Task :expo-constants:compileDebugSources
> Task :expo-constants:mergeDebugJavaResource
> Task :expo-error-recovery:copyDebugJniLibsProjectAndLocalJars
> Task :expo-constants:syncDebugLibJars
> Task :expo-constants:bundleDebugAar
> Task :expo-constants:assembleDebug
> Task :expo-error-recovery:extractDebugAnnotations
> Task :expo-error-recovery:mergeDebugGeneratedProguardFiles
> Task :expo-error-recovery:mergeDebugConsumerProguardFiles
> Task :expo-error-recovery:prepareLintJarForPublish
> Task :expo-error-recovery:compileDebugSources
> Task :expo-file-system:copyDebugJniLibsProjectAndLocalJars
> Task :expo-error-recovery:mergeDebugJavaResource
> Task :expo-error-recovery:syncDebugLibJars
> Task :expo-error-recovery:bundleDebugAar
> Task :expo-error-recovery:assembleDebug
> Task :expo-file-system:extractDebugAnnotations
> Task :expo-file-system:mergeDebugGeneratedProguardFiles
> Task :expo-file-system:mergeDebugConsumerProguardFiles
> Task :expo-file-system:prepareLintJarForPublish
> Task :expo-file-system:compileDebugSources
> Task :expo-font:copyDebugJniLibsProjectAndLocalJars
> Task :expo-file-system:mergeDebugJavaResource
> Task :expo-font:extractDebugAnnotations
> Task :expo-file-system:syncDebugLibJars
> Task :expo-file-system:bundleDebugAar
> Task :expo-file-system:assembleDebug
> Task :expo-font:mergeDebugGeneratedProguardFiles
> Task :expo-font:mergeDebugConsumerProguardFiles
> Task :expo-font:prepareLintJarForPublish
> Task :expo-font:compileDebugSources
> Task :expo-keep-awake:copyDebugJniLibsProjectAndLocalJars
> Task :expo-font:mergeDebugJavaResource
> Task :expo-keep-awake:extractDebugAnnotations
> Task :expo-font:syncDebugLibJars
> Task :expo-font:bundleDebugAar
> Task :expo-font:assembleDebug
> Task :expo-keep-awake:mergeDebugGeneratedProguardFiles
> Task :expo-keep-awake:mergeDebugConsumerProguardFiles
> Task :expo-keep-awake:prepareLintJarForPublish
> Task :expo-keep-awake:compileDebugSources
> Task :expo-linear-gradient:copyDebugJniLibsProjectAndLocalJars
> Task :expo-keep-awake:mergeDebugJavaResource
> Task :expo-linear-gradient:extractDebugAnnotations
> Task :expo-keep-awake:syncDebugLibJars
> Task :expo-keep-awake:bundleDebugAar
> Task :expo-keep-awake:assembleDebug
> Task :expo-linear-gradient:mergeDebugGeneratedProguardFiles
> Task :expo-linear-gradient:mergeDebugConsumerProguardFiles
> Task :expo-linear-gradient:prepareLintJarForPublish
> Task :expo-linear-gradient:compileDebugSources
> Task :expo-linear-gradient:mergeDebugJavaResource
> Task :expo-localization:copyDebugJniLibsProjectAndLocalJars
> Task :expo-linear-gradient:syncDebugLibJars
> Task :expo-linear-gradient:bundleDebugAar
> Task :expo-linear-gradient:assembleDebug
> Task :expo-localization:extractDebugAnnotations
> Task :expo-localization:mergeDebugGeneratedProguardFiles
> Task :expo-localization:mergeDebugConsumerProguardFiles
> Task :expo-localization:prepareLintJarForPublish
> Task :expo-localization:compileDebugSources
> Task :expo-modules-core:copyDebugJniLibsProjectAndLocalJars
> Task :expo-localization:mergeDebugJavaResource
> Task :expo-modules-core:extractDebugAnnotations
> Task :expo-localization:syncDebugLibJars
> Task :expo-localization:bundleDebugAar
> Task :expo-localization:assembleDebug
> Task :expo-modules-core:mergeDebugGeneratedProguardFiles
> Task :expo-modules-core:mergeDebugConsumerProguardFiles
> Task :expo-modules-core:prepareLintJarForPublish
> Task :expo-modules-core:compileDebugSources
> Task :react-native-async-storage_async-storage:copyDebugJniLibsProjectAndLocalJars
> Task :expo-modules-core:mergeDebugJavaResource
> Task :react-native-async-storage_async-storage:extractDebugAnnotations
> Task :expo-modules-core:syncDebugLibJars
> Task :expo-modules-core:bundleDebugAar
> Task :expo-modules-core:assembleDebug
> Task :react-native-async-storage_async-storage:mergeDebugGeneratedProguardFiles
> Task :react-native-async-storage_async-storage:mergeDebugConsumerProguardFiles
> Task :react-native-async-storage_async-storage:prepareLintJarForPublish
> Task :react-native-async-storage_async-storage:compileDebugSources
> Task :react-native-community_masked-view:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-async-storage_async-storage:mergeDebugJavaResource
> Task :react-native-community_masked-view:extractDebugAnnotations
> Task :react-native-async-storage_async-storage:syncDebugLibJars
> Task :react-native-async-storage_async-storage:bundleDebugAar
> Task :react-native-async-storage_async-storage:assembleDebug
> Task :react-native-community_masked-view:mergeDebugGeneratedProguardFiles
> Task :react-native-community_masked-view:mergeDebugConsumerProguardFiles
> Task :react-native-community_masked-view:prepareLintJarForPublish
> Task :react-native-community_masked-view:compileDebugSources
> Task :react-native-community_masked-view:mergeDebugJavaResource
> Task :react-native-gesture-handler:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-community_masked-view:syncDebugLibJars
> Task :react-native-community_masked-view:bundleDebugAar
> Task :react-native-community_masked-view:assembleDebug
> Task :react-native-gesture-handler:extractDebugAnnotations
> Task :react-native-gesture-handler:mergeDebugGeneratedProguardFiles
> Task :react-native-gesture-handler:mergeDebugConsumerProguardFiles
> Task :react-native-gesture-handler:prepareLintJarForPublish
> Task :react-native-gesture-handler:compileDebugSources
> Task :react-native-safe-area-context:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-gesture-handler:mergeDebugJavaResource
> Task :react-native-safe-area-context:extractDebugAnnotations
> Task :react-native-gesture-handler:syncDebugLibJars
> Task :react-native-gesture-handler:bundleDebugAar
> Task :react-native-gesture-handler:assembleDebug
> Task :react-native-safe-area-context:mergeDebugGeneratedProguardFiles
> Task :react-native-safe-area-context:mergeDebugConsumerProguardFiles
> Task :react-native-safe-area-context:prepareLintJarForPublish
> Task :react-native-safe-area-context:compileDebugSources
> Task :react-native-screens:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-safe-area-context:mergeDebugJavaResource
> Task :react-native-screens:extractDebugAnnotations
> Task :react-native-safe-area-context:syncDebugLibJars
> Task :react-native-safe-area-context:bundleDebugAar
> Task :react-native-safe-area-context:assembleDebug
> Task :react-native-screens:mergeDebugGeneratedProguardFiles
> Task :react-native-screens:mergeDebugConsumerProguardFiles
> Task :react-native-screens:prepareLintJarForPublish
> Task :react-native-screens:compileDebugSources
> Task :react-native-splash-screen:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-screens:mergeDebugJavaResource
> Task :react-native-splash-screen:extractDebugAnnotations
> Task :react-native-screens:syncDebugLibJars
> Task :react-native-screens:bundleDebugAar
> Task :react-native-screens:assembleDebug
> Task :react-native-splash-screen:mergeDebugGeneratedProguardFiles
> Task :react-native-splash-screen:mergeDebugConsumerProguardFiles
> Task :react-native-splash-screen:prepareLintJarForPublish
> Task :react-native-splash-screen:compileDebugSources
> Task :react-native-splash-screen:mergeDebugJavaResource
> Task :app:mergeDebugNativeLibs

> Task :app:stripDebugDebugSymbols
Unable to strip the following libraries, packaging them as they are: libbetter.so, libc++_shared.so, libevent-2.1.so, libevent_core-2.1.so, libevent_extra-2.1.so, libfabricjni.so, libfb.so, libfbjni.so, libflipper.so, libfolly_futures.so, libfolly_json.so, libgifimage.so, libglog.so, libglog_init.so, libhermes-executor-common-debug.so, libhermes-executor-debug.so, libhermes-inspector.so, libhermes.so, libimagepipeline.so, libjsi.so, libjsijniprofiler.so, libjsinspector.so, liblogger.so, libmapbufferjni.so, libnative-filters.so, libnative-imagetranscoder.so, libreact_codegen_rncore.so, libreact_debug.so, libreact_nativemodule_core.so, libreact_render_animations.so, libreact_render_attributedstring.so, libreact_render_componentregistry.so, libreact_render_core.so, libreact_render_debug.so, libreact_render_graphics.so, libreact_render_imagemanager.so, libreact_render_leakchecker.so, libreact_render_mapbuffer.so, libreact_render_mounting.so, libreact_render_runtimescheduler.so, libreact_render_scheduler.so, libreact_render_telemetry.so, libreact_render_templateprocessor.so, libreact_render_textlayoutmanager.so, libreact_render_uimanager.so, libreact_utils.so, libreactconfig.so, libreactnativeblob.so, libreactnativejni.so, libreactnativeutilsjni.so, libreactperfloggerjni.so, librrc_image.so, librrc_modal.so, librrc_progressbar.so, librrc_root.so, librrc_scrollview.so, librrc_slider.so, librrc_switch.so, librrc_text.so, librrc_textinput.so, librrc_unimplementedview.so, librrc_view.so, libstatic-webp.so, libturbomodulejsijni.so, libyoga.so.

> Task :react-native-splash-screen:syncDebugLibJars
> Task :react-native-splash-screen:bundleDebugAar
> Task :react-native-splash-screen:assembleDebug
> Task :app:packageDebug
> Task :app:assembleDebug

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings

Execution optimizations have been disabled for 1 invalid unit(s) of work during this build to ensure correctness.
Please consult deprecation warnings for more details.

BUILD SUCCESSFUL in 3m 48s
458 actionable tasks: 458 executed

> docker run --rm -v /home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output -v /home/ubuntu/.npm:/root/.npm react-android:20-jdk11 bash -c 
                set -e

                cp -r /source/. /app &&                 cd /app && 
                # ---- install deps (yarn or npm) ----
                if [ -f yarn.lock ]; then
                    yarn install;
                else
                    npm install --ignore-scripts;
                fi && 
                # ---- stub missing parent package.json (monorepo metro configs) ----
                [ ! -f ../package.json ] && cp package.json ../package.json 2>/dev/null || true && 
                # ---- patch toReversed (Node <20 compat) ----
                find node_modules -name "loadConfig.js" -path "*/metro-config/*" -exec sed -i 's/\.toReversed()/.slice().reverse()/g' {} \; 2>/dev/null || true && 
                # ---- patch missing expo/AppEntry ----
                if grep -q '"main".*expo/AppEntry' package.json 2>/dev/null &&                    [ ! -f node_modules/expo/AppEntry.js ] && [ ! -f node_modules/expo/AppEntry.ts ]; then                     node -e "const fs=require('fs'); const p=JSON.parse(fs.readFileSync('package.json','utf8')); if(fs.existsSync('index.js')){p.main='index.js'; fs.writeFileSync('package.json',JSON.stringify(p,null,2));}" 2>/dev/null || true;                 fi && 
                # ---- patch broken metro config (ESM-only, null-returning, or monorepo-only) ----
                # NOTE: do NOT replace configs that merely use expo/metro-config — those carry
                # Expo-specific resolver paths (watchFolders, extraNodeModules) needed for
                # packages like @react-native-masked-view/masked-view to resolve.
                if grep -q 'react-native-monorepo-config' metro.config.js 2>/dev/null ||                    ! node -e "const c=require('./metro.config.js'); if(!c||typeof c!=='object') process.exit(1);" 2>/dev/null; then                     if [ -d node_modules/@react-native/metro-config ]; then                         printf 'const {getDefaultConfig, mergeConfig} = require("@react-native/metro-config");
module.exports = mergeConfig(getDefaultConfig(__dirname), {});
' > metro.config.js;                     else                         printf 'const {getDefaultConfig} = require("metro-config");
module.exports = getDefaultConfig(__dirname);
' > metro.config.js;                     fi;                 fi && 
                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----
                if [ ! -f google-services.json ]; then                     python3 -c "import json; open('google-services.json','w').write(json.dumps({'project_info':{'project_number':'000000000000','project_id':'stub','storage_bucket':'stub.appspot.com'},'client':[{'client_info':{'mobilesdk_app_id':'1:000000000000:android:0000000000000000','android_client_info':{'package_name':'com.stub'}},'oauth_client':[],'api_key':[{'current_key':'stub'}],'services':{'appinvite_service':{'other_platform_oauth_client':[]}}}],'configuration_version':'1'}))" 2>/dev/null || true;                 fi && 
                # ---- detect expo ----
                if grep -q '"expo"' package.json && [ ! -d android ]; then
                    echo "Expo project detected";
                    CI=1 npx --yes expo prebuild --platform android
                fi && 
                # ---- fix expo/metro-config: serializer + Flow transformIgnorePatterns ----
                # Runs AFTER prebuild because prebuild generates metro.config.js for managed-workflow
                # projects — patching before prebuild would be overwritten by the generated file.
                # Fix 1: remove customSerializer that returns JS string instead of JSON
                #   ("var __BUND..." → "Serializer did not return expected format").
                # Fix 2: add transformIgnorePatterns so expo/src/Expo.ts goes through Babel
                #   (default pattern excludes all node_modules → raw Flow types → SyntaxError).
                if [ -f metro.config.js ] && [ -d node_modules/expo ] &&                    ( grep -q 'expo/metro-config\|@expo/metro-config' metro.config.js 2>/dev/null ||                      ! grep -q 'transformIgnorePatterns' metro.config.js 2>/dev/null ); then                     cp metro.config.js metro.config.orig.js &&                     printf 'const c=require("./metro.config.orig.js");const r=Object.assign({},c);if(r.serializer){r.serializer=Object.assign({},r.serializer);delete r.serializer.customSerializer;}r.transformer=Object.assign({},r.transformer||{});if(!r.transformer.transformIgnorePatterns){r.transformer.transformIgnorePatterns=["node_modules/(?!(react-native|@react-native|expo|@expo|@unimodules|react-clone-referenced-element|@react-navigation|native-base)/)"];}module.exports=r;\n' > metro.config.js;                 fi && 
                # ---- stub missing metro watchFolders paths ----
                mkdir -p /src 2>/dev/null || true && 
                # ---- fix babel configs that use react-native-builder-bob ----
                # builder-bob is a library-dev tool; its getConfig() throws "Couldn't determine the source
                # directory" when built outside the library's own workspace. Replace with a standard preset.
                if grep -ql 'react-native-builder-bob' babel.config.js babel.config.json .babelrc .babelrc.js 2>/dev/null; then                     if [ -d node_modules/babel-preset-expo ]; then                         printf 'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};
' > babel.config.js;                     elif [ -d node_modules/@react-native/babel-preset ]; then                         printf 'module.exports={presets:["module:@react-native/babel-preset"]};' > babel.config.js;                     else                         printf 'module.exports={presets:["module:metro-react-native-babel-preset"]};' > babel.config.js;                     fi;                 fi && 
                # ---- ensure TypeScript babel support (fixes 'interface' SyntaxError in metro bundling) ----
                if [ -d node_modules/babel-preset-expo ]; then                     grep -ql "expo\|typescript" babel.config.js .babelrc .babelrc.js babel.config.json 2>/dev/null ||                     printf 'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};
' > babel.config.js;                 fi && 
                # ---- stub missing-asset-registry-path (Metro virtual module not resolved in release) ----
                # Metro normally aliases this to @react-native/assets-registry/registry at bundle time.
                # When that alias is missing, any PNG asset in node_modules triggers "Unable to resolve module".
                if [ ! -d node_modules/missing-asset-registry-path ]; then                     mkdir -p node_modules/missing-asset-registry-path &&                     if [ -f node_modules/@react-native/assets-registry/registry.js ]; then                         printf 'module.exports=require("@react-native/assets-registry/registry");' > node_modules/missing-asset-registry-path/index.js;                     else                         printf 'module.exports={registerAsset:function(){return 0;},getAssetByID:function(){return null;}};' > node_modules/missing-asset-registry-path/index.js;                     fi;                 fi && 
                # ---- stub @react-native-masked-view/masked-view if missing ----
                # Required by @react-navigation/elements but often not installed as a direct dependency.
                if [ ! -d node_modules/@react-native-masked-view/masked-view ]; then                     mkdir -p node_modules/@react-native-masked-view/masked-view &&                     printf '{"name":"@react-native-masked-view/masked-view","version":"0.1.11","main":"index.js"}' > node_modules/@react-native-masked-view/masked-view/package.json &&                     printf 'const React=require("react");const {View}=require("react-native");function MaskedView(p){return React.createElement(View,p.style?{style:p.style}:{},p.children);}module.exports=MaskedView;module.exports.default=MaskedView;' > node_modules/@react-native-masked-view/masked-view/index.js;                 fi && 
                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && 
                chmod +x gradlew && 
                # ---- inject fallback repositories via Gradle init script ----
                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo 'gradle.beforeProject {project ->' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.buildscript.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '}' >> $GRADLE_USER_HOME/init.d/repos.gradle && 
                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----
                sed -i 's/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\/.bin\/react-native config")/' settings.gradle 2>/dev/null || true && 
                # ---- disable Sentry source map upload (no credentials in CI) ----
                export SENTRY_DISABLE_AUTO_UPLOAD=true &&                 echo "sentryUploadEnabled=false" >> gradle.properties 2>/dev/null || true && 
                # ---- enable ABI splits ----
                if grep -q 'splits' app/build.gradle 2>/dev/null; then                     sed -i 's/enable false/enable true/' app/build.gradle || true;                 else                     sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' app/build.gradle || true;                 fi && 
                # ---- enable R8 ----
                sed -i 's/enableProguardInReleaseBuilds = false/enableProguardInReleaseBuilds = true/' app/build.gradle || true && 
                # ---- sign release with debug key ----
                sed -i '/buildTypes/,/}/s/release {/release {
            signingConfig signingConfigs.debug/' app/build.gradle || true && 
                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----
                ./gradlew :app:dependencies --configuration releaseCompileClasspath --no-daemon > /dev/null 2>&1 || true && 
                # ---- build release apk ----
                ./gradlew assembleRelease --no-daemon || exit 1 &&                     
                APK_PATH="app/build/outputs/apk/release"

                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then
                    echo "ERROR: APK not generated"
                    exit 1
                fi

                # ---- copy output ----
                cp app/build/outputs/apk/release/*.apk /output/r8/

                # ---- copy TPL metadata ----
                [ -f ../package.json ] && cp ../package.json /output/r8/ || true
                [ -f ../package-lock.json ] && cp ../package-lock.json /output/r8/ || true
                [ -f ../yarn.lock ] && cp ../yarn.lock /output/r8/ || true
                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/r8/ || true
                [ -f app/build.gradle ] && cp app/build.gradle /output/r8/android-build.gradle || true
                [ -f build.gradle ] && cp build.gradle /output/r8/root-build.gradle || true
                [ -f build.gradle.kts ] && cp build.gradle.kts /output/r8/root-build.gradle.kts || true
                [ -f settings.gradle ] && cp settings.gradle /output/r8/ || true
                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/r8/ || true
                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/r8/ || true
                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true
                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true
                mkdir -p /output/r8/libs
                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
                    

ERROR: Command timed out

> echo Build failed with Node 20 and jdk version 11 with the following error: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'react-android:20-jdk11', 'bash', '-c', '\n                set -e\n\n                cp -r /source/. /app &&                 cd /app && \n                # ---- install deps (yarn or npm) ----\n                if [ -f yarn.lock ]; then\n                    yarn install;\n                else\n                    npm install --ignore-scripts;\n                fi && \n                # ---- stub missing parent package.json (monorepo metro configs) ----\n                [ ! -f ../package.json ] && cp package.json ../package.json 2>/dev/null || true && \n                # ---- patch toReversed (Node <20 compat) ----\n                find node_modules -name "loadConfig.js" -path "*/metro-config/*" -exec sed -i \'s/\\.toReversed()/.slice().reverse()/g\' {} \\; 2>/dev/null || true && \n                # ---- patch missing expo/AppEntry ----\n                if grep -q \'"main".*expo/AppEntry\' package.json 2>/dev/null &&                    [ ! -f node_modules/expo/AppEntry.js ] && [ ! -f node_modules/expo/AppEntry.ts ]; then                     node -e "const fs=require(\'fs\'); const p=JSON.parse(fs.readFileSync(\'package.json\',\'utf8\')); if(fs.existsSync(\'index.js\')){p.main=\'index.js\'; fs.writeFileSync(\'package.json\',JSON.stringify(p,null,2));}" 2>/dev/null || true;                 fi && \n                # ---- patch broken metro config (ESM-only, null-returning, or monorepo-only) ----\n                # NOTE: do NOT replace configs that merely use expo/metro-config — those carry\n                # Expo-specific resolver paths (watchFolders, extraNodeModules) needed for\n                # packages like @react-native-masked-view/masked-view to resolve.\n                if grep -q \'react-native-monorepo-config\' metro.config.js 2>/dev/null ||                    ! node -e "const c=require(\'./metro.config.js\'); if(!c||typeof c!==\'object\') process.exit(1);" 2>/dev/null; then                     if [ -d node_modules/@react-native/metro-config ]; then                         printf \'const {getDefaultConfig, mergeConfig} = require("@react-native/metro-config");\nmodule.exports = mergeConfig(getDefaultConfig(__dirname), {});\n\' > metro.config.js;                     else                         printf \'const {getDefaultConfig} = require("metro-config");\nmodule.exports = getDefaultConfig(__dirname);\n\' > metro.config.js;                     fi;                 fi && \n                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----\n                if [ ! -f google-services.json ]; then                     python3 -c "import json; open(\'google-services.json\',\'w\').write(json.dumps({\'project_info\':{\'project_number\':\'000000000000\',\'project_id\':\'stub\',\'storage_bucket\':\'stub.appspot.com\'},\'client\':[{\'client_info\':{\'mobilesdk_app_id\':\'1:000000000000:android:0000000000000000\',\'android_client_info\':{\'package_name\':\'com.stub\'}},\'oauth_client\':[],\'api_key\':[{\'current_key\':\'stub\'}],\'services\':{\'appinvite_service\':{\'other_platform_oauth_client\':[]}}}],\'configuration_version\':\'1\'}))" 2>/dev/null || true;                 fi && \n                # ---- detect expo ----\n                if grep -q \'"expo"\' package.json && [ ! -d android ]; then\n                    echo "Expo project detected";\n                    CI=1 npx --yes expo prebuild --platform android\n                fi && \n                # ---- fix expo/metro-config: serializer + Flow transformIgnorePatterns ----\n                # Runs AFTER prebuild because prebuild generates metro.config.js for managed-workflow\n                # projects — patching before prebuild would be overwritten by the generated file.\n                # Fix 1: remove customSerializer that returns JS string instead of JSON\n                #   ("var __BUND..." → "Serializer did not return expected format").\n                # Fix 2: add transformIgnorePatterns so expo/src/Expo.ts goes through Babel\n                #   (default pattern excludes all node_modules → raw Flow types → SyntaxError).\n                if [ -f metro.config.js ] && [ -d node_modules/expo ] &&                    ( grep -q \'expo/metro-config\\|@expo/metro-config\' metro.config.js 2>/dev/null ||                      ! grep -q \'transformIgnorePatterns\' metro.config.js 2>/dev/null ); then                     cp metro.config.js metro.config.orig.js &&                     printf \'const c=require("./metro.config.orig.js");const r=Object.assign({},c);if(r.serializer){r.serializer=Object.assign({},r.serializer);delete r.serializer.customSerializer;}r.transformer=Object.assign({},r.transformer||{});if(!r.transformer.transformIgnorePatterns){r.transformer.transformIgnorePatterns=["node_modules/(?!(react-native|@react-native|expo|@expo|@unimodules|react-clone-referenced-element|@react-navigation|native-base)/)"];}module.exports=r;\\n\' > metro.config.js;                 fi && \n                # ---- stub missing metro watchFolders paths ----\n                mkdir -p /src 2>/dev/null || true && \n                # ---- fix babel configs that use react-native-builder-bob ----\n                # builder-bob is a library-dev tool; its getConfig() throws "Couldn\'t determine the source\n                # directory" when built outside the library\'s own workspace. Replace with a standard preset.\n                if grep -ql \'react-native-builder-bob\' babel.config.js babel.config.json .babelrc .babelrc.js 2>/dev/null; then                     if [ -d node_modules/babel-preset-expo ]; then                         printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                     elif [ -d node_modules/@react-native/babel-preset ]; then                         printf \'module.exports={presets:["module:@react-native/babel-preset"]};\' > babel.config.js;                     else                         printf \'module.exports={presets:["module:metro-react-native-babel-preset"]};\' > babel.config.js;                     fi;                 fi && \n                # ---- ensure TypeScript babel support (fixes \'interface\' SyntaxError in metro bundling) ----\n                if [ -d node_modules/babel-preset-expo ]; then                     grep -ql "expo\\|typescript" babel.config.js .babelrc .babelrc.js babel.config.json 2>/dev/null ||                     printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                 fi && \n                # ---- stub missing-asset-registry-path (Metro virtual module not resolved in release) ----\n                # Metro normally aliases this to @react-native/assets-registry/registry at bundle time.\n                # When that alias is missing, any PNG asset in node_modules triggers "Unable to resolve module".\n                if [ ! -d node_modules/missing-asset-registry-path ]; then                     mkdir -p node_modules/missing-asset-registry-path &&                     if [ -f node_modules/@react-native/assets-registry/registry.js ]; then                         printf \'module.exports=require("@react-native/assets-registry/registry");\' > node_modules/missing-asset-registry-path/index.js;                     else                         printf \'module.exports={registerAsset:function(){return 0;},getAssetByID:function(){return null;}};\' > node_modules/missing-asset-registry-path/index.js;                     fi;                 fi && \n                # ---- stub @react-native-masked-view/masked-view if missing ----\n                # Required by @react-navigation/elements but often not installed as a direct dependency.\n                if [ ! -d node_modules/@react-native-masked-view/masked-view ]; then                     mkdir -p node_modules/@react-native-masked-view/masked-view &&                     printf \'{"name":"@react-native-masked-view/masked-view","version":"0.1.11","main":"index.js"}\' > node_modules/@react-native-masked-view/masked-view/package.json &&                     printf \'const React=require("react");const {View}=require("react-native");function MaskedView(p){return React.createElement(View,p.style?{style:p.style}:{},p.children);}module.exports=MaskedView;module.exports.default=MaskedView;\' > node_modules/@react-native-masked-view/masked-view/index.js;                 fi && \n                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && \n                chmod +x gradlew && \n                # ---- inject fallback repositories via Gradle init script ----\n                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo \'gradle.beforeProject {project ->\' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.buildscript.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'}\' >> $GRADLE_USER_HOME/init.d/repos.gradle && \n                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----\n                sed -i \'s/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\\/.bin\\/react-native config")/\' settings.gradle 2>/dev/null || true && \n                # ---- disable Sentry source map upload (no credentials in CI) ----\n                export SENTRY_DISABLE_AUTO_UPLOAD=true &&                 echo "sentryUploadEnabled=false" >> gradle.properties 2>/dev/null || true && \n                # ---- enable ABI splits ----\n                if grep -q \'splits\' app/build.gradle 2>/dev/null; then                     sed -i \'s/enable false/enable true/\' app/build.gradle || true;                 else                     sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' app/build.gradle || true;                 fi && \n                # ---- enable R8 ----\n                sed -i \'s/enableProguardInReleaseBuilds = false/enableProguardInReleaseBuilds = true/\' app/build.gradle || true && \n                # ---- sign release with debug key ----\n                sed -i \'/buildTypes/,/}/s/release {/release {\n            signingConfig signingConfigs.debug/\' app/build.gradle || true && \n                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----\n                ./gradlew :app:dependencies --configuration releaseCompileClasspath --no-daemon > /dev/null 2>&1 || true && \n                # ---- build release apk ----\n                ./gradlew assembleRelease --no-daemon || exit 1 &&                     \n                APK_PATH="app/build/outputs/apk/release"\n\n                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then\n                    echo "ERROR: APK not generated"\n                    exit 1\n                fi\n\n                # ---- copy output ----\n                cp app/build/outputs/apk/release/*.apk /output/r8/\n\n                # ---- copy TPL metadata ----\n                [ -f ../package.json ] && cp ../package.json /output/r8/ || true\n                [ -f ../package-lock.json ] && cp ../package-lock.json /output/r8/ || true\n                [ -f ../yarn.lock ] && cp ../yarn.lock /output/r8/ || true\n                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/r8/ || true\n                [ -f app/build.gradle ] && cp app/build.gradle /output/r8/android-build.gradle || true\n                [ -f build.gradle ] && cp build.gradle /output/r8/root-build.gradle || true\n                [ -f build.gradle.kts ] && cp build.gradle.kts /output/r8/root-build.gradle.kts || true\n                [ -f settings.gradle ] && cp settings.gradle /output/r8/ || true\n                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/r8/ || true\n                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/r8/ || true\n                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                mkdir -p /output/r8/libs\n                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                    ']' timed out after 7200 seconds
Build failed with Node 20 and jdk version 11 with the following error: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'react-android:20-jdk11', 'bash', '-c', '\n                set -e\n\n                cp -r /source/. /app &&                 cd /app && \n                # ---- install deps (yarn or npm) ----\n                if [ -f yarn.lock ]; then\n                    yarn install;\n                else\n                    npm install --ignore-scripts;\n                fi && \n                # ---- stub missing parent package.json (monorepo metro configs) ----\n                [ ! -f ../package.json ] && cp package.json ../package.json 2>/dev/null || true && \n                # ---- patch toReversed (Node <20 compat) ----\n                find node_modules -name "loadConfig.js" -path "*/metro-config/*" -exec sed -i \'s/\\.toReversed()/.slice().reverse()/g\' {} \\; 2>/dev/null || true && \n                # ---- patch missing expo/AppEntry ----\n                if grep -q \'"main".*expo/AppEntry\' package.json 2>/dev/null &&                    [ ! -f node_modules/expo/AppEntry.js ] && [ ! -f node_modules/expo/AppEntry.ts ]; then                     node -e "const fs=require(\'fs\'); const p=JSON.parse(fs.readFileSync(\'package.json\',\'utf8\')); if(fs.existsSync(\'index.js\')){p.main=\'index.js\'; fs.writeFileSync(\'package.json\',JSON.stringify(p,null,2));}" 2>/dev/null || true;                 fi && \n                # ---- patch broken metro config (ESM-only, null-returning, or monorepo-only) ----\n                # NOTE: do NOT replace configs that merely use expo/metro-config — those carry\n                # Expo-specific resolver paths (watchFolders, extraNodeModules) needed for\n                # packages like @react-native-masked-view/masked-view to resolve.\n                if grep -q \'react-native-monorepo-config\' metro.config.js 2>/dev/null ||                    ! node -e "const c=require(\'./metro.config.js\'); if(!c||typeof c!==\'object\') process.exit(1);" 2>/dev/null; then                     if [ -d node_modules/@react-native/metro-config ]; then                         printf \'const {getDefaultConfig, mergeConfig} = require("@react-native/metro-config");\nmodule.exports = mergeConfig(getDefaultConfig(__dirname), {});\n\' > metro.config.js;                     else                         printf \'const {getDefaultConfig} = require("metro-config");\nmodule.exports = getDefaultConfig(__dirname);\n\' > metro.config.js;                     fi;                 fi && \n                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----\n                if [ ! -f google-services.json ]; then                     python3 -c "import json; open(\'google-services.json\',\'w\').write(json.dumps({\'project_info\':{\'project_number\':\'000000000000\',\'project_id\':\'stub\',\'storage_bucket\':\'stub.appspot.com\'},\'client\':[{\'client_info\':{\'mobilesdk_app_id\':\'1:000000000000:android:0000000000000000\',\'android_client_info\':{\'package_name\':\'com.stub\'}},\'oauth_client\':[],\'api_key\':[{\'current_key\':\'stub\'}],\'services\':{\'appinvite_service\':{\'other_platform_oauth_client\':[]}}}],\'configuration_version\':\'1\'}))" 2>/dev/null || true;                 fi && \n                # ---- detect expo ----\n                if grep -q \'"expo"\' package.json && [ ! -d android ]; then\n                    echo "Expo project detected";\n                    CI=1 npx --yes expo prebuild --platform android\n                fi && \n                # ---- fix expo/metro-config: serializer + Flow transformIgnorePatterns ----\n                # Runs AFTER prebuild because prebuild generates metro.config.js for managed-workflow\n                # projects — patching before prebuild would be overwritten by the generated file.\n                # Fix 1: remove customSerializer that returns JS string instead of JSON\n                #   ("var __BUND..." → "Serializer did not return expected format").\n                # Fix 2: add transformIgnorePatterns so expo/src/Expo.ts goes through Babel\n                #   (default pattern excludes all node_modules → raw Flow types → SyntaxError).\n                if [ -f metro.config.js ] && [ -d node_modules/expo ] &&                    ( grep -q \'expo/metro-config\\|@expo/metro-config\' metro.config.js 2>/dev/null ||                      ! grep -q \'transformIgnorePatterns\' metro.config.js 2>/dev/null ); then                     cp metro.config.js metro.config.orig.js &&                     printf \'const c=require("./metro.config.orig.js");const r=Object.assign({},c);if(r.serializer){r.serializer=Object.assign({},r.serializer);delete r.serializer.customSerializer;}r.transformer=Object.assign({},r.transformer||{});if(!r.transformer.transformIgnorePatterns){r.transformer.transformIgnorePatterns=["node_modules/(?!(react-native|@react-native|expo|@expo|@unimodules|react-clone-referenced-element|@react-navigation|native-base)/)"];}module.exports=r;\\n\' > metro.config.js;                 fi && \n                # ---- stub missing metro watchFolders paths ----\n                mkdir -p /src 2>/dev/null || true && \n                # ---- fix babel configs that use react-native-builder-bob ----\n                # builder-bob is a library-dev tool; its getConfig() throws "Couldn\'t determine the source\n                # directory" when built outside the library\'s own workspace. Replace with a standard preset.\n                if grep -ql \'react-native-builder-bob\' babel.config.js babel.config.json .babelrc .babelrc.js 2>/dev/null; then                     if [ -d node_modules/babel-preset-expo ]; then                         printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                     elif [ -d node_modules/@react-native/babel-preset ]; then                         printf \'module.exports={presets:["module:@react-native/babel-preset"]};\' > babel.config.js;                     else                         printf \'module.exports={presets:["module:metro-react-native-babel-preset"]};\' > babel.config.js;                     fi;                 fi && \n                # ---- ensure TypeScript babel support (fixes \'interface\' SyntaxError in metro bundling) ----\n                if [ -d node_modules/babel-preset-expo ]; then                     grep -ql "expo\\|typescript" babel.config.js .babelrc .babelrc.js babel.config.json 2>/dev/null ||                     printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                 fi && \n                # ---- stub missing-asset-registry-path (Metro virtual module not resolved in release) ----\n                # Metro normally aliases this to @react-native/assets-registry/registry at bundle time.\n                # When that alias is missing, any PNG asset in node_modules triggers "Unable to resolve module".\n                if [ ! -d node_modules/missing-asset-registry-path ]; then                     mkdir -p node_modules/missing-asset-registry-path &&                     if [ -f node_modules/@react-native/assets-registry/registry.js ]; then                         printf \'module.exports=require("@react-native/assets-registry/registry");\' > node_modules/missing-asset-registry-path/index.js;                     else                         printf \'module.exports={registerAsset:function(){return 0;},getAssetByID:function(){return null;}};\' > node_modules/missing-asset-registry-path/index.js;                     fi;                 fi && \n                # ---- stub @react-native-masked-view/masked-view if missing ----\n                # Required by @react-navigation/elements but often not installed as a direct dependency.\n                if [ ! -d node_modules/@react-native-masked-view/masked-view ]; then                     mkdir -p node_modules/@react-native-masked-view/masked-view &&                     printf \'{"name":"@react-native-masked-view/masked-view","version":"0.1.11","main":"index.js"}\' > node_modules/@react-native-masked-view/masked-view/package.json &&                     printf \'const React=require("react");const {View}=require("react-native");function MaskedView(p){return React.createElement(View,p.style?{style:p.style}:{},p.children);}module.exports=MaskedView;module.exports.default=MaskedView;\' > node_modules/@react-native-masked-view/masked-view/index.js;                 fi && \n                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && \n                chmod +x gradlew && \n                # ---- inject fallback repositories via Gradle init script ----\n                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo \'gradle.beforeProject {project ->\' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.buildscript.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'}\' >> $GRADLE_USER_HOME/init.d/repos.gradle && \n                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----\n                sed -i \'s/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\\/.bin\\/react-native config")/\' settings.gradle 2>/dev/null || true && \n                # ---- disable Sentry source map upload (no credentials in CI) ----\n                export SENTRY_DISABLE_AUTO_UPLOAD=true &&                 echo "sentryUploadEnabled=false" >> gradle.properties 2>/dev/null || true && \n                # ---- enable ABI splits ----\n                if grep -q \'splits\' app/build.gradle 2>/dev/null; then                     sed -i \'s/enable false/enable true/\' app/build.gradle || true;                 else                     sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' app/build.gradle || true;                 fi && \n                # ---- enable R8 ----\n                sed -i \'s/enableProguardInReleaseBuilds = false/enableProguardInReleaseBuilds = true/\' app/build.gradle || true && \n                # ---- sign release with debug key ----\n                sed -i \'/buildTypes/,/}/s/release {/release {\n            signingConfig signingConfigs.debug/\' app/build.gradle || true && \n                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----\n                ./gradlew :app:dependencies --configuration releaseCompileClasspath --no-daemon > /dev/null 2>&1 || true && \n                # ---- build release apk ----\n                ./gradlew assembleRelease --no-daemon || exit 1 &&                     \n                APK_PATH="app/build/outputs/apk/release"\n\n                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then\n                    echo "ERROR: APK not generated"\n                    exit 1\n                fi\n\n                # ---- copy output ----\n                cp app/build/outputs/apk/release/*.apk /output/r8/\n\n                # ---- copy TPL metadata ----\n                [ -f ../package.json ] && cp ../package.json /output/r8/ || true\n                [ -f ../package-lock.json ] && cp ../package-lock.json /output/r8/ || true\n                [ -f ../yarn.lock ] && cp ../yarn.lock /output/r8/ || true\n                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/r8/ || true\n                [ -f app/build.gradle ] && cp app/build.gradle /output/r8/android-build.gradle || true\n                [ -f build.gradle ] && cp build.gradle /output/r8/root-build.gradle || true\n                [ -f build.gradle.kts ] && cp build.gradle.kts /output/r8/root-build.gradle.kts || true\n                [ -f settings.gradle ] && cp settings.gradle /output/r8/ || true\n                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/r8/ || true\n                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/r8/ || true\n                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                mkdir -p /output/r8/libs\n                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                    ']' timed out after 7200 seconds

> echo Attempting build for mthnglac-chuck-the-joker with Node 22 and jdk 11
Attempting build for mthnglac-chuck-the-joker with Node 22 and jdk 11

> docker run --rm -v /home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output -v /home/ubuntu/.npm:/root/.npm react-android:22-jdk11 bash -c 
                set -e

                cp -r /source/. /app &&                 cd /app && 
                # ---- install deps (yarn or npm) ----
                if [ -f yarn.lock ]; then
                    yarn install;
                else
                    npm install --ignore-scripts;
                fi && 
                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----
                if [ ! -f google-services.json ]; then                     python3 -c "import json; open('google-services.json','w').write(json.dumps({'project_info':{'project_number':'000000000000','project_id':'stub','storage_bucket':'stub.appspot.com'},'client':[{'client_info':{'mobilesdk_app_id':'1:000000000000:android:0000000000000000','android_client_info':{'package_name':'com.stub'}},'oauth_client':[],'api_key':[{'current_key':'stub'}],'services':{'appinvite_service':{'other_platform_oauth_client':[]}}}],'configuration_version':'1'}))" 2>/dev/null || true;                 fi && 
                # ---- detect expo ----
                if grep -q '"expo"' package.json && [ ! -d android ]; then
                    echo "Expo project detected";
                    CI=1 npx --yes expo prebuild --platform android
                fi && 
                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && 
                chmod +x gradlew && 
                # ---- inject fallback repositories via Gradle init script ----
                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo 'gradle.beforeProject {project ->' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.buildscript.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '}' >> $GRADLE_USER_HOME/init.d/repos.gradle && 
                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----
                sed -i 's/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\/.bin\/react-native config")/' settings.gradle 2>/dev/null || true && 
                # ---- clean gradle ----
                (./gradlew clean || true) && 
                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----
                ./gradlew :app:dependencies --configuration debugCompileClasspath --no-daemon > /dev/null 2>&1 || true && 
                # ---- enable ABI splits ----
                if grep -q 'splits' app/build.gradle 2>/dev/null; then                     sed -i 's/enable false/enable true/' app/build.gradle || true;                 else                     sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' app/build.gradle || true;                 fi && 
                # ---- build debug apk ----
                ./gradlew assembleDebug --no-daemon || exit 1 && 
                APK_PATH="app/build/outputs/apk/debug"

                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then
                    echo "ERROR: APK not generated"
                    exit 1
                fi
                # ---- copy output ----
                cp app/build/outputs/apk/debug/*.apk /output/

                # ---- copy TPL metadata ----
                [ -f ../package.json ] && cp ../package.json /output/ || true
                [ -f ../package-lock.json ] && cp ../package-lock.json /output/ || true
                [ -f ../yarn.lock ] && cp ../yarn.lock /output/ || true
                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/ || true
                [ -f app/build.gradle ] && cp app/build.gradle /output/android-build.gradle || true
                [ -f build.gradle ] && cp build.gradle /output/root-build.gradle || true
                [ -f build.gradle.kts ] && cp build.gradle.kts /output/root-build.gradle.kts || true
                [ -f settings.gradle ] && cp settings.gradle /output/ || true
                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/ || true
                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/ || true
                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true
                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true
                mkdir -p /output/libs
                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
                    
yarn install v1.22.22
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > @react-native-async-storage/async-storage@1.15.14" has incorrect peer dependency "react-native@^0.0.0-0 || ^0.60.6 || ^0.61.5 || ^0.62.2 || ^0.63.2 || ^0.64.0 || ^0.65.0 || ^0.66.0 || 1000.0.0".
warning " > @react-native-community/masked-view@0.1.10" has incorrect peer dependency "react@^16.0".
warning "react-native > react-native-codegen > jscodeshift@0.11.0" has unmet peer dependency "@babel/preset-env@^7.1.6".
warning " > reactotron-mst@3.1.3" has unmet peer dependency "reactotron-core-client@^2.5.0".
warning " > reactotron-mst@3.1.3" has incorrect peer dependency "mobx@^3.4.1 || ^4.1.0".
warning " > reactotron-mst@3.1.3" has incorrect peer dependency "mobx-state-tree@^1.4.0 || ^2.0.2 || ^3.0.0".
warning " > reactotron-react-native@5.0.0" has incorrect peer dependency "react@^15.2.1 || 16.0.0-alpha.6 || 16.0.0-alpha.12 || 16.0.0-beta.5 || ^16.0.0".
warning "reactotron-react-native > react-native-flipper@0.34.0" has incorrect peer dependency "react@^16.8.1".
warning "reactotron-react-native > react-native-flipper@0.34.0" has incorrect peer dependency "react-native@^0.62.0".
warning " > @storybook/addon-storyshots@6.1.10" has unmet peer dependency "@storybook/react@*".
warning "@storybook/addon-storyshots > jest-specific-snapshot@4.0.0" has incorrect peer dependency "jest@>= 26.0.0".
warning "@storybook/addon-storyshots > @storybook/addons > @storybook/api > @reach/router@1.3.4" has incorrect peer dependency "react@15.x || 16.x || 16.4.0-alpha.0911da3".
warning "@storybook/addon-storyshots > @storybook/addons > @storybook/api > @reach/router@1.3.4" has incorrect peer dependency "react-dom@15.x || 16.x || 16.4.0-alpha.0911da3".
warning "@storybook/addon-storyshots > @storybook/addons > @storybook/api > @reach/router > create-react-context@0.3.0" has incorrect peer dependency "react@^0.14.0 || ^15.0.0 || ^16.0.0".
warning "@storybook/react-native-server > @storybook/api@5.3.21" has unmet peer dependency "regenerator-runtime@*".
warning " > babel-loader@8.2.2" has unmet peer dependency "webpack@>=2".
warning " > detox@17.14.5" has incorrect peer dependency "jest-circus@26.0.x - 26.4.x || >=26.5.2".
warning " > detox@17.14.5" has unmet peer dependency "jest-environment-node@>=25.0.0".
warning " > detox@17.14.5" has unmet peer dependency "mocha@>=6.0.0".
warning "jest-expo > jest-watch-typeahead@0.6.4" has incorrect peer dependency "jest@^26.0.0 || ^27.0.0".
warning " > react-powerplug@1.0.0" has incorrect peer dependency "react@^0.14.0 || ^15.0.0-0 || ^16.0.0-0".
[4/4] Building fresh packages...
$ node ./bin/postInstall
patch-package 6.2.2
No patch files found
Applying patches...

✔︎ Solidarity checks valid
Done in 97.94s.
Downloading https://services.gradle.org/distributions/gradle-7.2-all.zip
..............10%...............20%...............30%...............40%...............50%...............60%...............70%...............80%...............90%...............100%

Welcome to Gradle 7.2!

Here are the highlights of this release:
 - Toolchain support for Scala
 - More cache hits when Java source files have platform-specific line endings
 - More resilient remote HTTP build cache behavior

For more details see https://docs.gradle.org/7.2/release-notes.html


> Configure project :expo-file-system
WARNING:: Configuration 'testApi' is obsolete and has been replaced with 'testImplementation'.
It will be removed in version 7.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.

> Configure project :expo

Using expo modules
  - [32mexpo-application[0m (4.0.2)
  - [32mexpo-constants[0m (13.0.2)
  - [32mexpo-error-recovery[0m (3.0.5)
  - [32mexpo-file-system[0m (13.1.4)
  - [32mexpo-font[0m (10.0.5)
  - [32mexpo-keep-awake[0m (10.0.2)
  - [32mexpo-linear-gradient[0m (11.0.3)
  - [32mexpo-localization[0m (12.0.1)
  - [32mexpo-modules-core[0m (0.6.5)


> Task :app:clean UP-TO-DATE
> Task :expo:clean UP-TO-DATE
> Task :expo-application:clean UP-TO-DATE
> Task :expo-constants:clean UP-TO-DATE
> Task :expo-error-recovery:clean UP-TO-DATE
> Task :expo-file-system:clean UP-TO-DATE
> Task :expo-font:clean UP-TO-DATE
> Task :expo-keep-awake:clean UP-TO-DATE
> Task :expo-linear-gradient:clean UP-TO-DATE
> Task :expo-localization:clean UP-TO-DATE
> Task :expo-modules-core:clean UP-TO-DATE
> Task :react-native-async-storage_async-storage:clean UP-TO-DATE
> Task :react-native-community_masked-view:clean UP-TO-DATE
> Task :react-native-gesture-handler:clean UP-TO-DATE
> Task :react-native-safe-area-context:clean UP-TO-DATE
> Task :react-native-screens:clean UP-TO-DATE
> Task :react-native-splash-screen:clean UP-TO-DATE

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 1m 36s
17 actionable tasks: 17 up-to-date

> Configure project :expo-file-system
WARNING:: Configuration 'testApi' is obsolete and has been replaced with 'testImplementation'.
It will be removed in version 7.0 of the Android Gradle plugin.
For more information, see http://d.android.com/r/tools/update-dependency-configurations.html.

> Configure project :expo

Using expo modules
  - [32mexpo-application[0m (4.0.2)
  - [32mexpo-constants[0m (13.0.2)
  - [32mexpo-error-recovery[0m (3.0.5)
  - [32mexpo-file-system[0m (13.1.4)
  - [32mexpo-font[0m (10.0.5)
  - [32mexpo-keep-awake[0m (10.0.2)
  - [32mexpo-linear-gradient[0m (11.0.3)
  - [32mexpo-localization[0m (12.0.1)
  - [32mexpo-modules-core[0m (0.6.5)


> Task :app:generatePackageList
> Task :app:preBuild
> Task :app:preDebugBuild
> Task :expo:generateExpoModulesPackageList
> Task :expo:preBuild
> Task :expo:preDebugBuild
> Task :expo-application:preBuild UP-TO-DATE
> Task :expo-application:preDebugBuild UP-TO-DATE
> Task :expo-modules-core:preBuild UP-TO-DATE
> Task :expo-modules-core:preDebugBuild UP-TO-DATE
> Task :expo-modules-core:compileDebugAidl NO-SOURCE
> Task :expo-application:compileDebugAidl NO-SOURCE
> Task :expo-constants:preBuild UP-TO-DATE
> Task :expo-constants:preDebugBuild UP-TO-DATE
> Task :expo-constants:compileDebugAidl NO-SOURCE
> Task :expo-error-recovery:preBuild UP-TO-DATE
> Task :expo-error-recovery:preDebugBuild UP-TO-DATE
> Task :expo-error-recovery:compileDebugAidl NO-SOURCE
> Task :expo-file-system:preBuild UP-TO-DATE
> Task :expo-file-system:preDebugBuild UP-TO-DATE
> Task :expo-file-system:compileDebugAidl NO-SOURCE
> Task :expo-font:preBuild UP-TO-DATE
> Task :expo-font:preDebugBuild UP-TO-DATE
> Task :expo-font:compileDebugAidl NO-SOURCE
> Task :expo-keep-awake:preBuild UP-TO-DATE
> Task :expo-keep-awake:preDebugBuild UP-TO-DATE
> Task :expo-keep-awake:compileDebugAidl NO-SOURCE
> Task :expo-linear-gradient:preBuild UP-TO-DATE
> Task :expo-linear-gradient:preDebugBuild UP-TO-DATE
> Task :expo-linear-gradient:compileDebugAidl NO-SOURCE
> Task :expo-localization:preBuild UP-TO-DATE
> Task :expo-localization:preDebugBuild UP-TO-DATE
> Task :expo-localization:compileDebugAidl NO-SOURCE
> Task :expo:compileDebugAidl NO-SOURCE
> Task :react-native-async-storage_async-storage:preBuild UP-TO-DATE
> Task :react-native-async-storage_async-storage:preDebugBuild UP-TO-DATE
> Task :react-native-async-storage_async-storage:compileDebugAidl NO-SOURCE
> Task :react-native-community_masked-view:preBuild UP-TO-DATE
> Task :react-native-community_masked-view:preDebugBuild UP-TO-DATE
> Task :react-native-community_masked-view:compileDebugAidl NO-SOURCE
> Task :react-native-gesture-handler:preBuild UP-TO-DATE
> Task :react-native-gesture-handler:preDebugBuild UP-TO-DATE
> Task :react-native-gesture-handler:compileDebugAidl NO-SOURCE
> Task :react-native-safe-area-context:preBuild UP-TO-DATE
> Task :react-native-safe-area-context:preDebugBuild UP-TO-DATE
> Task :react-native-safe-area-context:compileDebugAidl NO-SOURCE
> Task :react-native-screens:preBuild UP-TO-DATE
> Task :react-native-screens:preDebugBuild UP-TO-DATE
> Task :react-native-screens:compileDebugAidl NO-SOURCE
> Task :react-native-splash-screen:preBuild UP-TO-DATE
> Task :react-native-splash-screen:preDebugBuild UP-TO-DATE
> Task :react-native-splash-screen:compileDebugAidl NO-SOURCE
> Task :app:compileDebugAidl NO-SOURCE
> Task :expo:packageDebugRenderscript NO-SOURCE
> Task :expo-application:packageDebugRenderscript NO-SOURCE
> Task :expo-constants:packageDebugRenderscript NO-SOURCE
> Task :expo-error-recovery:packageDebugRenderscript NO-SOURCE
> Task :expo-file-system:packageDebugRenderscript NO-SOURCE
> Task :expo-font:packageDebugRenderscript NO-SOURCE
> Task :expo-keep-awake:packageDebugRenderscript NO-SOURCE
> Task :expo-linear-gradient:packageDebugRenderscript NO-SOURCE
> Task :expo-localization:packageDebugRenderscript NO-SOURCE
> Task :expo-modules-core:packageDebugRenderscript NO-SOURCE
> Task :react-native-async-storage_async-storage:packageDebugRenderscript NO-SOURCE
> Task :react-native-community_masked-view:packageDebugRenderscript NO-SOURCE
> Task :react-native-gesture-handler:packageDebugRenderscript NO-SOURCE
> Task :react-native-safe-area-context:packageDebugRenderscript NO-SOURCE
> Task :react-native-screens:packageDebugRenderscript NO-SOURCE
> Task :react-native-splash-screen:packageDebugRenderscript NO-SOURCE
> Task :app:compileDebugRenderscript NO-SOURCE
> Task :app:generateDebugBuildConfig
> Task :expo:writeDebugAarMetadata
> Task :expo-application:writeDebugAarMetadata
> Task :expo-constants:writeDebugAarMetadata
> Task :expo-error-recovery:writeDebugAarMetadata
> Task :expo-file-system:writeDebugAarMetadata
> Task :expo-font:writeDebugAarMetadata
> Task :expo-keep-awake:writeDebugAarMetadata
> Task :expo-linear-gradient:writeDebugAarMetadata
> Task :expo-localization:writeDebugAarMetadata
> Task :expo-modules-core:writeDebugAarMetadata
> Task :react-native-async-storage_async-storage:writeDebugAarMetadata
> Task :react-native-community_masked-view:writeDebugAarMetadata
> Task :react-native-gesture-handler:writeDebugAarMetadata
> Task :react-native-safe-area-context:writeDebugAarMetadata
> Task :react-native-screens:writeDebugAarMetadata
> Task :app:bundleDebugJsAndAssets SKIPPED
> Task :react-native-splash-screen:writeDebugAarMetadata
> Task :app:mergeDebugShaders
> Task :app:compileDebugShaders NO-SOURCE
> Task :app:generateDebugAssets UP-TO-DATE
> Task :expo:mergeDebugShaders
> Task :expo:compileDebugShaders NO-SOURCE
> Task :expo:generateDebugAssets UP-TO-DATE
> Task :expo:packageDebugAssets
> Task :expo-application:mergeDebugShaders
> Task :expo-application:compileDebugShaders NO-SOURCE
> Task :expo-application:generateDebugAssets UP-TO-DATE
> Task :expo-application:packageDebugAssets
> Task :expo-constants:mergeDebugShaders
> Task :expo-constants:compileDebugShaders NO-SOURCE

> Task :expo-constants:createDebugExpoConfig
Execution optimizations have been disabled for task ':expo-constants:createDebugExpoConfig' to ensure correctness due to the following reasons:
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:compileDebugAidl' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:compileDebugRenderscript' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:compileDebugShaders' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:generateDebugBuildConfig' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.
  - Gradle detected a problem with the following location: '/app/android'. Reason: Task ':expo-constants:createDebugExpoConfig' uses this output of task ':app:mergeDebugShaders' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.2/userguide/validation_problems.html#implicit_dependency for more details about this problem.

> Task :expo-constants:copyDebugExpoConfig
> Task :expo-constants:generateDebugAssets UP-TO-DATE
> Task :expo-constants:packageDebugAssets
> Task :expo-error-recovery:mergeDebugShaders
> Task :expo-error-recovery:compileDebugShaders NO-SOURCE
> Task :expo-error-recovery:generateDebugAssets UP-TO-DATE
> Task :expo-error-recovery:packageDebugAssets
> Task :expo-file-system:mergeDebugShaders
> Task :expo-file-system:compileDebugShaders NO-SOURCE
> Task :expo-file-system:generateDebugAssets UP-TO-DATE
> Task :expo-file-system:packageDebugAssets
> Task :expo-font:mergeDebugShaders
> Task :expo-font:compileDebugShaders NO-SOURCE
> Task :expo-font:generateDebugAssets UP-TO-DATE
> Task :expo-font:packageDebugAssets
> Task :expo-keep-awake:mergeDebugShaders
> Task :expo-keep-awake:compileDebugShaders NO-SOURCE
> Task :expo-keep-awake:generateDebugAssets UP-TO-DATE
> Task :expo-keep-awake:packageDebugAssets
> Task :expo-linear-gradient:mergeDebugShaders
> Task :expo-linear-gradient:compileDebugShaders NO-SOURCE
> Task :expo-linear-gradient:generateDebugAssets UP-TO-DATE
> Task :expo-linear-gradient:packageDebugAssets
> Task :expo-localization:mergeDebugShaders
> Task :expo-localization:compileDebugShaders NO-SOURCE
> Task :expo-localization:generateDebugAssets UP-TO-DATE
> Task :expo-localization:packageDebugAssets
> Task :expo-modules-core:mergeDebugShaders
> Task :expo-modules-core:compileDebugShaders NO-SOURCE
> Task :expo-modules-core:generateDebugAssets UP-TO-DATE
> Task :expo-modules-core:packageDebugAssets
> Task :react-native-async-storage_async-storage:mergeDebugShaders
> Task :react-native-async-storage_async-storage:compileDebugShaders NO-SOURCE
> Task :react-native-async-storage_async-storage:generateDebugAssets UP-TO-DATE
> Task :react-native-async-storage_async-storage:packageDebugAssets
> Task :react-native-community_masked-view:mergeDebugShaders
> Task :react-native-community_masked-view:compileDebugShaders NO-SOURCE
> Task :react-native-community_masked-view:generateDebugAssets UP-TO-DATE
> Task :react-native-community_masked-view:packageDebugAssets
> Task :react-native-gesture-handler:mergeDebugShaders
> Task :react-native-gesture-handler:compileDebugShaders NO-SOURCE
> Task :react-native-gesture-handler:generateDebugAssets UP-TO-DATE
> Task :react-native-gesture-handler:packageDebugAssets
> Task :react-native-safe-area-context:mergeDebugShaders
> Task :react-native-safe-area-context:compileDebugShaders NO-SOURCE
> Task :react-native-safe-area-context:generateDebugAssets UP-TO-DATE
> Task :react-native-safe-area-context:packageDebugAssets
> Task :react-native-screens:mergeDebugShaders
> Task :react-native-screens:compileDebugShaders NO-SOURCE
> Task :react-native-screens:generateDebugAssets UP-TO-DATE
> Task :react-native-screens:packageDebugAssets
> Task :react-native-splash-screen:mergeDebugShaders
> Task :react-native-splash-screen:compileDebugShaders NO-SOURCE
> Task :react-native-splash-screen:generateDebugAssets UP-TO-DATE
> Task :react-native-splash-screen:packageDebugAssets
> Task :app:mergeDebugAssets
> Task :app:copyDebugBundledJs SKIPPED
> Task :app:generateDebugResValues
> Task :app:generateDebugResources
> Task :expo:compileDebugRenderscript NO-SOURCE
> Task :expo:generateDebugResValues
> Task :expo:generateDebugResources
> Task :expo:packageDebugResources
> Task :expo-application:compileDebugRenderscript NO-SOURCE
> Task :expo-application:generateDebugResValues
> Task :expo-application:generateDebugResources
> Task :expo-application:packageDebugResources
> Task :expo-constants:compileDebugRenderscript NO-SOURCE
> Task :expo-constants:generateDebugResValues
> Task :expo-constants:generateDebugResources
> Task :expo-constants:packageDebugResources
> Task :expo-error-recovery:compileDebugRenderscript NO-SOURCE
> Task :expo-error-recovery:generateDebugResValues
> Task :expo-error-recovery:generateDebugResources
> Task :expo-error-recovery:packageDebugResources
> Task :expo-file-system:compileDebugRenderscript NO-SOURCE
> Task :expo-file-system:generateDebugResValues
> Task :expo-file-system:generateDebugResources
> Task :expo-file-system:packageDebugResources
> Task :expo-font:compileDebugRenderscript NO-SOURCE
> Task :expo-font:generateDebugResValues
> Task :expo-font:generateDebugResources
> Task :expo-font:packageDebugResources
> Task :expo-keep-awake:compileDebugRenderscript NO-SOURCE
> Task :expo-keep-awake:generateDebugResValues
> Task :expo-keep-awake:generateDebugResources
> Task :expo-keep-awake:packageDebugResources
> Task :expo-linear-gradient:compileDebugRenderscript NO-SOURCE
> Task :expo-linear-gradient:generateDebugResValues
> Task :expo-linear-gradient:generateDebugResources
> Task :expo-linear-gradient:packageDebugResources
> Task :expo-localization:compileDebugRenderscript NO-SOURCE
> Task :expo-localization:generateDebugResValues
> Task :expo-localization:generateDebugResources
> Task :expo-localization:packageDebugResources
> Task :expo-modules-core:compileDebugRenderscript NO-SOURCE
> Task :expo-modules-core:generateDebugResValues
> Task :expo-modules-core:generateDebugResources
> Task :expo-modules-core:packageDebugResources
> Task :react-native-async-storage_async-storage:compileDebugRenderscript NO-SOURCE
> Task :react-native-async-storage_async-storage:generateDebugResValues
> Task :react-native-async-storage_async-storage:generateDebugResources
> Task :react-native-async-storage_async-storage:packageDebugResources
> Task :react-native-community_masked-view:compileDebugRenderscript NO-SOURCE
> Task :react-native-community_masked-view:generateDebugResValues
> Task :react-native-community_masked-view:generateDebugResources
> Task :react-native-community_masked-view:packageDebugResources
> Task :react-native-gesture-handler:compileDebugRenderscript NO-SOURCE
> Task :react-native-gesture-handler:generateDebugResValues
> Task :react-native-gesture-handler:generateDebugResources
> Task :react-native-gesture-handler:packageDebugResources
> Task :react-native-safe-area-context:compileDebugRenderscript NO-SOURCE
> Task :react-native-safe-area-context:generateDebugResValues
> Task :react-native-safe-area-context:generateDebugResources
> Task :react-native-safe-area-context:packageDebugResources
> Task :react-native-screens:compileDebugRenderscript NO-SOURCE
> Task :react-native-screens:generateDebugResValues
> Task :react-native-screens:generateDebugResources
> Task :react-native-screens:packageDebugResources
> Task :react-native-splash-screen:compileDebugRenderscript NO-SOURCE
> Task :react-native-splash-screen:generateDebugResValues
> Task :react-native-splash-screen:generateDebugResources
> Task :react-native-splash-screen:packageDebugResources
> Task :app:checkDebugAarMetadata
> Task :app:createDebugCompatibleScreenManifests
> Task :app:extractDeepLinksDebug
> Task :expo:extractDeepLinksDebug
> Task :expo-application:extractDeepLinksDebug
> Task :expo-constants:extractDeepLinksDebug
> Task :expo-error-recovery:extractDeepLinksDebug
> Task :expo-file-system:extractDeepLinksDebug
> Task :expo-font:extractDeepLinksDebug
> Task :expo-error-recovery:processDebugManifest
> Task :expo-constants:processDebugManifest
> Task :expo-application:processDebugManifest
> Task :expo:processDebugManifest

> Task :expo-file-system:processDebugManifest
/app/node_modules/expo-file-system/android/src/main/AndroidManifest.xml:8:9-10:20 Warning:
	provider#expo.modules.filesystem.FileSystemFileProvider@android:authorities was tagged at AndroidManifest.xml:8 to replace other declarations but no other declaration present

> Task :expo-keep-awake:extractDeepLinksDebug
> Task :expo-linear-gradient:extractDeepLinksDebug
> Task :expo-keep-awake:processDebugManifest
> Task :expo-localization:extractDeepLinksDebug
> Task :expo-modules-core:extractDeepLinksDebug
> Task :expo-font:processDebugManifest
> Task :expo-localization:processDebugManifest
> Task :expo-linear-gradient:processDebugManifest
> Task :react-native-async-storage_async-storage:extractDeepLinksDebug
> Task :expo-modules-core:processDebugManifest
> Task :app:mergeDebugResources
> Task :react-native-community_masked-view:extractDeepLinksDebug
> Task :react-native-async-storage_async-storage:processDebugManifest
> Task :react-native-gesture-handler:extractDeepLinksDebug
> Task :react-native-community_masked-view:processDebugManifest
> Task :react-native-safe-area-context:extractDeepLinksDebug
> Task :react-native-gesture-handler:processDebugManifest
> Task :react-native-screens:extractDeepLinksDebug
> Task :react-native-safe-area-context:processDebugManifest
> Task :react-native-splash-screen:extractDeepLinksDebug
> Task :react-native-screens:processDebugManifest
> Task :react-native-splash-screen:processDebugManifest
> Task :expo:compileDebugLibraryResources
> Task :expo-modules-core:parseDebugLocalResources
> Task :expo-constants:parseDebugLocalResources
> Task :expo-error-recovery:parseDebugLocalResources
> Task :expo-application:parseDebugLocalResources
> Task :expo:parseDebugLocalResources
> Task :expo-file-system:parseDebugLocalResources
> Task :expo-font:parseDebugLocalResources
> Task :expo-keep-awake:parseDebugLocalResources
> Task :expo-linear-gradient:parseDebugLocalResources
> Task :expo-application:compileDebugLibraryResources
> Task :expo-localization:parseDebugLocalResources
> Task :expo-constants:compileDebugLibraryResources
> Task :expo-error-recovery:compileDebugLibraryResources
> Task :expo-file-system:compileDebugLibraryResources
> Task :expo-font:compileDebugLibraryResources
> Task :expo-keep-awake:compileDebugLibraryResources
> Task :expo-modules-core:generateDebugRFile

> Task :app:processDebugMainManifest
/app/android/app/src/debug/AndroidManifest.xml:23:9-32:20 Warning:
	provider#expo.modules.filesystem.FileSystemFileProvider@android:authorities was tagged at AndroidManifest.xml:23 to replace other declarations but no other declaration present

> Task :app:processDebugManifest
> Task :expo-linear-gradient:compileDebugLibraryResources
> Task :app:processDebugManifestForPackage
> Task :expo-localization:compileDebugLibraryResources
> Task :expo-modules-core:compileDebugLibraryResources
> Task :react-native-async-storage_async-storage:compileDebugLibraryResources
> Task :react-native-async-storage_async-storage:parseDebugLocalResources
> Task :react-native-community_masked-view:compileDebugLibraryResources
> Task :react-native-community_masked-view:parseDebugLocalResources
> Task :react-native-async-storage_async-storage:generateDebugRFile
> Task :react-native-gesture-handler:compileDebugLibraryResources
> Task :react-native-gesture-handler:parseDebugLocalResources
> Task :react-native-safe-area-context:compileDebugLibraryResources
> Task :react-native-community_masked-view:generateDebugRFile
> Task :react-native-safe-area-context:parseDebugLocalResources
> Task :react-native-gesture-handler:generateDebugRFile
> Task :react-native-screens:parseDebugLocalResources
> Task :react-native-screens:compileDebugLibraryResources
> Task :react-native-splash-screen:compileDebugLibraryResources
> Task :react-native-safe-area-context:generateDebugRFile
> Task :react-native-splash-screen:parseDebugLocalResources
> Task :expo-application:generateDebugRFile
> Task :react-native-screens:generateDebugRFile
> Task :expo-constants:generateDebugRFile
> Task :expo-error-recovery:generateDebugRFile
> Task :expo-file-system:generateDebugRFile
> Task :expo-font:generateDebugRFile
> Task :expo-keep-awake:generateDebugRFile
> Task :expo-linear-gradient:generateDebugRFile
> Task :expo-localization:generateDebugRFile
> Task :expo:generateDebugBuildConfig
> Task :expo-application:generateDebugBuildConfig
> Task :expo-modules-core:generateDebugBuildConfig
> Task :react-native-splash-screen:generateDebugRFile
> Task :expo-modules-core:compileDebugKotlin
w: /app/node_modules/expo-modules-core/android/src/main/java/expo/modules/kotlin/records/RecordTypeConverter.kt: (38, 13): Name shadowed: value

> Task :expo-modules-core:javaPreCompileDebug
> Task :expo-application:javaPreCompileDebug

> Task :expo-modules-core:compileDebugJavaWithJavac
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :expo-constants:generateDebugBuildConfig
> Task :expo-constants:javaPreCompileDebug
> Task :expo-error-recovery:generateDebugBuildConfig
> Task :expo-error-recovery:javaPreCompileDebug
> Task :expo-file-system:generateDebugBuildConfig
> Task :expo-file-system:javaPreCompileDebug
> Task :expo-font:generateDebugBuildConfig
> Task :expo-font:javaPreCompileDebug
> Task :expo-modules-core:bundleLibCompileToJarDebug
> Task :expo-keep-awake:generateDebugBuildConfig
> Task :expo-keep-awake:javaPreCompileDebug
> Task :expo-linear-gradient:generateDebugBuildConfig
> Task :expo-linear-gradient:javaPreCompileDebug
> Task :expo-localization:generateDebugBuildConfig
> Task :expo-localization:javaPreCompileDebug
> Task :expo:javaPreCompileDebug
> Task :react-native-async-storage_async-storage:generateDebugBuildConfig
> Task :react-native-async-storage_async-storage:javaPreCompileDebug

> Task :expo-application:compileDebugKotlin
w: /app/node_modules/expo-application/android/src/main/java/expo/modules/application/ApplicationModule.kt: (129, 14): 'versionCode: Int' is deprecated. Deprecated in Java

> Task :expo-application:compileDebugJavaWithJavac
> Task :expo-application:bundleLibCompileToJarDebug

> Task :expo-constants:compileDebugKotlin
w: /app/node_modules/expo-constants/android/src/main/java/expo/modules/constants/ConstantsService.kt: (132, 17): 'versionCode: Int' is deprecated. Deprecated in Java

> Task :expo-constants:compileDebugJavaWithJavac
> Task :expo-constants:bundleLibCompileToJarDebug

> Task :expo-file-system:compileDebugKotlin
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (8, 19): 'AsyncTask<Params : Any!, Progress : Any!, Result : Any!>' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (419, 27): Type mismatch: inferred type is String? but String was expected
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (463, 29): Type mismatch: inferred type is String? but String was expected
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (552, 43): Parameter 'options' is never used
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (640, 46): Parameter 'options' is never used
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (764, 43): Unchecked cast: Any? to Map<String, Any>?
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (769, 36): Type mismatch: inferred type is String? but String was expected
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (786, 15): Unchecked cast: Any to Map<String, Any>
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (918, 49): Unchecked cast: Any? to Map<String, Any>?
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1019, 43): Unchecked cast: Any? to Map<String, Any>?
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1031, 9): 'execute(vararg FileSystemModule.DownloadResumableTaskParams?): AsyncTask<FileSystemModule.DownloadResumableTaskParams?, Void?, Void?>!' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1092, 47): 'AsyncTask<Params : Any!, Progress : Any!, Result : Any!>' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1092, 47): 'constructor AsyncTask<Params : Any!, Progress : Any!, Result : Any!>()' is deprecated. Deprecated in Java
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1105, 21): Variable 'count' initializer is redundant
w: /app/node_modules/expo-file-system/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt: (1276, 35): Type mismatch: inferred type is String? but String was expected

> Task :expo-file-system:compileDebugJavaWithJavac
> Task :expo-file-system:bundleLibCompileToJarDebug

> Task :expo-font:compileDebugKotlin
w: /app/node_modules/expo-font/android/src/main/java/expo/modules/font/FontLoaderModule.kt: (55, 38): Type mismatch: inferred type is String? but String was expected

> Task :expo-font:compileDebugJavaWithJavac
> Task :expo-font:bundleLibCompileToJarDebug
> Task :expo-keep-awake:compileDebugKotlin
> Task :expo-keep-awake:compileDebugJavaWithJavac
> Task :expo-keep-awake:bundleLibCompileToJarDebug
> Task :expo-linear-gradient:compileDebugKotlin
> Task :expo-linear-gradient:compileDebugJavaWithJavac
> Task :expo-linear-gradient:bundleLibCompileToJarDebug

> Task :expo-localization:compileDebugKotlin
w: /app/node_modules/expo-localization/android/src/main/java/expo/modules/localization/LocalizationModule.kt: (75, 35): 'locale: Locale!' is deprecated. Deprecated in Java

> Task :expo-localization:compileDebugJavaWithJavac
> Task :expo-localization:bundleLibCompileToJarDebug

> Task :react-native-async-storage_async-storage:compileDebugJavaWithJavac
Note: /app/node_modules/@react-native-async-storage/async-storage/android/src/main/java/com/reactnativecommunity/asyncstorage/AsyncStorageModule.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /app/node_modules/@react-native-async-storage/async-storage/android/src/main/java/com/reactnativecommunity/asyncstorage/AsyncStoragePackage.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :react-native-async-storage_async-storage:bundleLibCompileToJarDebug
> Task :react-native-community_masked-view:generateDebugBuildConfig
> Task :react-native-community_masked-view:javaPreCompileDebug
> Task :react-native-gesture-handler:generateDebugBuildConfig
> Task :react-native-community_masked-view:compileDebugJavaWithJavac
> Task :react-native-community_masked-view:bundleLibCompileToJarDebug
> Task :react-native-gesture-handler:javaPreCompileDebug
> Task :react-native-safe-area-context:generateDebugBuildConfig

> Task :react-native-gesture-handler:compileDebugJavaWithJavac

> Task :react-native-safe-area-context:javaPreCompileDebug
> Task :react-native-screens:generateDebugBuildConfig
> Task :react-native-gesture-handler:bundleLibCompileToJarDebug
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :react-native-safe-area-context:compileDebugJavaWithJavac

> Task :react-native-safe-area-context:bundleLibCompileToJarDebug
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

> Task :react-native-screens:compileDebugKotlin
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/Screen.kt: (80, 26): 'constructor GuardedRunnable(ReactContext!)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt: (59, 28): 'setter for targetElevation: Float' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackFragment.kt: (142, 28): 'setter for targetElevation: Float' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.kt: (154, 56): 'getter for systemWindowInsetTop: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenStackHeaderConfig.kt: (222, 29): 'setColorFilter(Int, PorterDuff.Mode): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (56, 22): 'constructor GuardedRunnable(ReactContext!)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (84, 57): 'getter for systemUiVisibility: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (86, 53): 'SYSTEM_UI_FLAG_LIGHT_STATUS_BAR: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (88, 54): 'SYSTEM_UI_FLAG_LIGHT_STATUS_BAR: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (90, 27): 'setter for systemUiVisibility: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (106, 22): 'constructor GuardedRunnable(ReactContext!)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (115, 43): 'replaceSystemWindowInsets(Int, Int, Int, Int): WindowInsets' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (116, 47): 'getter for systemWindowInsetLeft: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (118, 47): 'getter for systemWindowInsetRight: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (119, 47): 'getter for systemWindowInsetBottom: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (138, 69): 'FLAG_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (139, 71): 'FLAG_FORCE_NOT_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (141, 69): 'FLAG_FORCE_NOT_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/ScreenWindowTraits.kt: (142, 71): 'FLAG_FULLSCREEN: Int' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (7, 51): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (17, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/HeaderBackButtonClickedEvent.kt: (18, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (7, 40): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenAppearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (7, 43): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDisappearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (7, 43): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenDismissedEvent.kt: (17, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (13, 5): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (22, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenTransitionProgressEvent.kt: (27, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (7, 44): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillAppearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (7, 47): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/ScreenWillDisappearEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (5, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (7, 52): 'constructor Event<T : Event<(raw) Event<*>>!>(Int)' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (13, 44): 'RCTEventEmitter' is deprecated. Deprecated in Java
w: /app/node_modules/react-native-screens/android/src/main/java/com/swmansion/rnscreens/events/StackFinishTransitioningEvent.kt: (14, 25): 'receiveEvent(Int, String!, WritableMap?): Unit' is deprecated. Deprecated in Java

> Task :react-native-screens:javaPreCompileDebug
> Task :react-native-screens:compileDebugJavaWithJavac
> Task :react-native-splash-screen:generateDebugBuildConfig
> Task :react-native-screens:bundleLibCompileToJarDebug
> Task :app:javaPreCompileDebug
> Task :app:mergeDebugNativeDebugMetadata NO-SOURCE
> Task :react-native-splash-screen:javaPreCompileDebug
> Task :app:compressDebugAssets
> Task :react-native-splash-screen:compileDebugJavaWithJavac
> Task :react-native-splash-screen:bundleLibCompileToJarDebug
> Task :expo:generateDebugRFile
> Task :expo-error-recovery:compileDebugKotlin
> Task :expo-error-recovery:compileDebugJavaWithJavac
> Task :app:processDebugJavaRes NO-SOURCE
> Task :expo-error-recovery:bundleLibCompileToJarDebug
> Task :expo:processDebugJavaRes NO-SOURCE
> Task :expo-application:processDebugJavaRes NO-SOURCE
> Task :expo-constants:cleanupDebugExpoConfig
> Task :expo-application:bundleLibResDebug
> Task :app:processDebugResources
> Task :expo:compileDebugKotlin
> Task :expo:compileDebugJavaWithJavac
> Task :expo:bundleLibCompileToJarDebug
> Task :expo-constants:processDebugJavaRes NO-SOURCE
> Task :expo:bundleLibResDebug
> Task :expo-constants:bundleLibResDebug
> Task :expo-error-recovery:processDebugJavaRes NO-SOURCE
> Task :expo-error-recovery:bundleLibResDebug
> Task :expo-file-system:processDebugJavaRes NO-SOURCE
> Task :expo-file-system:bundleLibResDebug
> Task :expo-font:processDebugJavaRes NO-SOURCE
> Task :expo-keep-awake:processDebugJavaRes NO-SOURCE
> Task :expo-linear-gradient:processDebugJavaRes NO-SOURCE
> Task :expo-font:bundleLibResDebug
> Task :expo-keep-awake:bundleLibResDebug
> Task :expo-linear-gradient:bundleLibResDebug
> Task :expo-localization:processDebugJavaRes NO-SOURCE
> Task :expo-modules-core:processDebugJavaRes NO-SOURCE
> Task :expo-localization:bundleLibResDebug
> Task :expo-modules-core:bundleLibResDebug
> Task :app:compileDebugKotlin
Note: /app/android/app/src/debug/java/com/chuckthejoker/ReactNativeFlipper.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

> Task :app:compileDebugJavaWithJavac

> Task :app:compileDebugSources
> Task :react-native-async-storage_async-storage:processDebugJavaRes NO-SOURCE
> Task :react-native-async-storage_async-storage:bundleLibResDebug NO-SOURCE
> Task :react-native-community_masked-view:processDebugJavaRes NO-SOURCE
> Task :react-native-community_masked-view:bundleLibResDebug NO-SOURCE
> Task :react-native-gesture-handler:processDebugJavaRes NO-SOURCE
> Task :react-native-gesture-handler:bundleLibResDebug NO-SOURCE
> Task :react-native-safe-area-context:processDebugJavaRes NO-SOURCE
> Task :react-native-safe-area-context:bundleLibResDebug NO-SOURCE
> Task :react-native-screens:processDebugJavaRes NO-SOURCE
> Task :react-native-screens:bundleLibResDebug
> Task :react-native-splash-screen:processDebugJavaRes NO-SOURCE
> Task :react-native-splash-screen:bundleLibResDebug NO-SOURCE
> Task :app:checkDebugDuplicateClasses
> Task :react-native-async-storage_async-storage:bundleLibRuntimeToJarDebug
> Task :react-native-community_masked-view:bundleLibRuntimeToJarDebug
> Task :expo-application:bundleLibRuntimeToJarDebug
> Task :expo-constants:bundleLibRuntimeToJarDebug
> Task :expo-error-recovery:bundleLibRuntimeToJarDebug
> Task :expo-font:bundleLibRuntimeToJarDebug
> Task :expo-keep-awake:bundleLibRuntimeToJarDebug
> Task :expo-file-system:bundleLibRuntimeToJarDebug
> Task :expo-linear-gradient:bundleLibRuntimeToJarDebug
> Task :expo-localization:bundleLibRuntimeToJarDebug
> Task :expo:bundleLibRuntimeToJarDebug
> Task :react-native-gesture-handler:bundleLibRuntimeToJarDebug
> Task :react-native-safe-area-context:bundleLibRuntimeToJarDebug
> Task :react-native-screens:bundleLibRuntimeToJarDebug
> Task :expo-modules-core:bundleLibRuntimeToJarDebug
> Task :react-native-splash-screen:bundleLibRuntimeToJarDebug
> Task :app:mergeDebugJavaResource
> Task :app:desugarDebugFileDependencies
> Task :app:dexBuilderDebug
> Task :app:mergeExtDexDebug
> Task :app:mergeDebugJniLibFolders
> Task :expo:mergeDebugJniLibFolders
> Task :expo:mergeDebugNativeLibs NO-SOURCE
> Task :expo:stripDebugDebugSymbols NO-SOURCE
> Task :expo-application:mergeDebugJniLibFolders
> Task :expo-application:mergeDebugNativeLibs NO-SOURCE
> Task :expo:copyDebugJniLibsProjectOnly
> Task :expo-application:stripDebugDebugSymbols NO-SOURCE
> Task :expo-application:copyDebugJniLibsProjectOnly
> Task :expo-constants:mergeDebugJniLibFolders
> Task :expo-constants:mergeDebugNativeLibs NO-SOURCE
> Task :expo-constants:stripDebugDebugSymbols NO-SOURCE
> Task :expo-constants:copyDebugJniLibsProjectOnly
> Task :expo-error-recovery:mergeDebugJniLibFolders
> Task :expo-error-recovery:mergeDebugNativeLibs NO-SOURCE
> Task :expo-error-recovery:stripDebugDebugSymbols NO-SOURCE
> Task :expo-error-recovery:copyDebugJniLibsProjectOnly
> Task :expo-file-system:mergeDebugJniLibFolders
> Task :expo-file-system:mergeDebugNativeLibs NO-SOURCE
> Task :expo-file-system:stripDebugDebugSymbols NO-SOURCE
> Task :expo-file-system:copyDebugJniLibsProjectOnly
> Task :expo-font:mergeDebugJniLibFolders
> Task :expo-font:mergeDebugNativeLibs NO-SOURCE
> Task :expo-font:stripDebugDebugSymbols NO-SOURCE
> Task :expo-font:copyDebugJniLibsProjectOnly
> Task :expo-keep-awake:mergeDebugJniLibFolders
> Task :expo-keep-awake:mergeDebugNativeLibs NO-SOURCE
> Task :expo-keep-awake:stripDebugDebugSymbols NO-SOURCE
> Task :expo-keep-awake:copyDebugJniLibsProjectOnly
> Task :expo-linear-gradient:mergeDebugJniLibFolders
> Task :expo-linear-gradient:mergeDebugNativeLibs NO-SOURCE
> Task :expo-linear-gradient:stripDebugDebugSymbols NO-SOURCE
> Task :expo-linear-gradient:copyDebugJniLibsProjectOnly
> Task :expo-localization:mergeDebugJniLibFolders
> Task :expo-localization:mergeDebugNativeLibs NO-SOURCE
> Task :expo-localization:stripDebugDebugSymbols NO-SOURCE
> Task :expo-localization:copyDebugJniLibsProjectOnly
> Task :expo-modules-core:mergeDebugJniLibFolders
> Task :expo-modules-core:mergeDebugNativeLibs NO-SOURCE
> Task :expo-modules-core:stripDebugDebugSymbols NO-SOURCE
> Task :expo-modules-core:copyDebugJniLibsProjectOnly
> Task :react-native-async-storage_async-storage:mergeDebugJniLibFolders
> Task :react-native-async-storage_async-storage:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-async-storage_async-storage:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-async-storage_async-storage:copyDebugJniLibsProjectOnly
> Task :react-native-community_masked-view:mergeDebugJniLibFolders
> Task :react-native-community_masked-view:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-community_masked-view:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-community_masked-view:copyDebugJniLibsProjectOnly
> Task :react-native-gesture-handler:mergeDebugJniLibFolders
> Task :react-native-gesture-handler:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-gesture-handler:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-gesture-handler:copyDebugJniLibsProjectOnly
> Task :react-native-safe-area-context:mergeDebugJniLibFolders
> Task :react-native-safe-area-context:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-safe-area-context:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-screens:mergeDebugJniLibFolders
> Task :react-native-screens:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-screens:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-safe-area-context:copyDebugJniLibsProjectOnly
> Task :react-native-screens:copyDebugJniLibsProjectOnly
> Task :react-native-splash-screen:mergeDebugJniLibFolders
> Task :react-native-splash-screen:mergeDebugNativeLibs NO-SOURCE
> Task :react-native-splash-screen:stripDebugDebugSymbols NO-SOURCE
> Task :react-native-splash-screen:copyDebugJniLibsProjectOnly
> Task :app:validateSigningDebug
> Task :app:writeDebugAppMetadata
> Task :app:writeDebugSigningConfigVersions
> Task :expo:copyDebugJniLibsProjectAndLocalJars
> Task :app:mergeLibDexDebug
> Task :app:mergeProjectDexDebug
> Task :expo:extractDebugAnnotations
> Task :expo:mergeDebugGeneratedProguardFiles
> Task :expo:mergeDebugConsumerProguardFiles
> Task :expo:prepareLintJarForPublish
> Task :expo:mergeDebugJavaResource
> Task :expo:mergeDebugResources
> Task :expo:syncDebugLibJars
> Task :expo:bundleDebugAar
> Task :expo:compileDebugSources
> Task :expo:assembleDebug
> Task :expo-application:copyDebugJniLibsProjectAndLocalJars
> Task :expo-application:extractDebugAnnotations
> Task :expo-application:mergeDebugGeneratedProguardFiles
> Task :expo-application:mergeDebugConsumerProguardFiles
> Task :expo-application:prepareLintJarForPublish
> Task :expo-application:compileDebugSources
> Task :expo-constants:copyDebugJniLibsProjectAndLocalJars
> Task :expo-application:mergeDebugJavaResource
> Task :expo-constants:extractDebugAnnotations
> Task :expo-application:syncDebugLibJars
> Task :expo-application:bundleDebugAar
> Task :expo-application:assembleDebug
> Task :expo-constants:mergeDebugGeneratedProguardFiles
> Task :expo-constants:mergeDebugConsumerProguardFiles
> Task :expo-constants:prepareLintJarForPublish
> Task :expo-constants:compileDebugSources
> Task :expo-constants:mergeDebugJavaResource
> Task :expo-error-recovery:copyDebugJniLibsProjectAndLocalJars
> Task :expo-error-recovery:extractDebugAnnotations
> Task :expo-constants:syncDebugLibJars
> Task :expo-constants:bundleDebugAar
> Task :expo-constants:assembleDebug
> Task :expo-error-recovery:mergeDebugGeneratedProguardFiles
> Task :expo-error-recovery:mergeDebugConsumerProguardFiles
> Task :expo-error-recovery:compileDebugSources
> Task :expo-error-recovery:prepareLintJarForPublish
> Task :expo-file-system:copyDebugJniLibsProjectAndLocalJars
> Task :expo-error-recovery:mergeDebugJavaResource
> Task :expo-file-system:extractDebugAnnotations
> Task :expo-error-recovery:syncDebugLibJars
> Task :expo-error-recovery:bundleDebugAar
> Task :expo-error-recovery:assembleDebug
> Task :expo-file-system:mergeDebugGeneratedProguardFiles
> Task :expo-file-system:mergeDebugConsumerProguardFiles
> Task :expo-file-system:prepareLintJarForPublish
> Task :expo-file-system:compileDebugSources
> Task :expo-font:copyDebugJniLibsProjectAndLocalJars
> Task :expo-file-system:mergeDebugJavaResource
> Task :expo-font:extractDebugAnnotations
> Task :expo-file-system:syncDebugLibJars
> Task :expo-file-system:bundleDebugAar
> Task :expo-file-system:assembleDebug
> Task :expo-font:mergeDebugGeneratedProguardFiles
> Task :expo-font:mergeDebugConsumerProguardFiles
> Task :expo-font:prepareLintJarForPublish
> Task :expo-font:compileDebugSources
> Task :expo-keep-awake:copyDebugJniLibsProjectAndLocalJars
> Task :expo-font:mergeDebugJavaResource
> Task :expo-keep-awake:extractDebugAnnotations
> Task :expo-font:syncDebugLibJars
> Task :expo-font:bundleDebugAar
> Task :expo-font:assembleDebug
> Task :expo-keep-awake:mergeDebugGeneratedProguardFiles
> Task :expo-keep-awake:mergeDebugConsumerProguardFiles
> Task :expo-keep-awake:prepareLintJarForPublish
> Task :expo-keep-awake:compileDebugSources
> Task :expo-linear-gradient:copyDebugJniLibsProjectAndLocalJars
> Task :expo-keep-awake:mergeDebugJavaResource
> Task :expo-linear-gradient:extractDebugAnnotations
> Task :expo-keep-awake:syncDebugLibJars
> Task :expo-keep-awake:bundleDebugAar
> Task :expo-keep-awake:assembleDebug
> Task :expo-linear-gradient:mergeDebugGeneratedProguardFiles
> Task :expo-linear-gradient:mergeDebugConsumerProguardFiles
> Task :expo-linear-gradient:prepareLintJarForPublish
> Task :expo-linear-gradient:compileDebugSources
> Task :expo-localization:copyDebugJniLibsProjectAndLocalJars
> Task :expo-linear-gradient:mergeDebugJavaResource
> Task :expo-localization:extractDebugAnnotations
> Task :expo-linear-gradient:syncDebugLibJars
> Task :expo-linear-gradient:bundleDebugAar
> Task :expo-linear-gradient:assembleDebug
> Task :expo-localization:mergeDebugGeneratedProguardFiles
> Task :expo-localization:mergeDebugConsumerProguardFiles
> Task :expo-localization:prepareLintJarForPublish
> Task :expo-localization:compileDebugSources
> Task :expo-modules-core:copyDebugJniLibsProjectAndLocalJars
> Task :expo-localization:mergeDebugJavaResource
> Task :expo-modules-core:extractDebugAnnotations
> Task :expo-localization:syncDebugLibJars
> Task :expo-localization:bundleDebugAar
> Task :expo-localization:assembleDebug
> Task :expo-modules-core:mergeDebugGeneratedProguardFiles
> Task :expo-modules-core:mergeDebugConsumerProguardFiles
> Task :expo-modules-core:prepareLintJarForPublish
> Task :expo-modules-core:compileDebugSources
> Task :react-native-async-storage_async-storage:copyDebugJniLibsProjectAndLocalJars
> Task :expo-modules-core:mergeDebugJavaResource
> Task :react-native-async-storage_async-storage:extractDebugAnnotations
> Task :expo-modules-core:syncDebugLibJars
> Task :expo-modules-core:bundleDebugAar
> Task :expo-modules-core:assembleDebug
> Task :react-native-async-storage_async-storage:mergeDebugGeneratedProguardFiles
> Task :react-native-async-storage_async-storage:mergeDebugConsumerProguardFiles
> Task :react-native-async-storage_async-storage:compileDebugSources
> Task :react-native-async-storage_async-storage:prepareLintJarForPublish
> Task :react-native-community_masked-view:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-async-storage_async-storage:mergeDebugJavaResource
> Task :react-native-community_masked-view:extractDebugAnnotations
> Task :react-native-async-storage_async-storage:syncDebugLibJars
> Task :react-native-async-storage_async-storage:bundleDebugAar
> Task :react-native-async-storage_async-storage:assembleDebug
> Task :react-native-community_masked-view:mergeDebugGeneratedProguardFiles
> Task :react-native-community_masked-view:mergeDebugConsumerProguardFiles
> Task :react-native-community_masked-view:prepareLintJarForPublish
> Task :react-native-community_masked-view:compileDebugSources
> Task :react-native-community_masked-view:mergeDebugJavaResource
> Task :react-native-gesture-handler:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-community_masked-view:syncDebugLibJars
> Task :react-native-community_masked-view:bundleDebugAar
> Task :react-native-community_masked-view:assembleDebug
> Task :react-native-gesture-handler:extractDebugAnnotations
> Task :react-native-gesture-handler:mergeDebugGeneratedProguardFiles
> Task :react-native-gesture-handler:mergeDebugConsumerProguardFiles
> Task :react-native-gesture-handler:prepareLintJarForPublish
> Task :react-native-gesture-handler:compileDebugSources
> Task :react-native-safe-area-context:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-gesture-handler:mergeDebugJavaResource
> Task :react-native-safe-area-context:extractDebugAnnotations
> Task :react-native-gesture-handler:syncDebugLibJars
> Task :react-native-gesture-handler:bundleDebugAar
> Task :react-native-gesture-handler:assembleDebug
> Task :react-native-safe-area-context:mergeDebugGeneratedProguardFiles
> Task :react-native-safe-area-context:mergeDebugConsumerProguardFiles
> Task :react-native-safe-area-context:prepareLintJarForPublish
> Task :react-native-safe-area-context:compileDebugSources
> Task :react-native-screens:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-safe-area-context:mergeDebugJavaResource
> Task :react-native-screens:extractDebugAnnotations
> Task :react-native-safe-area-context:syncDebugLibJars
> Task :react-native-safe-area-context:bundleDebugAar
> Task :react-native-safe-area-context:assembleDebug
> Task :react-native-screens:mergeDebugGeneratedProguardFiles
> Task :react-native-screens:mergeDebugConsumerProguardFiles
> Task :react-native-screens:prepareLintJarForPublish
> Task :react-native-screens:compileDebugSources
> Task :react-native-splash-screen:copyDebugJniLibsProjectAndLocalJars
> Task :react-native-screens:mergeDebugJavaResource
> Task :react-native-splash-screen:extractDebugAnnotations
> Task :react-native-screens:syncDebugLibJars
> Task :react-native-screens:bundleDebugAar
> Task :react-native-screens:assembleDebug
> Task :react-native-splash-screen:mergeDebugGeneratedProguardFiles
> Task :react-native-splash-screen:mergeDebugConsumerProguardFiles
> Task :react-native-splash-screen:prepareLintJarForPublish
> Task :react-native-splash-screen:compileDebugSources
> Task :react-native-splash-screen:mergeDebugJavaResource
> Task :app:mergeDebugNativeLibs

> Task :app:stripDebugDebugSymbols
Unable to strip the following libraries, packaging them as they are: libbetter.so, libc++_shared.so, libevent-2.1.so, libevent_core-2.1.so, libevent_extra-2.1.so, libfabricjni.so, libfb.so, libfbjni.so, libflipper.so, libfolly_futures.so, libfolly_json.so, libgifimage.so, libglog.so, libglog_init.so, libhermes-executor-common-debug.so, libhermes-executor-debug.so, libhermes-inspector.so, libhermes.so, libimagepipeline.so, libjsi.so, libjsijniprofiler.so, libjsinspector.so, liblogger.so, libmapbufferjni.so, libnative-filters.so, libnative-imagetranscoder.so, libreact_codegen_rncore.so, libreact_debug.so, libreact_nativemodule_core.so, libreact_render_animations.so, libreact_render_attributedstring.so, libreact_render_componentregistry.so, libreact_render_core.so, libreact_render_debug.so, libreact_render_graphics.so, libreact_render_imagemanager.so, libreact_render_leakchecker.so, libreact_render_mapbuffer.so, libreact_render_mounting.so, libreact_render_runtimescheduler.so, libreact_render_scheduler.so, libreact_render_telemetry.so, libreact_render_templateprocessor.so, libreact_render_textlayoutmanager.so, libreact_render_uimanager.so, libreact_utils.so, libreactconfig.so, libreactnativeblob.so, libreactnativejni.so, libreactnativeutilsjni.so, libreactperfloggerjni.so, librrc_image.so, librrc_modal.so, librrc_progressbar.so, librrc_root.so, librrc_scrollview.so, librrc_slider.so, librrc_switch.so, librrc_text.so, librrc_textinput.so, librrc_unimplementedview.so, librrc_view.so, libstatic-webp.so, libturbomodulejsijni.so, libyoga.so.

> Task :react-native-splash-screen:syncDebugLibJars
> Task :react-native-splash-screen:bundleDebugAar
> Task :react-native-splash-screen:assembleDebug
> Task :app:packageDebug
> Task :app:assembleDebug

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings

Execution optimizations have been disabled for 1 invalid unit(s) of work during this build to ensure correctness.
Please consult deprecation warnings for more details.

BUILD SUCCESSFUL in 4m 9s
458 actionable tasks: 458 executed

> docker run --rm -v /home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output -v /home/ubuntu/.npm:/root/.npm react-android:22-jdk11 bash -c 
                set -e

                cp -r /source/. /app &&                 cd /app && 
                # ---- install deps (yarn or npm) ----
                if [ -f yarn.lock ]; then
                    yarn install;
                else
                    npm install --ignore-scripts;
                fi && 
                # ---- stub missing parent package.json (monorepo metro configs) ----
                [ ! -f ../package.json ] && cp package.json ../package.json 2>/dev/null || true && 
                # ---- patch toReversed (Node <20 compat) ----
                find node_modules -name "loadConfig.js" -path "*/metro-config/*" -exec sed -i 's/\.toReversed()/.slice().reverse()/g' {} \; 2>/dev/null || true && 
                # ---- patch missing expo/AppEntry ----
                if grep -q '"main".*expo/AppEntry' package.json 2>/dev/null &&                    [ ! -f node_modules/expo/AppEntry.js ] && [ ! -f node_modules/expo/AppEntry.ts ]; then                     node -e "const fs=require('fs'); const p=JSON.parse(fs.readFileSync('package.json','utf8')); if(fs.existsSync('index.js')){p.main='index.js'; fs.writeFileSync('package.json',JSON.stringify(p,null,2));}" 2>/dev/null || true;                 fi && 
                # ---- patch broken metro config (ESM-only, null-returning, or monorepo-only) ----
                # NOTE: do NOT replace configs that merely use expo/metro-config — those carry
                # Expo-specific resolver paths (watchFolders, extraNodeModules) needed for
                # packages like @react-native-masked-view/masked-view to resolve.
                if grep -q 'react-native-monorepo-config' metro.config.js 2>/dev/null ||                    ! node -e "const c=require('./metro.config.js'); if(!c||typeof c!=='object') process.exit(1);" 2>/dev/null; then                     if [ -d node_modules/@react-native/metro-config ]; then                         printf 'const {getDefaultConfig, mergeConfig} = require("@react-native/metro-config");
module.exports = mergeConfig(getDefaultConfig(__dirname), {});
' > metro.config.js;                     else                         printf 'const {getDefaultConfig} = require("metro-config");
module.exports = getDefaultConfig(__dirname);
' > metro.config.js;                     fi;                 fi && 
                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----
                if [ ! -f google-services.json ]; then                     python3 -c "import json; open('google-services.json','w').write(json.dumps({'project_info':{'project_number':'000000000000','project_id':'stub','storage_bucket':'stub.appspot.com'},'client':[{'client_info':{'mobilesdk_app_id':'1:000000000000:android:0000000000000000','android_client_info':{'package_name':'com.stub'}},'oauth_client':[],'api_key':[{'current_key':'stub'}],'services':{'appinvite_service':{'other_platform_oauth_client':[]}}}],'configuration_version':'1'}))" 2>/dev/null || true;                 fi && 
                # ---- detect expo ----
                if grep -q '"expo"' package.json && [ ! -d android ]; then
                    echo "Expo project detected";
                    CI=1 npx --yes expo prebuild --platform android
                fi && 
                # ---- fix expo/metro-config: serializer + Flow transformIgnorePatterns ----
                # Runs AFTER prebuild because prebuild generates metro.config.js for managed-workflow
                # projects — patching before prebuild would be overwritten by the generated file.
                # Fix 1: remove customSerializer that returns JS string instead of JSON
                #   ("var __BUND..." → "Serializer did not return expected format").
                # Fix 2: add transformIgnorePatterns so expo/src/Expo.ts goes through Babel
                #   (default pattern excludes all node_modules → raw Flow types → SyntaxError).
                if [ -f metro.config.js ] && [ -d node_modules/expo ] &&                    ( grep -q 'expo/metro-config\|@expo/metro-config' metro.config.js 2>/dev/null ||                      ! grep -q 'transformIgnorePatterns' metro.config.js 2>/dev/null ); then                     cp metro.config.js metro.config.orig.js &&                     printf 'const c=require("./metro.config.orig.js");const r=Object.assign({},c);if(r.serializer){r.serializer=Object.assign({},r.serializer);delete r.serializer.customSerializer;}r.transformer=Object.assign({},r.transformer||{});if(!r.transformer.transformIgnorePatterns){r.transformer.transformIgnorePatterns=["node_modules/(?!(react-native|@react-native|expo|@expo|@unimodules|react-clone-referenced-element|@react-navigation|native-base)/)"];}module.exports=r;\n' > metro.config.js;                 fi && 
                # ---- stub missing metro watchFolders paths ----
                mkdir -p /src 2>/dev/null || true && 
                # ---- fix babel configs that use react-native-builder-bob ----
                # builder-bob is a library-dev tool; its getConfig() throws "Couldn't determine the source
                # directory" when built outside the library's own workspace. Replace with a standard preset.
                if grep -ql 'react-native-builder-bob' babel.config.js babel.config.json .babelrc .babelrc.js 2>/dev/null; then                     if [ -d node_modules/babel-preset-expo ]; then                         printf 'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};
' > babel.config.js;                     elif [ -d node_modules/@react-native/babel-preset ]; then                         printf 'module.exports={presets:["module:@react-native/babel-preset"]};' > babel.config.js;                     else                         printf 'module.exports={presets:["module:metro-react-native-babel-preset"]};' > babel.config.js;                     fi;                 fi && 
                # ---- ensure TypeScript babel support (fixes 'interface' SyntaxError in metro bundling) ----
                if [ -d node_modules/babel-preset-expo ]; then                     grep -ql "expo\|typescript" babel.config.js .babelrc .babelrc.js babel.config.json 2>/dev/null ||                     printf 'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};
' > babel.config.js;                 fi && 
                # ---- stub missing-asset-registry-path (Metro virtual module not resolved in release) ----
                # Metro normally aliases this to @react-native/assets-registry/registry at bundle time.
                # When that alias is missing, any PNG asset in node_modules triggers "Unable to resolve module".
                if [ ! -d node_modules/missing-asset-registry-path ]; then                     mkdir -p node_modules/missing-asset-registry-path &&                     if [ -f node_modules/@react-native/assets-registry/registry.js ]; then                         printf 'module.exports=require("@react-native/assets-registry/registry");' > node_modules/missing-asset-registry-path/index.js;                     else                         printf 'module.exports={registerAsset:function(){return 0;},getAssetByID:function(){return null;}};' > node_modules/missing-asset-registry-path/index.js;                     fi;                 fi && 
                # ---- stub @react-native-masked-view/masked-view if missing ----
                # Required by @react-navigation/elements but often not installed as a direct dependency.
                if [ ! -d node_modules/@react-native-masked-view/masked-view ]; then                     mkdir -p node_modules/@react-native-masked-view/masked-view &&                     printf '{"name":"@react-native-masked-view/masked-view","version":"0.1.11","main":"index.js"}' > node_modules/@react-native-masked-view/masked-view/package.json &&                     printf 'const React=require("react");const {View}=require("react-native");function MaskedView(p){return React.createElement(View,p.style?{style:p.style}:{},p.children);}module.exports=MaskedView;module.exports.default=MaskedView;' > node_modules/@react-native-masked-view/masked-view/index.js;                 fi && 
                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && 
                chmod +x gradlew && 
                # ---- inject fallback repositories via Gradle init script ----
                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo 'gradle.beforeProject {project ->' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.buildscript.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  project.repositories {' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://maven.google.com"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://repo1.maven.org/maven2"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://plugins.gradle.org/m2/"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '    maven {url "https://jitpack.io"}' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '  }' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo '}' >> $GRADLE_USER_HOME/init.d/repos.gradle && 
                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----
                sed -i 's/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\/.bin\/react-native config")/' settings.gradle 2>/dev/null || true && 
                # ---- disable Sentry source map upload (no credentials in CI) ----
                export SENTRY_DISABLE_AUTO_UPLOAD=true &&                 echo "sentryUploadEnabled=false" >> gradle.properties 2>/dev/null || true && 
                # ---- enable ABI splits ----
                if grep -q 'splits' app/build.gradle 2>/dev/null; then                     sed -i 's/enable false/enable true/' app/build.gradle || true;                 else                     sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' app/build.gradle || true;                 fi && 
                # ---- enable R8 ----
                sed -i 's/enableProguardInReleaseBuilds = false/enableProguardInReleaseBuilds = true/' app/build.gradle || true && 
                # ---- sign release with debug key ----
                sed -i '/buildTypes/,/}/s/release {/release {
            signingConfig signingConfigs.debug/' app/build.gradle || true && 
                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----
                ./gradlew :app:dependencies --configuration releaseCompileClasspath --no-daemon > /dev/null 2>&1 || true && 
                # ---- build release apk ----
                ./gradlew assembleRelease --no-daemon || exit 1 &&                     
                APK_PATH="app/build/outputs/apk/release"

                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then
                    echo "ERROR: APK not generated"
                    exit 1
                fi

                # ---- copy output ----
                cp app/build/outputs/apk/release/*.apk /output/r8/

                # ---- copy TPL metadata ----
                [ -f ../package.json ] && cp ../package.json /output/r8/ || true
                [ -f ../package-lock.json ] && cp ../package-lock.json /output/r8/ || true
                [ -f ../yarn.lock ] && cp ../yarn.lock /output/r8/ || true
                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/r8/ || true
                [ -f app/build.gradle ] && cp app/build.gradle /output/r8/android-build.gradle || true
                [ -f build.gradle ] && cp build.gradle /output/r8/root-build.gradle || true
                [ -f build.gradle.kts ] && cp build.gradle.kts /output/r8/root-build.gradle.kts || true
                [ -f settings.gradle ] && cp settings.gradle /output/r8/ || true
                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/r8/ || true
                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/r8/ || true
                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true
                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true
                mkdir -p /output/r8/libs
                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
                    

ERROR: Command timed out

> echo Build failed with Node 22 and jdk version 11 with the following error: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'react-android:22-jdk11', 'bash', '-c', '\n                set -e\n\n                cp -r /source/. /app &&                 cd /app && \n                # ---- install deps (yarn or npm) ----\n                if [ -f yarn.lock ]; then\n                    yarn install;\n                else\n                    npm install --ignore-scripts;\n                fi && \n                # ---- stub missing parent package.json (monorepo metro configs) ----\n                [ ! -f ../package.json ] && cp package.json ../package.json 2>/dev/null || true && \n                # ---- patch toReversed (Node <20 compat) ----\n                find node_modules -name "loadConfig.js" -path "*/metro-config/*" -exec sed -i \'s/\\.toReversed()/.slice().reverse()/g\' {} \\; 2>/dev/null || true && \n                # ---- patch missing expo/AppEntry ----\n                if grep -q \'"main".*expo/AppEntry\' package.json 2>/dev/null &&                    [ ! -f node_modules/expo/AppEntry.js ] && [ ! -f node_modules/expo/AppEntry.ts ]; then                     node -e "const fs=require(\'fs\'); const p=JSON.parse(fs.readFileSync(\'package.json\',\'utf8\')); if(fs.existsSync(\'index.js\')){p.main=\'index.js\'; fs.writeFileSync(\'package.json\',JSON.stringify(p,null,2));}" 2>/dev/null || true;                 fi && \n                # ---- patch broken metro config (ESM-only, null-returning, or monorepo-only) ----\n                # NOTE: do NOT replace configs that merely use expo/metro-config — those carry\n                # Expo-specific resolver paths (watchFolders, extraNodeModules) needed for\n                # packages like @react-native-masked-view/masked-view to resolve.\n                if grep -q \'react-native-monorepo-config\' metro.config.js 2>/dev/null ||                    ! node -e "const c=require(\'./metro.config.js\'); if(!c||typeof c!==\'object\') process.exit(1);" 2>/dev/null; then                     if [ -d node_modules/@react-native/metro-config ]; then                         printf \'const {getDefaultConfig, mergeConfig} = require("@react-native/metro-config");\nmodule.exports = mergeConfig(getDefaultConfig(__dirname), {});\n\' > metro.config.js;                     else                         printf \'const {getDefaultConfig} = require("metro-config");\nmodule.exports = getDefaultConfig(__dirname);\n\' > metro.config.js;                     fi;                 fi && \n                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----\n                if [ ! -f google-services.json ]; then                     python3 -c "import json; open(\'google-services.json\',\'w\').write(json.dumps({\'project_info\':{\'project_number\':\'000000000000\',\'project_id\':\'stub\',\'storage_bucket\':\'stub.appspot.com\'},\'client\':[{\'client_info\':{\'mobilesdk_app_id\':\'1:000000000000:android:0000000000000000\',\'android_client_info\':{\'package_name\':\'com.stub\'}},\'oauth_client\':[],\'api_key\':[{\'current_key\':\'stub\'}],\'services\':{\'appinvite_service\':{\'other_platform_oauth_client\':[]}}}],\'configuration_version\':\'1\'}))" 2>/dev/null || true;                 fi && \n                # ---- detect expo ----\n                if grep -q \'"expo"\' package.json && [ ! -d android ]; then\n                    echo "Expo project detected";\n                    CI=1 npx --yes expo prebuild --platform android\n                fi && \n                # ---- fix expo/metro-config: serializer + Flow transformIgnorePatterns ----\n                # Runs AFTER prebuild because prebuild generates metro.config.js for managed-workflow\n                # projects — patching before prebuild would be overwritten by the generated file.\n                # Fix 1: remove customSerializer that returns JS string instead of JSON\n                #   ("var __BUND..." → "Serializer did not return expected format").\n                # Fix 2: add transformIgnorePatterns so expo/src/Expo.ts goes through Babel\n                #   (default pattern excludes all node_modules → raw Flow types → SyntaxError).\n                if [ -f metro.config.js ] && [ -d node_modules/expo ] &&                    ( grep -q \'expo/metro-config\\|@expo/metro-config\' metro.config.js 2>/dev/null ||                      ! grep -q \'transformIgnorePatterns\' metro.config.js 2>/dev/null ); then                     cp metro.config.js metro.config.orig.js &&                     printf \'const c=require("./metro.config.orig.js");const r=Object.assign({},c);if(r.serializer){r.serializer=Object.assign({},r.serializer);delete r.serializer.customSerializer;}r.transformer=Object.assign({},r.transformer||{});if(!r.transformer.transformIgnorePatterns){r.transformer.transformIgnorePatterns=["node_modules/(?!(react-native|@react-native|expo|@expo|@unimodules|react-clone-referenced-element|@react-navigation|native-base)/)"];}module.exports=r;\\n\' > metro.config.js;                 fi && \n                # ---- stub missing metro watchFolders paths ----\n                mkdir -p /src 2>/dev/null || true && \n                # ---- fix babel configs that use react-native-builder-bob ----\n                # builder-bob is a library-dev tool; its getConfig() throws "Couldn\'t determine the source\n                # directory" when built outside the library\'s own workspace. Replace with a standard preset.\n                if grep -ql \'react-native-builder-bob\' babel.config.js babel.config.json .babelrc .babelrc.js 2>/dev/null; then                     if [ -d node_modules/babel-preset-expo ]; then                         printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                     elif [ -d node_modules/@react-native/babel-preset ]; then                         printf \'module.exports={presets:["module:@react-native/babel-preset"]};\' > babel.config.js;                     else                         printf \'module.exports={presets:["module:metro-react-native-babel-preset"]};\' > babel.config.js;                     fi;                 fi && \n                # ---- ensure TypeScript babel support (fixes \'interface\' SyntaxError in metro bundling) ----\n                if [ -d node_modules/babel-preset-expo ]; then                     grep -ql "expo\\|typescript" babel.config.js .babelrc .babelrc.js babel.config.json 2>/dev/null ||                     printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                 fi && \n                # ---- stub missing-asset-registry-path (Metro virtual module not resolved in release) ----\n                # Metro normally aliases this to @react-native/assets-registry/registry at bundle time.\n                # When that alias is missing, any PNG asset in node_modules triggers "Unable to resolve module".\n                if [ ! -d node_modules/missing-asset-registry-path ]; then                     mkdir -p node_modules/missing-asset-registry-path &&                     if [ -f node_modules/@react-native/assets-registry/registry.js ]; then                         printf \'module.exports=require("@react-native/assets-registry/registry");\' > node_modules/missing-asset-registry-path/index.js;                     else                         printf \'module.exports={registerAsset:function(){return 0;},getAssetByID:function(){return null;}};\' > node_modules/missing-asset-registry-path/index.js;                     fi;                 fi && \n                # ---- stub @react-native-masked-view/masked-view if missing ----\n                # Required by @react-navigation/elements but often not installed as a direct dependency.\n                if [ ! -d node_modules/@react-native-masked-view/masked-view ]; then                     mkdir -p node_modules/@react-native-masked-view/masked-view &&                     printf \'{"name":"@react-native-masked-view/masked-view","version":"0.1.11","main":"index.js"}\' > node_modules/@react-native-masked-view/masked-view/package.json &&                     printf \'const React=require("react");const {View}=require("react-native");function MaskedView(p){return React.createElement(View,p.style?{style:p.style}:{},p.children);}module.exports=MaskedView;module.exports.default=MaskedView;\' > node_modules/@react-native-masked-view/masked-view/index.js;                 fi && \n                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && \n                chmod +x gradlew && \n                # ---- inject fallback repositories via Gradle init script ----\n                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo \'gradle.beforeProject {project ->\' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.buildscript.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'}\' >> $GRADLE_USER_HOME/init.d/repos.gradle && \n                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----\n                sed -i \'s/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\\/.bin\\/react-native config")/\' settings.gradle 2>/dev/null || true && \n                # ---- disable Sentry source map upload (no credentials in CI) ----\n                export SENTRY_DISABLE_AUTO_UPLOAD=true &&                 echo "sentryUploadEnabled=false" >> gradle.properties 2>/dev/null || true && \n                # ---- enable ABI splits ----\n                if grep -q \'splits\' app/build.gradle 2>/dev/null; then                     sed -i \'s/enable false/enable true/\' app/build.gradle || true;                 else                     sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' app/build.gradle || true;                 fi && \n                # ---- enable R8 ----\n                sed -i \'s/enableProguardInReleaseBuilds = false/enableProguardInReleaseBuilds = true/\' app/build.gradle || true && \n                # ---- sign release with debug key ----\n                sed -i \'/buildTypes/,/}/s/release {/release {\n            signingConfig signingConfigs.debug/\' app/build.gradle || true && \n                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----\n                ./gradlew :app:dependencies --configuration releaseCompileClasspath --no-daemon > /dev/null 2>&1 || true && \n                # ---- build release apk ----\n                ./gradlew assembleRelease --no-daemon || exit 1 &&                     \n                APK_PATH="app/build/outputs/apk/release"\n\n                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then\n                    echo "ERROR: APK not generated"\n                    exit 1\n                fi\n\n                # ---- copy output ----\n                cp app/build/outputs/apk/release/*.apk /output/r8/\n\n                # ---- copy TPL metadata ----\n                [ -f ../package.json ] && cp ../package.json /output/r8/ || true\n                [ -f ../package-lock.json ] && cp ../package-lock.json /output/r8/ || true\n                [ -f ../yarn.lock ] && cp ../yarn.lock /output/r8/ || true\n                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/r8/ || true\n                [ -f app/build.gradle ] && cp app/build.gradle /output/r8/android-build.gradle || true\n                [ -f build.gradle ] && cp build.gradle /output/r8/root-build.gradle || true\n                [ -f build.gradle.kts ] && cp build.gradle.kts /output/r8/root-build.gradle.kts || true\n                [ -f settings.gradle ] && cp settings.gradle /output/r8/ || true\n                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/r8/ || true\n                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/r8/ || true\n                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                mkdir -p /output/r8/libs\n                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                    ']' timed out after 7200 seconds
Build failed with Node 22 and jdk version 11 with the following error: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/extracted/mthnglac-chuck-the-joker/chuck-the-joker-465f180f87e3dc085af846f4a1a0d42ee3ad78ce:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/RN/output/mthnglac-chuck-the-joker:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'react-android:22-jdk11', 'bash', '-c', '\n                set -e\n\n                cp -r /source/. /app &&                 cd /app && \n                # ---- install deps (yarn or npm) ----\n                if [ -f yarn.lock ]; then\n                    yarn install;\n                else\n                    npm install --ignore-scripts;\n                fi && \n                # ---- stub missing parent package.json (monorepo metro configs) ----\n                [ ! -f ../package.json ] && cp package.json ../package.json 2>/dev/null || true && \n                # ---- patch toReversed (Node <20 compat) ----\n                find node_modules -name "loadConfig.js" -path "*/metro-config/*" -exec sed -i \'s/\\.toReversed()/.slice().reverse()/g\' {} \\; 2>/dev/null || true && \n                # ---- patch missing expo/AppEntry ----\n                if grep -q \'"main".*expo/AppEntry\' package.json 2>/dev/null &&                    [ ! -f node_modules/expo/AppEntry.js ] && [ ! -f node_modules/expo/AppEntry.ts ]; then                     node -e "const fs=require(\'fs\'); const p=JSON.parse(fs.readFileSync(\'package.json\',\'utf8\')); if(fs.existsSync(\'index.js\')){p.main=\'index.js\'; fs.writeFileSync(\'package.json\',JSON.stringify(p,null,2));}" 2>/dev/null || true;                 fi && \n                # ---- patch broken metro config (ESM-only, null-returning, or monorepo-only) ----\n                # NOTE: do NOT replace configs that merely use expo/metro-config — those carry\n                # Expo-specific resolver paths (watchFolders, extraNodeModules) needed for\n                # packages like @react-native-masked-view/masked-view to resolve.\n                if grep -q \'react-native-monorepo-config\' metro.config.js 2>/dev/null ||                    ! node -e "const c=require(\'./metro.config.js\'); if(!c||typeof c!==\'object\') process.exit(1);" 2>/dev/null; then                     if [ -d node_modules/@react-native/metro-config ]; then                         printf \'const {getDefaultConfig, mergeConfig} = require("@react-native/metro-config");\nmodule.exports = mergeConfig(getDefaultConfig(__dirname), {});\n\' > metro.config.js;                     else                         printf \'const {getDefaultConfig} = require("metro-config");\nmodule.exports = getDefaultConfig(__dirname);\n\' > metro.config.js;                     fi;                 fi && \n                # ---- stub missing google-services.json (Firebase/Expo prebuild) ----\n                if [ ! -f google-services.json ]; then                     python3 -c "import json; open(\'google-services.json\',\'w\').write(json.dumps({\'project_info\':{\'project_number\':\'000000000000\',\'project_id\':\'stub\',\'storage_bucket\':\'stub.appspot.com\'},\'client\':[{\'client_info\':{\'mobilesdk_app_id\':\'1:000000000000:android:0000000000000000\',\'android_client_info\':{\'package_name\':\'com.stub\'}},\'oauth_client\':[],\'api_key\':[{\'current_key\':\'stub\'}],\'services\':{\'appinvite_service\':{\'other_platform_oauth_client\':[]}}}],\'configuration_version\':\'1\'}))" 2>/dev/null || true;                 fi && \n                # ---- detect expo ----\n                if grep -q \'"expo"\' package.json && [ ! -d android ]; then\n                    echo "Expo project detected";\n                    CI=1 npx --yes expo prebuild --platform android\n                fi && \n                # ---- fix expo/metro-config: serializer + Flow transformIgnorePatterns ----\n                # Runs AFTER prebuild because prebuild generates metro.config.js for managed-workflow\n                # projects — patching before prebuild would be overwritten by the generated file.\n                # Fix 1: remove customSerializer that returns JS string instead of JSON\n                #   ("var __BUND..." → "Serializer did not return expected format").\n                # Fix 2: add transformIgnorePatterns so expo/src/Expo.ts goes through Babel\n                #   (default pattern excludes all node_modules → raw Flow types → SyntaxError).\n                if [ -f metro.config.js ] && [ -d node_modules/expo ] &&                    ( grep -q \'expo/metro-config\\|@expo/metro-config\' metro.config.js 2>/dev/null ||                      ! grep -q \'transformIgnorePatterns\' metro.config.js 2>/dev/null ); then                     cp metro.config.js metro.config.orig.js &&                     printf \'const c=require("./metro.config.orig.js");const r=Object.assign({},c);if(r.serializer){r.serializer=Object.assign({},r.serializer);delete r.serializer.customSerializer;}r.transformer=Object.assign({},r.transformer||{});if(!r.transformer.transformIgnorePatterns){r.transformer.transformIgnorePatterns=["node_modules/(?!(react-native|@react-native|expo|@expo|@unimodules|react-clone-referenced-element|@react-navigation|native-base)/)"];}module.exports=r;\\n\' > metro.config.js;                 fi && \n                # ---- stub missing metro watchFolders paths ----\n                mkdir -p /src 2>/dev/null || true && \n                # ---- fix babel configs that use react-native-builder-bob ----\n                # builder-bob is a library-dev tool; its getConfig() throws "Couldn\'t determine the source\n                # directory" when built outside the library\'s own workspace. Replace with a standard preset.\n                if grep -ql \'react-native-builder-bob\' babel.config.js babel.config.json .babelrc .babelrc.js 2>/dev/null; then                     if [ -d node_modules/babel-preset-expo ]; then                         printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                     elif [ -d node_modules/@react-native/babel-preset ]; then                         printf \'module.exports={presets:["module:@react-native/babel-preset"]};\' > babel.config.js;                     else                         printf \'module.exports={presets:["module:metro-react-native-babel-preset"]};\' > babel.config.js;                     fi;                 fi && \n                # ---- ensure TypeScript babel support (fixes \'interface\' SyntaxError in metro bundling) ----\n                if [ -d node_modules/babel-preset-expo ]; then                     grep -ql "expo\\|typescript" babel.config.js .babelrc .babelrc.js babel.config.json 2>/dev/null ||                     printf \'module.exports=function(api){api.cache(true);return{presets:["babel-preset-expo"]};};\n\' > babel.config.js;                 fi && \n                # ---- stub missing-asset-registry-path (Metro virtual module not resolved in release) ----\n                # Metro normally aliases this to @react-native/assets-registry/registry at bundle time.\n                # When that alias is missing, any PNG asset in node_modules triggers "Unable to resolve module".\n                if [ ! -d node_modules/missing-asset-registry-path ]; then                     mkdir -p node_modules/missing-asset-registry-path &&                     if [ -f node_modules/@react-native/assets-registry/registry.js ]; then                         printf \'module.exports=require("@react-native/assets-registry/registry");\' > node_modules/missing-asset-registry-path/index.js;                     else                         printf \'module.exports={registerAsset:function(){return 0;},getAssetByID:function(){return null;}};\' > node_modules/missing-asset-registry-path/index.js;                     fi;                 fi && \n                # ---- stub @react-native-masked-view/masked-view if missing ----\n                # Required by @react-navigation/elements but often not installed as a direct dependency.\n                if [ ! -d node_modules/@react-native-masked-view/masked-view ]; then                     mkdir -p node_modules/@react-native-masked-view/masked-view &&                     printf \'{"name":"@react-native-masked-view/masked-view","version":"0.1.11","main":"index.js"}\' > node_modules/@react-native-masked-view/masked-view/package.json &&                     printf \'const React=require("react");const {View}=require("react-native");function MaskedView(p){return React.createElement(View,p.style?{style:p.style}:{},p.children);}module.exports=MaskedView;module.exports.default=MaskedView;\' > node_modules/@react-native-masked-view/masked-view/index.js;                 fi && \n                export PATH="/app/node_modules/.bin:$PATH" &&                 cd android && \n                chmod +x gradlew && \n                # ---- inject fallback repositories via Gradle init script ----\n                mkdir -p $GRADLE_USER_HOME/init.d &&                 echo \'gradle.beforeProject {project ->\' > $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.buildscript.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  project.repositories {\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://maven.google.com"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://repo1.maven.org/maven2"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://plugins.gradle.org/m2/"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'    maven {url "https://jitpack.io"}\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'  }\' >> $GRADLE_USER_HOME/init.d/repos.gradle &&                 echo \'}\' >> $GRADLE_USER_HOME/init.d/repos.gradle && \n                # ---- patch settings.gradle to use local react-native CLI (avoids npx failures) ----\n                sed -i \'s/autolinkLibrariesWithCommand()/autolinkLibrariesWithCommand("node node_modules\\/.bin\\/react-native config")/\' settings.gradle 2>/dev/null || true && \n                # ---- disable Sentry source map upload (no credentials in CI) ----\n                export SENTRY_DISABLE_AUTO_UPLOAD=true &&                 echo "sentryUploadEnabled=false" >> gradle.properties 2>/dev/null || true && \n                # ---- enable ABI splits ----\n                if grep -q \'splits\' app/build.gradle 2>/dev/null; then                     sed -i \'s/enable false/enable true/\' app/build.gradle || true;                 else                     sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' app/build.gradle || true;                 fi && \n                # ---- enable R8 ----\n                sed -i \'s/enableProguardInReleaseBuilds = false/enableProguardInReleaseBuilds = true/\' app/build.gradle || true && \n                # ---- sign release with debug key ----\n                sed -i \'/buildTypes/,/}/s/release {/release {\n            signingConfig signingConfigs.debug/\' app/build.gradle || true && \n                # ---- pre-resolve AAR transforms so CMake finds prefab paths ----\n                ./gradlew :app:dependencies --configuration releaseCompileClasspath --no-daemon > /dev/null 2>&1 || true && \n                # ---- build release apk ----\n                ./gradlew assembleRelease --no-daemon || exit 1 &&                     \n                APK_PATH="app/build/outputs/apk/release"\n\n                if ! ls $APK_PATH/*.apk 1> /dev/null 2>&1; then\n                    echo "ERROR: APK not generated"\n                    exit 1\n                fi\n\n                # ---- copy output ----\n                cp app/build/outputs/apk/release/*.apk /output/r8/\n\n                # ---- copy TPL metadata ----\n                [ -f ../package.json ] && cp ../package.json /output/r8/ || true\n                [ -f ../package-lock.json ] && cp ../package-lock.json /output/r8/ || true\n                [ -f ../yarn.lock ] && cp ../yarn.lock /output/r8/ || true\n                [ -f ../pnpm-lock.yaml ] && cp ../pnpm-lock.yaml /output/r8/ || true\n                [ -f app/build.gradle ] && cp app/build.gradle /output/r8/android-build.gradle || true\n                [ -f build.gradle ] && cp build.gradle /output/r8/root-build.gradle || true\n                [ -f build.gradle.kts ] && cp build.gradle.kts /output/r8/root-build.gradle.kts || true\n                [ -f settings.gradle ] && cp settings.gradle /output/r8/ || true\n                [ -f settings.gradle.kts ] && cp settings.gradle.kts /output/r8/ || true\n                [ -f gradle/libs.versions.toml ] && cp gradle/libs.versions.toml /output/r8/ || true\n                find . -name "*.gradle" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                find . -name "*.gradle.kts" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n                mkdir -p /output/r8/libs\n                find . -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.aar" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                find . -name "*.so" 2>/dev/null | grep -v "/build/" | grep -v "/.gradle/" | grep -v "/node_modules/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n                    ']' timed out after 7200 seconds
