-
Notifications
You must be signed in to change notification settings - Fork 24.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Xcode 14.3 - Error: Unable to resolve module ./Libraries/Components/DatePicker/DatePickerIOS #36794
Comments
|
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
Started going down that rabbit hole too
Xcode v14.3 Architecture: Apple Silicon (M1 Max) Had to manually change the Steps to reproduce: |
|
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
same issue |
1 similar comment
same issue |
This comment was marked as resolved.
This comment was marked as resolved.
Same issue |
1 similar comment
Same issue |
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as duplicate.
In version 0.71.8, the problem is the same as yours, after upgrading to version 0.71.11, the problem does not occur, and there are no more problems you mentioned. You can try clearing the cache. |
…7501) Summary: Pull Request resolved: facebook/react-native#37501 This is the iOS side of the fix for facebook/react-native#36794. That issue aside for the moment, the high-level idea here is to conceptually separate the bundle *request URL*, which represents a request for the *latest* bundle, from the *source URL* passed to JS engines, which should represent the code actually being executed. In future, we'd like to use this to refer to a point-in-time snapshot of the bundle, so that stack traces more often refer to the code that was actually run, even if it's since been updated on disk (actually implementing this isn't planned at the moment, but it helps describe the distinction). Short term, this separation gives us a way to address the issue with JSC on iOS 16.4 by allowing Metro to provide the client with a [JSC-safe URL](react-native-community/discussions-and-proposals#646) to pass to the JS engine, even where the request URL isn't JSC-safe. We'll deliver that URL to the client on HTTP bundle requests via the [`Content-Location`](https://www.rfc-editor.org/rfc/rfc9110#name-content-location) header, which is a published standard for communicating a location for the content provided in a successful response (typically used to provide a direct URL to an asset after content negotiation, but I think it fits here too). For the long-term goal we should follow up with the same functionality on Android and out-of-tree platforms, but it's non-essential for anything other than iOS 16.4 at the moment. For the issue fix to work end-to-end we'll also need to update Metro, but the two pieces are decoupled and non-breaking so it doesn't matter which lands first. Changelog: [iOS][Changed] Prefer `Content-Location` header in bundle response as JS source URL Reviewed By: huntie Differential Revision: D45950661 fbshipit-source-id: 170fcd63a098f81bdcba55ebde0cf3569dceb88d
When updating to version 0.71.11 the following error appears Error: Unable to resolve module ./Libraries/Components/DrawerAndroid/DrawerLayoutAndroid from /Volumes/Work/Projects/aolf-teacher-mobile-app-expo-47/node_modules/react-native/index.js: None of these files exist: node_modules/react-native/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid(.native|.native.ts|.ts|.native.tsx|.tsx|.native.js|.js|.native.jsx|.jsx|.native.json|.json) |
I have the same issue and I tried all the latest versions since 0.69.0. since these issues popped up I get this error too: ERROR Error uploading an image to Firebase Storage: [TypeError: undefined is not an object (evaluating 'ref._location')], when I try to upload the image to Firebase storage. I hope these are all related issues and fix is coming up soon. |
i"m also having the same issue |
I'm also getting the same issue now. Expo version 47.0.9 and React Native Version 0.70.8. |
same issue |
Me too have same issue even i cant change minimum target version to 12 cause my minimum supported ios version is 13 due to expo sdk v47.0 @robhogan Any help will be appriciated |
This seems to be a temporary workaround as you've written, and eventually Metro crashes due to a memory leak. Anyone know what's causing the leaks? Randomly started happening after XCode 14.3 |
A reminder that this fix is only included with RN 0.72.0 and RN 0.71.11. Fixes for 0.70.x and 0.69.x are coming but are not yet available. If you're experiencing this issue on RN 0.72.0 or 0.71.11, please let us know about your setup in as much detail as you can, ideally following the new issue guidelines. If you're not on one of those two versions the error is expected for now - please be patient and use the workaround steps linked in the OP in the meantime. Thanks! |
This is a good question but I'm 90% certain there's no leak as such - rather a loop between Metro and client where the failure to symbolicate causes a reload, which then raises an error that fails to symbolicate, etc. In some circumstances that means Metro is dealing with multiple parallel bundling and symbolication requests and simply runs out of memory trying to service too many requests. This aspect of the issue has been tricky to reproduce consistently so if anyone has any information to prove/disprove that theory we'd love to hear it. |
@robhogan Where I get stuck due to this released patch is not working for me. |
I am experiencing this same issue on Here are some info of my system. Let me know if you need more info: expo-env-info 1.0.5 environment info: |
Same issue, con react natiive 0.65.3 (latest patch) how can we fix this? Is there going to be a patch? I can't upgrade all my app since I have to upgrade navigator too and it's going to resolve in unstable application, having same issues on 16 apps, rn 0.64, etc... |
0.65 is outside the support window, I'm afraid we won't be backporting a fix that far. The |
@matheusnogs, @dennisdelima21pe - thanks for the reports, but it looks like you're both using Expo 47, with managed workflows. This has the native parts of React Native 0.70 "baked in" to Expo Go - updating You'll need to wait for an Expo release built with a fixed React Native version, or possibly move to a dev client workflow (I'm not an Expo expert and don't know whether updating RN native is supported that way). |
Thank you for getting back to me! Yeah very understandable. So after doing some testing, this issue is not present on devices/simulators running iOS 14 & 15. It instantly starts when running on iOS 16 device. (Running XCode 14.3) Creating a iOS 15 or 14 simulator "fixes" the leaks, in such a way that we can develop without restarting Metro every 5 minutes :) So as you've stated, seems to be an issue with the symbolic with Metro |
even after building the app in iOS 15, still the issue is occurring |
…7501) Summary: Pull Request resolved: #37501 This is the iOS side of the fix for #36794. That issue aside for the moment, the high-level idea here is to conceptually separate the bundle *request URL*, which represents a request for the *latest* bundle, from the *source URL* passed to JS engines, which should represent the code actually being executed. In future, we'd like to use this to refer to a point-in-time snapshot of the bundle, so that stack traces more often refer to the code that was actually run, even if it's since been updated on disk (actually implementing this isn't planned at the moment, but it helps describe the distinction). Short term, this separation gives us a way to address the issue with JSC on iOS 16.4 by allowing Metro to provide the client with a [JSC-safe URL](react-native-community/discussions-and-proposals#646) to pass to the JS engine, even where the request URL isn't JSC-safe. We'll deliver that URL to the client on HTTP bundle requests via the [`Content-Location`](https://www.rfc-editor.org/rfc/rfc9110#name-content-location) header, which is a published standard for communicating a location for the content provided in a successful response (typically used to provide a direct URL to an asset after content negotiation, but I think it fits here too). For the long-term goal we should follow up with the same functionality on Android and out-of-tree platforms, but it's non-essential for anything other than iOS 16.4 at the moment. For the issue fix to work end-to-end we'll also need to update Metro, but the two pieces are decoupled and non-breaking so it doesn't matter which lands first. Changelog: [iOS][Changed] Prefer `Content-Location` header in bundle response as JS source URL Reviewed By: huntie Differential Revision: D45950661 fbshipit-source-id: 170fcd63a098f81bdcba55ebde0cf3569dceb88d
Closing this issue as it has been fixed and it looks like patch releases have been done for 0.69 and above. Would be grateful if someone could lock it as well as it's not exactly attracting useful replies at this point... |
actually there's one more 0.70 patch needed, I forgot to cherry-pick a commit 🤦♂️ it will be out soon, after that I'll post an update here and we can lock it 👍 |
…7501) Summary: Pull Request resolved: #37501 This is the iOS side of the fix for #36794. That issue aside for the moment, the high-level idea here is to conceptually separate the bundle *request URL*, which represents a request for the *latest* bundle, from the *source URL* passed to JS engines, which should represent the code actually being executed. In future, we'd like to use this to refer to a point-in-time snapshot of the bundle, so that stack traces more often refer to the code that was actually run, even if it's since been updated on disk (actually implementing this isn't planned at the moment, but it helps describe the distinction). Short term, this separation gives us a way to address the issue with JSC on iOS 16.4 by allowing Metro to provide the client with a [JSC-safe URL](react-native-community/discussions-and-proposals#646) to pass to the JS engine, even where the request URL isn't JSC-safe. We'll deliver that URL to the client on HTTP bundle requests via the [`Content-Location`](https://www.rfc-editor.org/rfc/rfc9110#name-content-location) header, which is a published standard for communicating a location for the content provided in a successful response (typically used to provide a direct URL to an asset after content negotiation, but I think it fits here too). For the long-term goal we should follow up with the same functionality on Android and out-of-tree platforms, but it's non-essential for anything other than iOS 16.4 at the moment. For the issue fix to work end-to-end we'll also need to update Metro, but the two pieces are decoupled and non-breaking so it doesn't matter which lands first. Changelog: [iOS][Changed] Prefer `Content-Location` header in bundle response as JS source URL Reviewed By: huntie Differential Revision: D45950661 fbshipit-source-id: 170fcd63a098f81bdcba55ebde0cf3569dceb88d
👋 everyone! As briefly mentioned by @mjmasn above, we have now released patches for all recent versions of React Native to address this problem: 72, 71, 70 and 69 latest patches all contain the fixes made by @robhogan (huge thanks to him for his work👏). Please upgrade to those versions as soon as possible - and in particular please upgrade to a react native version that is part of the release support window policy; versions not in the window are not receiving any new patches. For other issues please open new, dedicated issues and provide repros and information to help the maintainers understand your problem. |
Just a final note, this is now fixed in React Native in versions: Users of older versions may try the workarounds and further details in this comment. Expo users will need to wait until their version of Expo SDK picks up the native side of these fixes - please track expo/expo#22008. If you're using a "fixed" version and still seeing this issue, please open a new issue with as much detail as you can. Thanks! |
This issue is now fixed, for more details check out this comment.
Description
Since upgrading to Xcode 14.3 and working around the other new issues i.e. the codegen ios target version issue, there is still a further issue with metro. Getting a lot of these type of errors. It seems to be every time metro logs a log line from iOS (not Android), it then logs the below message as well (full paths redacted).
This seems to cause a memory leak as well, with the metro node process eventually crashing when > 4GB RAM is used.
The error message is interesting for many reasons.
DatePickerIOS.ios.js
.DatePickerIOS
in the app.NOTE that this is not the codegen ios target version issue, I've already worked around that using the patch which has been released as 0.70.8
React Native Version
0.70.6
Output of
npx react-native info
Steps to reproduce
Running a previously working app on Xcode 14.3 / iOS simulator with rosetta
Snack, code example, screenshot, or link to a repository
Can't provide one at this stage
The text was updated successfully, but these errors were encountered: