realm / realm-js

Realm is a mobile database: an alternative to SQLite & key-value stores
https://realm.io
Apache License 2.0
5.74k stars 565 forks source link

Can't use Realm with new react native architecture #6810

Closed serhii-yalla closed 1 month ago

serhii-yalla commented 1 month ago

How frequently does the bug occur?

Always

Description

image image

Stacktrace & log output

No response

Can you reproduce the bug?

Always

Reproduction Steps

Just install latest realm on react native 0.74.0 project, enable new architecture, build project and here you go.

Version

12.11.1

What services are you using?

Local Database only

Are you using encryption?

No

Platform OS and version(s)

iOS 17.4

Build environment

Which debugger for React Native:

{
  "version": "0.3.1",
  "private": true,
  "scripts": {
    "run:ios": "react-native run-ios --simulator='iPad (10th generation)'",
    "run:ios:phone": "react-native run-ios --simulator='iPhone 15'",
    "run:ios:qa": "react-native run-ios --scheme qa --simulator='iPad (10th generation)'",
    "run:ios:staging": "react-native run-ios --scheme staging --simulator='iPad (10th generation)'",
    "run:ios:pro": "react-native run-ios --simulator='iPad Pro (12.9-inch)'",
    "run:ios:air": "react-native run-ios --simulator='iPad Air (5th generation)'",
    "run:ios:mini": "react-native run-ios --simulator='iPad mini (6th generation)'",
    "run:aos:dev": "yarn gradlew:clean && yarn setDevelopment react-native run-android --mode=developmentdebug --appIdSuffix=development",
    "run:aos:qa": "yarn gradlew:clean && yarn setQA react-native run-android --mode=qadebug --appIdSuffix=qa",
    "run:aos:staging": "yarn gradlew:clean && yarn setStaging react-native run-android --mode=stagingdebug --appIdSuffix=staging",
    "run:aos:prod": "yarn gradlew:clean && yarn setProduction react-native run-android --mode=productiondebug",
    "release:aos:dev": "yarn gradlew:clean && cd android && ./gradlew assembleDevelopmentRelease && cd ..",
    "release:aos:qa": "yarn gradlew:clean && cd android && ./gradlew assembleQaRelease && cd ..",
    "release:aos:prod": "yarn gradlew:clean && cd android && ./gradlew assembleProductionRelease && cd ..",
    "bundle:aos:dev": "yarn gradlew:clean && cd android && ./gradlew bundleDevelopmentRelease && cd ..",
    "bundle:aos:qa": "yarn gradlew:clean && cd android && ./gradlew bundleQaRelease && cd ..",
    "bundle:aos:prod": "yarn gradlew:clean && cd android && ./gradlew bundleProductionRelease && cd ..",
    "lint": "eslint --quiet src --ext .js,.jsx,.tsx",
    "start": "react-native start",
    "test": "jest",
    "prettier": "npx prettier --write src --config ./.prettierrc.js",
    "resetc": "yarn start -- --reset-cache",
    "deps:reinstall": "yarn cache clean && rm -rf node_modules && yarn && yarn pod:install && rm -rf nodejs-assets/nodejs-project/sample-package.json && rm -rf nodejs-assets/nodejs-project/sample-main.js && cd nodejs-assets/nodejs-project/ && npm i",
    "pod:install": "rm -rf ios/Pods && rm -rf ios/build && rm -rf ios/Podfile.lock && yarn ios:pod:install",
    "setDevelopment": "ENVFILE=.env.development",
    "setStaging": "ENVFILE=.env.staging",
    "setQA": "ENVFILE=.env.qa",
    "setProduction": "ENVFILE=.env.production",
    "ios:pod:install": "cd ios && bundle install &&  pod deintegrate && RCT_NEW_ARCH_ENABLED=1 bundle exec pod install && cd ..",
    "gradlew:clean": "cd android && ./gradlew clean && cd ..",
    "gradlew:assemble": "cd android && ./gradlew assembleRelease && cd ..",
    "generateSwagger": "npx swagger-typescript-api -p ./swagger.json -o ./ -n Api.ts"
  },
  "dependencies": {
    "@axenda/zatca": "^1.0.4",
    "@gorhom/bottom-sheet": "^4.6.1",
    "@notifee/react-native": "7.8.2",
    "@react-native-async-storage/async-storage": "^1.24.0",
    "@react-native-community/blur": "^4.4.0",
    "@react-native-community/netinfo": "^11.1.1",
    "@react-native-firebase/app": "^20.3.0",
    "@react-native-firebase/messaging": "^20.3.0",
    "@react-navigation/drawer": "^6.7.2",
    "@react-navigation/native": "^6.1.18",
    "@react-navigation/stack": "^6.4.1",
    "@realm/react": "^0.9.0",
    "@sentry/react-native": "5.19.1",
    "axios": "^1.5.0",
    "buffer": "^6.0.3",
    "crypto-js": "^4.2.0",
    "dayjs": "^1.11.9",
    "eslint-config-prettier": "^9.0.0",
    "eslint-plugin-prettier": "5.0.0",
    "eslint-plugin-react": "^7.33.2",
    "eslint-plugin-react-native": "^4.0.0",
    "eslint-plugin-typescript": "^0.14.0",
    "highlight-words-core": "^1.2.2",
    "i18next": "^23.5.1",
    "nodejs-mobile-react-native": "^18.17.7",
    "react": "18.2.0",
    "react-i18next": "^13.2.2",
    "react-native": "0.74.0",
    "react-native-codegen": "^0.70.7",
    "react-native-config": "^1.5.1",
    "react-native-device-info": "^10.13.2",
    "react-native-flash-message": "^0.4.2",
    "react-native-fs": "^2.20.0",
    "react-native-gesture-handler": "2.17.1",
    "react-native-keychain": "^7.0.0",
    "react-native-localize": "^3.0.6",
    "react-native-permissions": "3.10.1",
    "react-native-reanimated": "^3.14.0",
    "react-native-restart": "^0.0.27",
    "react-native-safe-area-context": "3.4.1",
    "react-native-screens": "^3.32.0",
    "react-native-select-dropdown": "^4.0.1",
    "react-native-svg": "^14.1.0",
    "react-native-uuid": "^2.0.1",
    "react-native-view-shot": "3.0.2",
    "react-qr-code": "^2.0.12",
    "realm": "^12.11.1",
    "rn-tooltip": "^3.0.3",
    "styled-components": "^5.3.9",
    "styled-system": "^5.1.5"
  },
  "devDependencies": {
    "@babel/core": "^7.20.0",
    "@babel/preset-env": "^7.20.0",
    "@babel/runtime": "^7.20.0",
    "@react-native/babel-preset": "0.74.81",
    "@react-native/eslint-config": "0.74.81",
    "@react-native/metro-config": "0.74.81",
    "@react-native/typescript-config": "0.74.81",
    "@types/crypto-js": "^4.2.2",
    "@types/highlight-words-core": "^1.2.3",
    "@types/lodash": "^4.17.0",
    "@types/react": "^18.2.6",
    "@types/react-native": "^0.73.0",
    "@types/react-test-renderer": "^18.0.0",
    "@types/styled-system": "^5.1.22",
    "@typescript-eslint/eslint-plugin": "5.62.0",
    "@typescript-eslint/parser": "5.62.0",
    "babel-jest": "^29.6.3",
    "babel-plugin-formatjs": "^10.5.13",
    "babel-plugin-module-resolver": "^5.0.0",
    "eslint": "^8.19.0",
    "eslint-plugin-react-hooks": "^4.6.0",
    "eslint-plugin-simple-import-sort": "^10.0.0",
    "jest": "^29.6.3",
    "metro": "0.76.8",
    "metro-react-native-babel-preset": "0.76.8",
    "prettier": "^3.3.3",
    "react-test-renderer": "18.2.0",
    "swagger-typescript-api": "^13.0.3",
    "typescript": "5.0.4",
    "typescript-eslint": "^7.1.1",
    "typescript-styled-plugin": "0.18.2"
  },
  "engines": {
    "node": ">=18"
  },
  "resolutions": {
    "react-native-reanimated": "^3",
    "styled-components": "^5"
  },
  "packageManager": "yarn@4.3.1"
}

Cocoapods version

1.15

sync-by-unito[bot] commented 1 month ago

➤ PM Bot commented:

Jira ticket: RJS-2872

kraenhansen commented 1 month ago

We added support for "bridgeless" in v12.12.0 and this symptom is what happened when loading with new architecture enabled (which enables bridgeless too from RN 0.74.0). It was released yesterday. Please upgrade to the latest version and report back if the issue persists.