iOS: Set RCTBundleConfiguration on RCTReactNativeFactory and pass it down to the RCTHost#54256
Closed
coado wants to merge 2 commits intofacebook:mainfrom
Closed
iOS: Set RCTBundleConfiguration on RCTReactNativeFactory and pass it down to the RCTHost#54256coado wants to merge 2 commits intofacebook:mainfrom
RCTBundleConfiguration on RCTReactNativeFactory and pass it down to the RCTHost#54256coado wants to merge 2 commits intofacebook:mainfrom
Conversation
RCTCustomBundleConfiguration on RCTReactNativeFactory and pass it down to the RCTHostRCTBundleConfiguration on RCTReactNativeFactory and pass it down to the RCTHost
83b30c6 to
b0a1068
Compare
b0a1068 to
44563f6
Compare
44563f6 to
ebf415a
Compare
…acebook#54006) Summary: ## Summary: Following the [RFC](react-native-community/discussions-and-proposals#933), this PR introduces a new `RCTBundleConfiguration` interface for modifying the bundle URL and exposes a new API for setting its instance in the `RCTReactNativeFactory`. The configuration object includes: - bundleFilePath - the URL of the bundle to load from the file system, - packagerServerScheme - the server scheme (e.g. http or https) to use when loading from the packager, - packagerServerHost - the server host (e.g. localhost) to use when loading from the packager. The `RCTBundleConfiguration` allows only for either `bundleFilePath` or `(packagerServerScheme, packagerServerHost)` to be set by defining appropriate initializers. The logic for creating bundle URL query items is extracted to a separate `createJSBundleURLQuery` method and is used by `RCTBundleManager` to set the configured `packagerServerHost` and `packagerServerScheme`. If the configuration is not defined, the `getBundleURL` method returns the result of the passed `fallbackURLProvider`. The `bundleFilePath` should be created with `[NSURL fileURLWithPath:<path>]`, as otherwise the HMR client is created and fails ungracefully. The check is added in the `getBundle` method to log the error beforehand: <img width="306" height="822" alt="Simulator Screenshot - iPhone 16 Pro - 2025-10-15 at 17 09 58" src="https://github.com/user-attachments/assets/869eed16-c5d8-4204-81d7-bd9cd42b2223" /> When the `bundleFilePath` is set in the `RCTBundleConfiguration` the `Connect to Metro...` message shouldn't be suggested. ## Changelog: [IOS][ADDED] - Add new `RCTBundleConfiguration` for modifying bundle URL on `RCTReactNativeFactory`. Test Plan: Test plan included in the last diff in the stack. Differential Revision: D84058022 Pulled By: coado
… it down to the `RCTHost` (facebook#54256) Summary: ## Summary In this diff the `RCTBundleConfiguration` is set on the `RCTReactNativeFactory` and passed down to the `RCTHost` instance where it is set on the bundle manager. The diff prepares bundle config for final usage by packager connection and bundle loader. Differential Revision: D85247248
ebf415a to
09b1152
Compare
coado
added a commit
to coado/react-native
that referenced
this pull request
Nov 4, 2025
… it down to the `RCTHost` (facebook#54256) Summary: ## Summary In this diff the `RCTBundleConfiguration` is set on the `RCTReactNativeFactory` and passed down to the `RCTHost` instance where it is set on the bundle manager. The diff prepares bundle config for final usage by packager connection and bundle loader. ## Changelog [IOS][CHANGED] - Add `RCTBundleConfiguration` property on `RCTReactNativeFactory` and pass it down to `RCTHost`. Reviewed By: cipolleschi Differential Revision: D85247248
|
This pull request has been merged in 5465a51. |
Collaborator
|
This pull request was successfully merged by @coado in 5465a51 When will my fix make it into a release? | How to file a pick request? |
Comment on lines
+69
to
+70
| bundleConfiguration:(RCTBundleConfiguration *)bundleConfiguration | ||
| devMenuConfiguration:(RCTDevMenuConfiguration *)devMenuConfiguration NS_DESIGNATED_INITIALIZER; |
Collaborator
There was a problem hiding this comment.
Why is this no longer nullable? cc: @cipolleschi
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Differential Revision: D85247248
Summary
In this diff the
RCTBundleConfigurationis set on theRCTReactNativeFactoryand passed down to theRCTHostinstance where it is set on the bundle manager. The diff prepares bundle config for final usage by packager connection and bundle loader.Changelog
[IOS][BREAKING] - Add
RCTBundleConfigurationproperty onRCTReactNativeFactoryand pass it down toRCTHost.Test Plan
Test plan included in the last diff in the stack.