Skip to content

Conversation

@blakef
Copy link
Contributor

@blakef blakef commented Jan 3, 2025

Summary:
This introduces:

  • validate_rn_cpp_api: run a shell script that fails if the user changes the C++ API. Importantly it produces an artifact with details to share with the user: message.
  • message has to be extracted from stdout, which get_user_message does if the validate_rn_cpp_api action is not successful (warning).
  • The then users comment_to_signalhub to share this as a warning to the user (until we're confident this entire stack is very stable, at which time we'll block).

The provides 2 classes of warning:

  1. vanilla you've change the API,
  2. you've change the API and haven't included the correct changelog.

Changelog: [Internal]

Differential Revision: D67776215

blakef and others added 6 commits January 3, 2025 02:12
Summary: This is the current output of running the api snapshotting tool.  I've also shown some test examples that show how trivial changes affect the API file.

Differential Revision: D67713415
Summary:
Adding CI support will require executing through buck.  Sandboxing means the package has to be well-formed to work, so this cleans up some earlier mess.

- yarn workspace
- check-api.sh to configure the environment correctly when running form sandcastle
- explicity dependencies in our package.json

This is the first step

Changelog: [Internal]

Differential Revision: D67726588
Summary:
We can only specify `hg` as a dependency, so have to use it in our shell script.

Changelog: [Internal]

Differential Revision: D67718641
Summary:
Clang will generate this code by default. I'd observed a difference in output on sandcastle where it didn't do this.

Changelog: [Internal]

Differential Revision: D67793848
Summary:
Pull Request resolved: #48461

Remove forward class or struct declarations.

Changelog: [Internal]

```
$ sl log --stat tools/api/ReactNativeCPP.api
 xplat/js/react-native-github/tools/api/ReactNativeCPP.api |  637
 1 files changed, 96 insertions(+), 541 deletions(-)
```

Differential Revision: D67763260
Summary:
This introduces:
- `validate_rn_cpp_api`: run a shell script that fails if the user changes the C++ API.  Importantly it produces an artifact with details to share with the user: `message`.
- `message` has to be extracted from `stdout`, which **get_user_message** does if the `validate_rn_cpp_api` action is not successful (**warning**).
- The then users `comment_to_signalhub` to share this as a warning to the user (until we're confident this entire stack is very stable, at which time we'll block).

The provides 2 classes of warning:
1. vanilla you've change the API,
2. you've change the API and haven't included the correct changelog.

Changelog: [Internal]

Differential Revision: D67776215
@facebook-github-bot facebook-github-bot added CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. p: Facebook Partner: Facebook Partner labels Jan 3, 2025
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D67776215

@facebook-github-bot
Copy link
Contributor

This pull request has been merged in a8cf53f.

@react-native-bot
Copy link
Collaborator

This pull request was successfully merged by @blakef in a8cf53f

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

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. fb-exported Merged This PR has been merged. p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants