Skip to content

feature(dev-middleware): add inspector proxy nativeNetworkInspection target capabilty flag - #43310

Closed
byCedric wants to merge 1 commit into
react:mainfrom
byCedric:@bycedric/dev-middleware/native-network-capability
Closed

feature(dev-middleware): add inspector proxy nativeNetworkInspection target capabilty flag#43310
byCedric wants to merge 1 commit into
react:mainfrom
byCedric:@bycedric/dev-middleware/native-network-capability

Conversation

@byCedric

@byCedricbyCedric commented Mar 4, 2024

Copy link
Copy Markdown
Contributor

Summary:

This adds the nativeNetworkInspection target capability flag, to enable/disable the proxy-side network inspection handling.

Changelog:

[GENERAL][ADDED] Add inspector proxy nativeNetworkInspection target capability flag

Test Plan:

Once this lands, and is published through @react-native/dev-middleware, we (Expo) can disable the proxy-side network inspection handling.

See expo/expo@1a1b601 on PR expo/expo#27425

@facebook-github-botfacebook-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: Expo Partner: Expo Partner labels Mar 4, 2024
@facebook-github-botfacebook-github-bot added the Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team. label Mar 4, 2024
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@huntie has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@github-actions

Copy link
Copy Markdown

This pull request was successfully merged by @byCedric in f3ce7cd.

When will my fix make it into a release? | Upcoming Releases

@github-actionsgithub-actionsBot added the Merged This PR has been merged. label Mar 5, 2024
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@huntie merged this pull request in f3ce7cd.

huntie pushed a commit that referenced this pull request Mar 11, 2024
…` target capabilty flag (#43310)
Summary:
This adds the `nativeNetworkInspection` target capability flag, to enable/disable the proxy-side network inspection handling.
## Changelog:
<!-- Help reviewers and the release process by writing your own changelog entry.
Pick one each for the category and type tags:
[ANDROID|GENERAL|IOS|INTERNAL] [BREAKING|ADDED|CHANGED|DEPRECATED|REMOVED|FIXED|SECURITY] - Message
For more details, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
-->
[GENERAL][ADDED] Add inspector proxy `nativeNetworkInspection` target capability flag
Pull Request resolved: #43310
Test Plan:
Once this lands, and is published through `react-native/dev-middleware`, we (Expo) can disable the proxy-side network inspection handling.
See expo/expo@1a1b601 on PR expo/expo#27425
Reviewed By: christophpurrer, motiz88
Differential Revision: D54486516
Pulled By: huntie
fbshipit-source-id: cc151349c816fb3866d3ec07af1a29a5f4ff9b00
byCedric added a commit to expo/expo that referenced this pull request Mar 19, 2024
# Why
This is the implementation side of react/react-native#43291, and
react/react-native#43310.
~~PR is back in draft state due to
react/react-native#43559
Going to merge it as is, to fix CI.
# How
- Drop `InspectorProxy` and `Device` override classes
- Rename `InspectorHandlers` to `MessageMiddleware`
- ~~Temporarily polyfill required types until
`@react-native/dev-middleware` is published with this new API~~
_We now use all types from this package, derived from the
`CustomMessageHandlerConnection` and `CreateCustomMessageHandlerFn`
types._
- ~~Drop the `VscodeDebuggerScriptParsed` middleware as that mutates the
`Device` instance~~
_This was added to optimize the source map loading. It should still work
without this handler. There is work going on from Meta's side to make
source map loading follow web behavior more, but that's still in
progress._
# Test Plan
See updated tests, need to test this when `@react-native/dev-middleware`
is updated.
# Checklist
<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->
- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `npx expo prebuild` & EAS Build
(eg: updated a module plugin).
facebook-github-bot pushed a commit that referenced this pull request Mar 20, 2024
…#43559)
Summary:
This is a follow-up bugfix for expo/expo#27425, related to:
- #43291
- #43307
- #43310
- #43364
The middleware API works as intended and can run our extended CDP events. Unfortunately, this only applies to an actual `Page` from the device, not for the `React Native Experimental (Improved Chrome Reloads)` synthetic / virtual page.
That's because the middleware instantiation gets aborted when the page can't be found in `this.#pages.get(pageId)`, which always returns `null` for this synthetic page.
## Changelog:
[GENERAL] [FIXED] Create custom message handler for synthetic page
Pull Request resolved: #43559
Test Plan: See added test case.
Reviewed By: motiz88
Differential Revision: D55129412
Pulled By: huntie
fbshipit-source-id: 9679d8fe68f3cb4104f4a042f93612b995baddc9
huntie pushed a commit that referenced this pull request Mar 21, 2024
…#43559)
Summary:
This is a follow-up bugfix for expo/expo#27425, related to:
- #43291
- #43307
- #43310
- #43364
The middleware API works as intended and can run our extended CDP events. Unfortunately, this only applies to an actual `Page` from the device, not for the `React Native Experimental (Improved Chrome Reloads)` synthetic / virtual page.
That's because the middleware instantiation gets aborted when the page can't be found in `this.#pages.get(pageId)`, which always returns `null` for this synthetic page.
## Changelog:
[GENERAL] [FIXED] Create custom message handler for synthetic page
Pull Request resolved: #43559
Test Plan: See added test case.
Reviewed By: motiz88
Differential Revision: D55129412
Pulled By: huntie
fbshipit-source-id: 9679d8fe68f3cb4104f4a042f93612b995baddc9
This was referenced Jun 28, 2024
@cipolleschicipolleschi mentioned this pull request Jul 22, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.MergedThis PR has been merged.p: ExpoPartner: ExpoPartnerShared with MetaApplied via automation to indicate that an Issue or Pull Request has been shared with the team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@byCedric@facebook-github-bot