Repository navigation
Delete deprecated FabricSurface bridge init and stub category (#59438) - #59438
Open
christophpurrer wants to merge 11 commits into
Open
christophpurrer wants to merge 11 commits into
christophpurrer wants to merge 11 commits into
Conversation
|
@christophpurrer has exported this pull request. If you are a Meta employee, you can view the originating Diff in D127294777. |
christophpurrer
added a commit
to christophpurrer/react-native-macos
that referenced
this pull request
Oct 24, 2026
…59438) Summary: Pull Request resolved: react#59438 `-[RCTFabricSurface initWithBridge:moduleName:initialProperties:]` has zero callers, and it was the only reader of `bridge.surfacePresenter`. Delete it with the `RCTBridge (RCTSurfacePresenterStub)` category. The proxy accessors stay so existing message sends keep resolving. Changelog: [iOS][Removed] - Remove deprecated `RCTFabricSurface` bridge initializer and `RCTBridge` surface-presenter category Differential Revision: D127294777
christophpurrer
force-pushed
the
export-D127294777
branch
from
October 24, 2026 03:12
528cd71 to
4439c8a
Compare
christophpurrer
added a commit
to christophpurrer/react-native-macos
that referenced
this pull request
Oct 24, 2026
…59438) Summary: Pull Request resolved: react#59438 `-[RCTFabricSurface initWithBridge:moduleName:initialProperties:]` has zero callers, and it was the only reader of `bridge.surfacePresenter`. Delete it with the `RCTBridge (RCTSurfacePresenterStub)` category. The proxy accessors stay so existing message sends keep resolving. Changelog: [iOS][Removed] - Remove deprecated `RCTFabricSurface` bridge initializer and `RCTBridge` surface-presenter category Differential Revision: D127294777
christophpurrer
force-pushed
the
export-D127294777
branch
from
October 24, 2026 03:22
4439c8a to
c6ad03c
Compare
Summary: `sourceURLForBridge:` has no callers: the factory reads `bundleURL` directly, and the default delegate's implementations only threw or forwarded to each other. Delete the protocol method with those implementations and the factory's dead configuration assignment. The `RCTJavaScriptLoader.h` import stays: removing it breaks every `RCTBridge.h` importer that uses the loader types. Changelog: [iOS][Removed] - Remove deprecated `RCTBridgeDelegate` `sourceURLForBridge:` Differential Revision: D127294778
Summary: Remove the always-on TurboModule flag functions, the unread accessibility-manager flag, the uncalled `batchDidComplete` hook, and the unused `RCTJavaScriptCallback` typedef. Deprecate the ignored `newArchEnabled:` configuration initializers, which external clients still call. Changelog: [iOS][Removed] - Remove dead `RCTBridge` flag functions, `batchDidComplete`, and unused callback typedef Differential Revision: D127294780
Summary: The C++ bridge delegate protocol has no implementers left: its only method served the removed `RCTCxxBridge`. Delete the header with its build entry, the stale forward declaration, and the unused imports. Changelog: [iOS][Removed] - Remove unused `RCTCxxBridgeDelegate` protocol Differential Revision: D127294781
Summary: Five module accessors on `RCTBridge` (`networking`, `webSocketModule`, `accessibilityManager`, `devSettings`, `imageStoreManager`) have no callers. Delete the bridge-side declarations and the last bridge-side implementation (`uiManager`, whose proxy implementation stays). Deprecate `devMenu`, which external clients still use. Changelog: [iOS][Removed] - Remove unused per-module `RCTBridge` accessors Differential Revision: D127294783
Summary: Remove `RCTBridge` declarations with zero callers: `enqueueJSCall`, module lookup, `delegate`, `moduleClasses`, reload, and batch APIs, plus their stub implementations. Keep `bundleURL`, still read by Expo Dev Menu, and the TurboModule-registry hooks the proxy forwards through, all marked deprecated. Delete skipped `RCTLoggingTests`, the only `enqueueJSCall` caller. Changelog: [iOS][Removed] - Remove unused `RCTBridge` reload, module-lookup, and JS-callback APIs [iOS][Deprecated] - Deprecate `RCTBridge.bundleURL`, `setRCTTurboModuleRegistry:`, and `bridgeModuleDecorator` Differential Revision: D127265582
…59433) Summary: Pull Request resolved: react#59433 The `RCTTest` runner, `IntegrationTests` bundle, and `RNTesterIntegrationTests` target are fully disabled: every test is commented out or skipped for depending on the removed bridge. Delete the harness, the skipped `RCTDevMenuTests`/`RCTComponentPropsTests`/`RCTImageLoaderTests` class, and all project references. Changelog: [Internal] Differential Revision: D127294772
Summary: Both `RCTBridge` initializers return an inert stub and have no callers left now that the test harness is gone. Delete the declarations and stub implementations. `RCTBridgeModuleListProvider` stays until the proxy shim using it is removed. Changelog: [iOS][Removed] - Remove deprecated `RCTBridge` initializers Differential Revision: D127294773
Summary: Pull Request resolved: react#59435 The default JS executor factory unconditionally returns `nullptr` and has no callers. Delete it with its now-unused imports and forward declarations, narrowing the header to forward declarations. Changelog: [Internal] Differential Revision: D127294774
Summary: The `RCTBridge (Inspector)` category exposes `inspectorTarget`/`inspectable` with zero callers; the modern inspector reaches `RCTHost` directly. Delete the header, its buck entry, the unused imports, and the proxy shim. Changelog: [iOS][Removed] - Remove unused `RCTBridge (Inspector)` category Differential Revision: D127294775
christophpurrer
added a commit
to christophpurrer/react-native-macos
that referenced
this pull request
Oct 27, 2026
…59438) Summary: Pull Request resolved: react#59438 `-[RCTFabricSurface initWithBridge:moduleName:initialProperties:]` has zero callers, and it was the only reader of `bridge.surfacePresenter`. Delete it with the `RCTBridge (RCTSurfacePresenterStub)` category. The proxy accessors stay so existing message sends keep resolving. Changelog: [iOS][Removed] - Remove deprecated `RCTFabricSurface` bridge initializer and `RCTBridge` surface-presenter category Differential Revision: D127294777
christophpurrer
force-pushed
the
export-D127294777
branch
from
October 27, 2026 14:20
c6ad03c to
2c5136b
Compare
Summary: Pull Request resolved: react#59437 Five bridge notifications and three user-info keys have zero posters; only fast refresh is posted and observed. Delete the script-download notifications, `WillBeInvalidated`, and the keys with the dead observers in `RCTDeviceInfo`, the avatar updates module, and both reload perf loggers. Keep the two invalidation notifications Skia and Reanimated still observe, marked deprecated along with `WillReload`. Changelog: [iOS][Removed] - Remove never-posted `RCTBridge` script-download and `WillBeInvalidated` notifications [iOS][Deprecated] - Deprecate never-posted invalidation notifications still observed by Skia and Reanimated Differential Revision: D127294776
…59438) Summary: Pull Request resolved: react#59438 `-[RCTFabricSurface initWithBridge:moduleName:initialProperties:]` has zero callers, and it was the only reader of `bridge.surfacePresenter`. Delete it with the `RCTBridge (RCTSurfacePresenterStub)` category. The proxy accessors stay so existing message sends keep resolving. Changelog: [iOS][Removed] - Remove deprecated `RCTFabricSurface` bridge initializer and `RCTBridge` surface-presenter category Differential Revision: D127294777
christophpurrer
force-pushed
the
export-D127294777
branch
from
October 27, 2026 14:36
2c5136b to
9b350e7
Compare
This branch has not been deployed
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.
Summary:
-[RCTFabricSurface initWithBridge:moduleName:initialProperties:]has zero callers, and it was the only reader ofbridge.surfacePresenter. Delete it with theRCTBridge (RCTSurfacePresenterStub)category. The proxy accessors stay so existing message sends keep resolving.Changelog:
[iOS][Removed] - Remove deprecated
RCTFabricSurfacebridge initializer andRCTBridgesurface-presenter categoryDifferential Revision: D127294777