kirillzyusko / react-native-keyboard-controller

Keyboard manager which works in identical way on both iOS and Android

Home Page:https://kirillzyusko.github.io/react-native-keyboard-controller/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Compilation Error on iOS with Fabric and `useFrameworks: 'static'`

davidjbng opened this issue · comments

Description

I get the following compilation error in my expo project

Compiling react-native-keyboard-controller Pods/react-native-keyboard-controller » KeyboardControllerView.mm

❌  (/Users/dj/Library/Developer/Xcode/DerivedData/rnkcrepro-fpszcknsvsireefsykksjmdcqkiw/Build/Products/Debug-iphonesimulator/React-Fabric/React_Fabric.framework/Headers/react/renderer/core/PropsParserContext.h:13:10)

  11 | 
  12 | #include <react/renderer/core/ReactPrimitives.h>
> 13 | #include <react/utils/ContextContainer.h>
     |          ^ 'react/utils/ContextContainer.h' file not found
  14 | 
  15 | namespace facebook::react {
  16 | 

The issue is caused by setting useFrameworks in app.json

"expo-build-properties",
{
  "ios": {
+ 	"useFrameworks": "static",
    "newArchEnabled": true
  },

Repo for reproducing

https://github.com/davidjbng/rnkc-repro

To Reproduce

Steps to reproduce the behavior:

npm i
npm run ios

Expected behavior

Compilation works with useFrameworks: 'static'

Version Infos

  • MacOS 14.3.1
  • XCode: 15.2
  • Only fails on iOS
  • RN architecture: Fabric
  • Library version: 1.11.1
    "expo": "^50.0.8",
    "expo-build-properties": "~0.11.0",
    "react": "18.2.0",
    "react-native": "0.73.4",
    "react-native-keyboard-controller": "^1.11.1"

Additional Context

Setting useFrameworks to static is required by React Native Firebase

Hey @davidjbng

Can you check if #308 fixes the problem?

Yes, it's fixed by applying the changes from #308. Thank you!

Awesome @davidjbng

The reason why I can not merge this PR is because I'm awaiting a new release from RN (0.72.x) which should include a fix that will allow to use new changes. Hopefully it'll be released soon and then I can test my changes, merge this branch and publish a new release 😎