Pull Request Overview
- Opened on October 21, 2026
- Status Open
- Commit count 1 with first commit October 22, 2026
Total Delta
Open Days
Test Delta
How long has this pull request spent in each phase of its lifecycle?
| Fraction of total time | Business days | Phase |
|---|---|---|
|
|
0.0 days | Authoring 0 commits before pull request opened for review |
|
|
0.0 days | Awaiting first review |
|
|
15.9 days | Revising work with 1 commit in response to 0 reviews that left 1 comment |
Total time for pull request still awaiting merge (longer than repo's target): 15.9 business days
Skip native prop metadata for delegate-backed managers (#59296)
Summary:
Add the default-off skipNativePropsForViewManagerWithDelegateAndroid feature flag. When enabled, ViewManager.getNativeProps() returns an empty map for managers with a non-null, non-generic delegate, avoiding unused manager and shadow-node prop metadata generation. Return a fresh mutable map so subclasses can safely extend super.getNativeProps(). The constants helper already omits NativeProps for an empty map; commands, events and custom constants are preserved.
Null and generic delegates keep the existing metadata path, including its legacy-architecture shadow-node handling. The flag must only be enabled when delegate-backed components use static view configs rather than runtime native prop metadata.
NativeProps queries reuse getOrCreateViewManagerDelegate(), sharing the same delegate with prop updates and commands. Make its lazy initialisation thread-safe with a volatile cache and double-checked synchronisation, leaving warm reads lock-free. Document that initialisation may occur on the JavaScript thread when this flag is enabled.
Regenerate all feature-flag bindings and cover enabled/disabled paths, generic and null delegates, marker-only managers, preserved constants, subclass prop extensions, independent mutable maps, existing-cache reuse and concurrent metadata/command initialisation.
Changelog:
[Android][Changed] - Add an opt-in optimisation to skip native prop metadata for delegate-backed view managers using static view configs.
Differential Revision: D126630163
Comments Threads Pending Resolution
Resolved Comment Threads
No resolved comments have been left on this PR.