Skip to content

Export LayoutResults::operator== (#59997) - #59997

Merged
meta-codesync[bot] merged 1 commit into
react:mainfrom
lenaic:export-D131770771
Nov 13, 2026
Merged

meta-codesync[bot] merged 1 commit into
react:mainfrom
lenaic:export-D131770771

Conversation

@lenaic

@lenaic lenaic commented Nov 13, 2026 •

Copy link
Copy Markdown
Contributor

Summary:

yoga::Node is exported from the Yoga library and hands out its LayoutResults through getLayout(), but LayoutResults::operator== is defined out of line and not exported. Code outside Yoga that compares two layout results fails to link wherever Yoga is built as a shared library with hidden visibility.

Mark the operator YG_EXPORT so React Native can compare a node's layout results with those of the node it replaces.

Changelog: [Internal]

Reviewed By: javache

Differential Revision: D131770771

@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 Nov 13, 2026
@meta-codesync

meta-codesync Bot commented Nov 13, 2026

Copy link
Copy Markdown

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

@javache javache left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review automatically exported from Phabricator review in Meta.

Summary:

`yoga::Node` is exported from the Yoga library and hands out its `LayoutResults` through `getLayout()`, but `LayoutResults::operator==` is defined out of line and not exported. Code outside Yoga that compares two layout results fails to link wherever Yoga is built as a shared library with hidden visibility.

Mark the operator `YG_EXPORT` so React Native can compare a node's layout results with those of the node it replaces.

Changelog: [Internal]

Reviewed By: javache

Differential Revision: D131770771
@meta-codesync meta-codesync Bot changed the title Export LayoutResults::operator== Export LayoutResults::operator== (#59997) Nov 13, 2026
@github-actions

Copy link
Copy Markdown

Visual regression

1 visual difference(s) at 978d5dca9f52. Visual differences need maintainer approval. Review the report, then apply visual-change-approved.

ios scroll-view/horizontal-scroll-to/start: Changed, 69504 px (18.123%)

diff

Expected and Captured
Expected Captured
expected captured

meta-codesync Bot pushed a commit to react/yoga that referenced this pull request Nov 13, 2026
Summary:
X-link: react/react-native#59997

`yoga::Node` is exported from the Yoga library and hands out its `LayoutResults` through `getLayout()`, but `LayoutResults::operator==` is defined out of line and not exported. Code outside Yoga that compares two layout results fails to link wherever Yoga is built as a shared library with hidden visibility.

Mark the operator `YG_EXPORT` so React Native can compare a node's layout results with those of the node it replaces.

Changelog: [Internal]

Reviewed By: javache

Differential Revision: D131770771

Pull Request resolved: #2091
meta-codesync Bot pushed a commit to meta/litho that referenced this pull request Nov 13, 2026
Summary:
X-link: react/yoga#2091

X-link: react/react-native#59997

`yoga::Node` is exported from the Yoga library and hands out its `LayoutResults` through `getLayout()`, but `LayoutResults::operator==` is defined out of line and not exported. Code outside Yoga that compares two layout results fails to link wherever Yoga is built as a shared library with hidden visibility.

Mark the operator `YG_EXPORT` so React Native can compare a node's layout results with those of the node it replaces.

Changelog: [Internal]

Reviewed By: javache

Differential Revision: D131770771

fbshipit-source-id: 9b379ff705881bee3fc6470402c2c3fe73de6ec0
@meta-codesync
meta-codesync Bot merged commit ad2e8f2 into react:main Nov 13, 2026
97 of 99 checks passed
@react-native-bot

Copy link
Copy Markdown
Collaborator

This pull request was successfully merged by @lenaic in ad2e8f2

When will my fix make it into a release? | How to file a pick request?

@react-native-bot react-native-bot added the Merged This PR has been merged. label Nov 13, 2026
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 Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants