Skip to content
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

[0.77] Pick Fix execution of early InteropEvents on Android #777

Open
shwanton opened this issue Feb 4, 2025 · 1 comment
Open

[0.77] Pick Fix execution of early InteropEvents on Android #777

shwanton opened this issue Feb 4, 2025 · 1 comment
Labels
Type Pick Request Pick requests to include commits inside a React Native release

Comments

@shwanton
Copy link

shwanton commented Feb 4, 2025

Target Branch(es)

0.77

Link to commit or PR to be picked

facebook/react-native#48823

Description

This addresses an issue with Interop events on Android that are sent before the JS view is ready, such as during startup or with Android view pre-allocation.

React Native Maps emits a onMapReady event during native initialization. However, this event should be queued and emitted only when the mounting manager's event emitter is ready. Android interop events were not being queued correctly, this fixes that issue.

@shwanton shwanton added the Type Pick Request Pick requests to include commits inside a React Native release label Feb 4, 2025
@react-native-bot
Copy link

Thank you for opening a new pick-request for React Native.
Those are the criterias we follow when accepting/rejecting a pick request (source).

If your pick does not satisfy the criteria below, please close it as it will not be considered.

✅ Which pick requests we accept
  1. ✅ Fixes for regressions to core APIs. Examples:
    • A core component is behaving differently between version 0.X and 0.X-1
    • The TurboModule.getEnforcing function is throwing an assertion error which is not expected.
  2. ✅ Fixes to bugs in the core React Native’s experience. Examples:
    • Breakpoints in React Native DevTools not working correctly in the debugger
    • Fast Refresh not working as expected
    • Metro bundler not starting properly or ignoring the configuration file
    • Buttons that are not clickable
  3. ✅ Fixes to APIs used by 3P libraries and Out-of-tree platforms. Examples:
    • An API that is used by react-native-macos is not behaving as expected or regressing
  4. ✅ Bump of patch version of dependencies. Example:
    • Bump Gradle from 8.11.0 to 8.11.1
  5. ✅ Fixes for Low/High Security Vulnerability. Example:
    • Bump Gradle from 8.11.0 to 8.12.0 if there is a security vulnerability in 8.11 and there is no version 8.11.x which would contain the same fix.
  6. ✅ Fixes and reverts of accidental breaking changes. Example:
    • Reverting or fix-forwarding a migration to Kotlin of a file (say ReactRootView.java ) if that is causing a breaking change for the whole React Native ecosystem.
  7. ✅ Performance improvements picks. Examples:
    • Fixing unnecessary rendering on FlatList.
  8. ✅ Any pick if the release is still in RC0 (after RC1 the previous listed criteria applies)
❌ Which pick requests we don’t accept
  1. ❌ Any pick that will introduce a breaking change after RC1. Example:
    • A bugfix that contains a refactoring, resulting in changes to the public API of a class
  2. ❌ Any pick that introduces a new feature after RC1. Example:
    • A commit that introduces a new API or a specific feature for a component.
  3. ❌ Bump of major/minor version of dependencies. Example:
    • Bump Gradle from 8.11.0 to 8.12.0
    • Bump Gradle from 8.11.0 to 9.0.0
  4. ❌Bump of a dependency to a non stable/alpha/beta version. Example:
    • Bump Gradle from 8.11.0 to 8.11.1-beta.1
  5. ❌Any pick that introduces changes to the testing infrastructure of React Native after RC1. Examples:
    • Changes to the GitHub Actions workflows to optimize it, even if they’re on main.
    • Changes to the logic used to publish packages to NPM or Maven Central
  6. ❌ Pick composed by various commits that has several merge conflicts
    • If your pick is too complicated to apply on the release branch, we’re going to reject it.
  7. ❌ Any other non-critical improvement that landed on main.
    • In general those will ship in the following version unless they fit in one of the criteria above
  8. ❌ Any other pick which is considered “small enough” to make it into a release.
    • If your pick is a one liner but is a ‘nice to have’, we won’t be picking it, as it has the risk of destabilizing the release and further delaying the release.
ℹ️ What makes for a good pick

In order for your pick to be considered, please do the following:

  • ℹ️ Have a pick that contains only one commit from main, or only one PR against the release branch.
  • ℹ️ Have a clear explanation of why your pick should be considered, ideally referencing one of the criteria above.
  • ℹ️ Target only one minor version of React Native (e.g. [0.76]). If you want your pick to be applied to more versions, please open different picks.

@robhogan robhogan moved this from Inbox to In Progress in React Native 0.77 Releases Feb 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type Pick Request Pick requests to include commits inside a React Native release
Projects
Status: In Progress
Development

No branches or pull requests

2 participants