This repository was archived by the owner on Feb 25, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6k
[Embedder API] Freeze parts of API for ABI stability #39963
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
loic-sharma
commented
Mar 1, 2023
| # both forward and backward compatibility. Changes should be heavily | ||
| # scrutinized as mistakes are irreversible. | ||
| /shell/platform/embedder/embedder.h @cbracken @chinmaygarde | ||
| /shell/platform/embedder/tests/embedder_frozen.h @cbracken @chinmaygarde @loic-sharma |
Member
Author
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added myself to CODEOWNERS for the frozen file. Let me know if I should remove myself
fa7034f to
660f039
Compare
cbracken
reviewed
Mar 1, 2023
cbracken
reviewed
Mar 1, 2023
cbracken
reviewed
Mar 1, 2023
cbracken
reviewed
Mar 1, 2023
Member
cbracken
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall this seems like a reasonable way of testing that no modifications have been made. I'd love to hear from @chinmaygarde on whether there's a simple way to make this more concise.
18daaf6 to
300f9af
Compare
719ed4b to
073dd32
Compare
chinmaygarde
approved these changes
Mar 2, 2023
yaakovschectman
approved these changes
Mar 2, 2023
cbracken
approved these changes
Mar 3, 2023
Member
cbracken
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Mar 3, 2023
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Mar 3, 2023
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Mar 3, 2023
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Mar 3, 2023
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Mar 3, 2023
chinmaygarde
pushed a commit
to chinmaygarde/flutter_engine
that referenced
this pull request
Mar 3, 2023
[Embedder API] Freeze parts of API for ABI stability
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Mar 3, 2023
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Mar 3, 2023
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
autosubmit
Merge PR when tree becomes green via auto submit App
embedder
Related to the embedder API
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.

The embedder API defines an ABI that must maintain both forward and backward compatibility. Some parts of the embedder API - like
FlutterSemanticsNodeorFlutterSemanticsCustomAction- must not change to guarantee forward ABI compatibility (see flutter/flutter#121176 and flutter/flutter#121347). This subset of the embedder API is "frozen".This introduces tests that detect changes to the "frozen" subset of the embedder API. These are similar to golden tests:
embedder_frozen.hcontains a snapshot of the expected "frozen" APIembedder_frozen_unittests.ccverifies the actual embedder API matches the expected "frozen" API.Part of flutter/flutter#121176
See go/flutter-semantics-abi.
Pre-launch Checklist
///).If you need help, consider asking for advice on the #hackers-new channel on Discord.