Skip to content

Add enableMountingCoordinatorPullModelAndroid feature flag (#57581) - #57581

Closed
bartlomiejbloniarz wants to merge 1 commit into
mainfrom
export-D112309049
Closed

bartlomiejbloniarz wants to merge 1 commit into
mainfrom
export-D112309049

Conversation

@bartlomiejbloniarz

@bartlomiejbloniarz bartlomiejbloniarz commented Jul 16, 2026 •

Copy link
Copy Markdown
Contributor

Summary:

Adds the enableMountingCoordinatorPullModelAndroid experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

Changelog:

[Android] [Added] - Add enableMountingCoordinatorPullModelAndroid feature flag

Reviewed By: rubennorte

Differential Revision: D112309049

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Jul 16, 2026
@facebook-github-tools facebook-github-tools Bot added p: Software Mansion Partner: Software Mansion Partner p: Facebook Partner: Facebook labels Jul 16, 2026
@meta-codesync

meta-codesync Bot commented Jul 16, 2026

Copy link
Copy Markdown

@bartlomiejbloniarz has exported this pull request. If you are a Meta employee, you can view the originating Diff in D112309049.

bartlomiejbloniarz added a commit that referenced this pull request Jul 23, 2026
Summary:
Pull Request resolved: #57581

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Reviewed By: rubennorte

Differential Revision: D112309049
@meta-codesync meta-codesync Bot changed the title Add enableMountingCoordinatorPullModelAndroid feature flag Add enableMountingCoordinatorPullModelAndroid feature flag (#57581) Jul 23, 2026
meta-codesync Bot pushed a commit that referenced this pull request Jul 24, 2026
Summary:

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Reviewed By: rubennorte

Differential Revision: D112309049
@meta-codesync
meta-codesync Bot force-pushed the export-D112309049 branch from 9823a2a to 72cf5ad Compare July 24, 2026 12:51
meta-codesync Bot pushed a commit that referenced this pull request Jul 24, 2026
Summary:

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Reviewed By: rubennorte

Differential Revision: D112309049
bartlomiejbloniarz added a commit that referenced this pull request Jul 24, 2026
Summary:
Pull Request resolved: #57581

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Reviewed By: rubennorte

Differential Revision: D112309049
bartlomiejbloniarz added a commit that referenced this pull request Jul 27, 2026
Summary:
Pull Request resolved: #57581

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Reviewed By: rubennorte

Differential Revision: D112309049
Summary:

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Reviewed By: rubennorte

Differential Revision: D112309049
@meta-codesync
meta-codesync Bot force-pushed the export-D112309049 branch from df2d5e7 to fa6f08e Compare July 27, 2026 10:27
meta-codesync Bot pushed a commit that referenced this pull request Jul 27, 2026
Summary:

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Reviewed By: rubennorte

Differential Revision: D112309049
bartlomiejbloniarz added a commit that referenced this pull request Jul 27, 2026
Summary:
Pull Request resolved: #57581

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Reviewed By: rubennorte

Differential Revision: D112309049
@meta-codesync meta-codesync Bot closed this in ece0efe Jul 29, 2026
@meta-codesync meta-codesync Bot added the Merged This PR has been merged. label Jul 29, 2026
@meta-codesync

meta-codesync Bot commented Jul 29, 2026

Copy link
Copy Markdown

This pull request has been merged in ece0efe.

piaskowyk added a commit to discord/react-native that referenced this pull request Sep 10, 2026
…), defaulted on (#48)

* Add enableMountingCoordinatorPullModelAndroid feature flag (react#57581)

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag
(default off) that gates the Android pull-model mounting migration.
Config entry plus regenerated accessors only - no behavior change.

Cherry-pick of react/react-native@ece0efe.

The generated feature flag files conflicted because this fork's flag set
has diverged from upstream, so they were regenerated from the config with
`yarn featureflags` instead of being merged by hand.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Default enableMountingCoordinatorPullModelAndroid to true

Flip the flag's defaultValue to true and regenerate the feature-flag
boilerplate with `yarn featureflags --update`. The config's own metadata
already declared expectedReleaseValue: true.

Neither app-side provider overrides the flag, so the default applies
directly: ReactNativeNewArchitectureFeatureFlagsDefaults (Android) and
ReactNativeFeatureFlagsOverridesOSSStable (iOS) both inherit it.

Note: this is inert on this branch. The flag has no consumers here or
upstream at ece0efe -- that commit only defines it, and the migration it
gates (PullTransactionMountItem enqueued in MountItemDispatcher, so the UI
thread pulls the transaction instead of the commit thread building the
batch in schedulerShouldRenderTransactions) lands in later upstream
commits that are not cherry-picked here. Setting true now records intent
so the path is on once the implementation arrives.

This is a separate mechanism from usePullModelOnAndroid, which this fork
already defaults to true and which does have consumers in
FabricUIManagerBinding.cpp and FabricUIManager.java. Upstream has since
removed that flag, having graduated it.

Before the implementation is backported, check the dependencies named in
the flag description: enableAccumulatedUpdatesInRawPropsAndroid is already
true, but enableExclusivePropsUpdateAndroid and
enablePropsUpdateReconciliationAndroid are both still false, and the
latter two are required when Props 2.0 is in use.

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Dawid Małecki <maleckidawid@meta.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
piaskowyk added a commit to discord/react-native that referenced this pull request Oct 13, 2026
…), defaulted on (#48)

* Add enableMountingCoordinatorPullModelAndroid feature flag (react#57581)

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag
(default off) that gates the Android pull-model mounting migration.
Config entry plus regenerated accessors only - no behavior change.

Cherry-pick of react/react-native@ece0efe.

The generated feature flag files conflicted because this fork's flag set
has diverged from upstream, so they were regenerated from the config with
`yarn featureflags` instead of being merged by hand.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Default enableMountingCoordinatorPullModelAndroid to true

Flip the flag's defaultValue to true and regenerate the feature-flag
boilerplate with `yarn featureflags --update`. The config's own metadata
already declared expectedReleaseValue: true.

Neither app-side provider overrides the flag, so the default applies
directly: ReactNativeNewArchitectureFeatureFlagsDefaults (Android) and
ReactNativeFeatureFlagsOverridesOSSStable (iOS) both inherit it.

Note: this is inert on this branch. The flag has no consumers here or
upstream at ece0efe -- that commit only defines it, and the migration it
gates (PullTransactionMountItem enqueued in MountItemDispatcher, so the UI
thread pulls the transaction instead of the commit thread building the
batch in schedulerShouldRenderTransactions) lands in later upstream
commits that are not cherry-picked here. Setting true now records intent
so the path is on once the implementation arrives.

This is a separate mechanism from usePullModelOnAndroid, which this fork
already defaults to true and which does have consumers in
FabricUIManagerBinding.cpp and FabricUIManager.java. Upstream has since
removed that flag, having graduated it.

Before the implementation is backported, check the dependencies named in
the flag description: enableAccumulatedUpdatesInRawPropsAndroid is already
true, but enableExclusivePropsUpdateAndroid and
enablePropsUpdateReconciliationAndroid are both still false, and the
latter two are required when Props 2.0 is in use.

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Dawid Małecki <maleckidawid@meta.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
piaskowyk pushed a commit to discord/react-native that referenced this pull request Oct 20, 2026
Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag
(default off) that gates the Android pull-model mounting migration.
Config entry plus regenerated accessors only - no behavior change.

Cherry-pick of react/react-native@ece0efe.

The generated feature flag files conflicted because this fork's flag set
has diverged from upstream, so they were regenerated from the config with
`yarn featureflags` instead of being merged by hand.

Co-authored-by: Cursor <cursoragent@cursor.com>
tvinhas pushed a commit to tvinhas/react-native-macos that referenced this pull request Oct 21, 2026
Summary:
Pull Request resolved: react#57581

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Reviewed By: rubennorte

Differential Revision: D112309049

fbshipit-source-id: 8bc6389a87feca57269ba1b17abde012e183a827
delekta added a commit to discord/react-native that referenced this pull request Nov 4, 2026
* Revert "[Android] shadow-tree commit-lifecycle hooks (react#100)"

This reverts commit 9eee718.

The shadowTreeCommitSucceeded / shadowTreeCommitFinalized hooks existed
only to make Reanimated's props-registry equality eviction race-free.
That eviction turned out to be performance neutral and has been removed
from the Reanimated fork, so nothing overrides these hooks anymore and
the fork can drop the divergence from upstream in ShadowTree,
ShadowTreeDelegate, UIManager and UIManagerCommitHook.

Also restores the configureEventEmitterCallback() call in
SampleTurboModuleSpec.cpp, which that commit had incidentally commented
out.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Add enableMountingCoordinatorPullModelAndroid feature flag (react#57581)

Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag
(default off) that gates the Android pull-model mounting migration.
Config entry plus regenerated accessors only - no behavior change.

Cherry-pick of react/react-native@ece0efe.

The generated feature flag files conflicted because this fork's flag set
has diverged from upstream, so they were regenerated from the config with
`yarn featureflags` instead of being merged by hand.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Default enableMountingCoordinatorPullModelAndroid to true

Flip the flag's defaultValue to true and regenerate the feature-flag
boilerplate with `yarn featureflags --update`. The config's own metadata
already declared expectedReleaseValue: true.

Neither app-side provider overrides the flag, so the default applies
directly: ReactNativeNewArchitectureFeatureFlagsDefaults (Android) and
ReactNativeFeatureFlagsOverridesOSSStable (iOS) both inherit it.

Note: this is inert on this branch. The flag has no consumers here or
upstream at ece0efe -- that commit only defines it, and the migration it
gates (PullTransactionMountItem enqueued in MountItemDispatcher, so the UI
thread pulls the transaction instead of the commit thread building the
batch in schedulerShouldRenderTransactions) lands in later upstream
commits that are not cherry-picked here. Setting true now records intent
so the path is on once the implementation arrives.

This is a separate mechanism from usePullModelOnAndroid, which this fork
already defaults to true and which does have consumers in
FabricUIManagerBinding.cpp and FabricUIManager.java. Upstream has since
removed that flag, having graduated it.

Before the implementation is backported, check the dependencies named in
the flag description: enableAccumulatedUpdatesInRawPropsAndroid is already
true, but enableExclusivePropsUpdateAndroid and
enablePropsUpdateReconciliationAndroid are both still false, and the
latter two are required when Props 2.0 is in use.

Co-authored-by: Cursor <cursoragent@cursor.com>

* [Discord] Enable preventShadowTreeCommitExhaustion by default

Reanimated requires this React Native flag to be enabled before its own
DISABLE_COMMIT_PAUSING_MECHANISM flag can be turned on safely; without it,
React commits can be starved and the app becomes unresponsive.

See https://docs.swmansion.com/react-native-reanimated/docs/guides/feature-flags/#disable_commit_pausing_mechanism

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Krzysztof Piaskowy <krzysztof.piaskowy@discordapp.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Dawid Małecki <maleckidawid@meta.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Merged This PR has been merged. meta-exported p: Facebook Partner: Facebook p: Software Mansion Partner: Software Mansion Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant