Skip to content

Toggle the new Android prop diffing mechanism for components #61

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

fabOnReact
Copy link

@fabOnReact fabOnReact commented May 7, 2025

Summary:

Requires updating the fork to react-native 0.79 or cherrypicking the following commits from David Vacca:

  • Implement prop diffing for accessibility props in View #48833
  • Implement prop diffing for transform props in View #48832
  • Implement prop diffing for border props in View #48831
  • Implement prop diffing for event props in View #48830
  • Implement prop diffing for basic props in View #48829

Enables feature flag enablePropsUpdateReconciliationAndroid to fix https://app.asana.com/1/236888843494340/project/1199705967702853/task/1209601835367711?focus=true

More info at facebook#45551 and https://github.com/discord/react-native/blob/e0702345591cb461e196aabd8be0bf51839a2df3/packages/react-native/scripts/featureflags/README.md

Changelog:

This diffs toggles the new Android prop diffing mechanism for components

Test Plan:

Branch 0.78:

Before enabling the feature flag After enabling the feature flag

Branch 0.80.0, 0.79, 0.78.2 upstream:

Screenshot 2025-05-08 at 4 04 47 PM

Branch 0.78.0, 0.78.1 upstream:

Screenshot 2025-05-07 at 8 08 44 PM

Discord app - new arch branch - Unresponsive screen, views have a gray background color.

@fabOnReact
Copy link
Author

fabOnReact commented May 7, 2025

TODO:

  • Test feature flag on the discord app
  • Troubleshoot regressions on discord app

@fabOnReact fabOnReact changed the title This diffs toggles the new Android prop diffing mechanism for components Toggle the new Android prop diffing mechanism for components May 7, 2025
@fabOnReact
Copy link
Author

fabOnReact commented May 27, 2025

Previous report https://discord.com/channels/337697015171383317/1314048874872311808/1372943389489889371
Report 20th of May https://discord.com/channels/337697015171383317/1314048874872311808/1374320744074580070

  • Tried again to apply changes from 0.78.2 on top of 0.78.1. The issue now reproduces on 0.78.2 after running commands git clean -fdx and ./gradlew clean.
  • Tested PR #61 multiple times on 0.79 and 0.78.2. Clearing the cache required extra time to run the build. I tried to run faster builds, clearing only specific cache folders (for example hermex/.cxx, ReactAndroid/.cxx) instead of running git clean -fdx for every build error.

Next Tasks:

  • Find commit to cherry-pick from 0.79.0 to fix #61 regression in our react-native fork.

@fabOnReact
Copy link
Author

Published a new PR #68 for 0.78.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant