Use umbrellas instead of direct includes in react/renderer/scheduler module - #58551
Open
j-piasecki wants to merge 3 commits into
Open
j-piasecki wants to merge 3 commits into
j-piasecki wants to merge 3 commits into
Conversation
j-piasecki
force-pushed
the
export-D120315036
branch
8 times, most recently
from
September 22, 2026 13:17
3401282 to
61102e7
Compare
j-piasecki
force-pushed
the
export-D120315036
branch
from
September 25, 2026 13:23
61102e7 to
8fd89ef
Compare
…g module (react#58552) Summary: Changelog: [Internal] Part of the C++ stable API migration to umbrella includes. Fixes a tier reachability violation in the `jsinspector-modern/tracing` module. The headers in this module are "for frameworks" tier (they include `<react/cxxstableapi/FrameworksGuard.h>`), but they reached the timing module directly through `<react/timing/primitives.h>`. That header is protected by `<react/cxxstableapi/UmbrellaGuard.h>`. Exported headers are preprocessed in the consumer's translation unit, so a consumer building with `RN_STRICT_API` would hit the guard through these transitive includes. `RN_ALLOW_FRAMEWORKS` does not suppress the guard. This change replaces `#include <react/timing/primitives.h>` with the `<React/Timing.h>` umbrella in all 12 tracing headers that used it. The umbrella scopes `RN_UMBRELLA_CONTEXT` around its include of `primitives.h`, so the guard accepts it. It re-exports the same declarations, so there is no functional change. Out of scope: the module's `.cpp` files (`EventLoopReporter.cpp`, `PerformanceTracer.cpp`, `TraceEventSerializer.cpp`) keep the fine-grained include. They are compiled only within React Native's own build and are never preprocessed by consumers, which matches the umbrella's documented guidance. Other modules are migrated in separate changes. Reviewed By: cortinico Differential Revision: D120313623
…module Summary: Changelog: [Internal] Update the react/renderer/scheduler module to use the `React/RendererCore.h`, `React/Utils.h`, and `React/ComponentRegistry.h` umbrella includes instead of direct ones. Differential Revision: D120315036
j-piasecki
force-pushed
the
export-D120315036
branch
from
September 28, 2026 08:43
8fd89ef to
4db07aa
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:
Changelog: [Internal]
Update the react/renderer/scheduler module to use the
React/RendererCore.h,React/Utils.h, andReact/ComponentRegistry.humbrella includes instead of direct ones.Differential Revision: D120315036