Skip to content

Commit f9e936e

Browse files
huntiefacebook-github-bot
authored andcommitted
Update devtoolsFrontendUrl value in target list (#39122)
Summary: Pull Request resolved: #39122 Updates the `devtoolsFrontendUrl` value returned in the `/json/list` endpoint, to match the fixed DevTools frontend revision we set for `/open-debugger` — which now uses this as the source of truth. Changelog: [Internal] Reviewed By: motiz88 Differential Revision: D48561005 fbshipit-source-id: 19409d013366f82782a071a0ec01d1ce8fab8c38
1 parent 97efa25 commit f9e936e

File tree

3 files changed

+13
-18
lines changed

3 files changed

+13
-18
lines changed

packages/dev-middleware/src/inspector-proxy/InspectorProxy.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,10 @@ import type {
1818
import type {EventReporter} from '../types/EventReporter';
1919
import type {IncomingMessage, ServerResponse} from 'http';
2020

21-
import Device from './Device';
2221
import url from 'url';
2322
import WS from 'ws';
23+
import getDevToolsFrontendUrl from '../utils/getDevToolsFrontendUrl';
24+
import Device from './Device';
2425

2526
const debug = require('debug')('Metro:InspectorProxy');
2627

@@ -114,15 +115,13 @@ export default class InspectorProxy {
114115
): PageDescription {
115116
const debuggerUrl = `${this._serverBaseUrl}${WS_DEBUGGER_URL}?device=${deviceId}&page=${page.id}`;
116117
const webSocketDebuggerUrl = 'ws://' + debuggerUrl;
117-
const devtoolsFrontendUrl =
118-
'devtools://devtools/bundled/js_app.html?experiments=true&v8only=true&ws=' +
119-
encodeURIComponent(debuggerUrl);
118+
120119
return {
121120
id: `${deviceId}-${page.id}`,
122121
description: page.app,
123122
title: page.title,
124123
faviconUrl: 'https://reactjs.org/favicon.ico',
125-
devtoolsFrontendUrl,
124+
devtoolsFrontendUrl: getDevToolsFrontendUrl(webSocketDebuggerUrl),
126125
type: 'node',
127126
webSocketDebuggerUrl,
128127
vm: page.vm,

packages/dev-middleware/src/middleware/openDebuggerMiddleware.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import type {Logger} from '../types/Logger';
1717

1818
import url from 'url';
1919
import getDevServerUrl from '../utils/getDevServerUrl';
20-
import launchChromeDevTools from '../utils/launchChromeDevTools';
20+
import launchDebuggerAppWindow from '../utils/launchDebuggerAppWindow';
2121
import queryInspectorTargets from '../utils/queryInspectorTargets';
2222

2323
const debuggerInstances = new Map<string, LaunchedChrome>();
@@ -81,7 +81,10 @@ export default function openDebuggerMiddleware({
8181
debuggerInstances.get(appId)?.kill();
8282
debuggerInstances.set(
8383
appId,
84-
await launchChromeDevTools(target.webSocketDebuggerUrl),
84+
await launchDebuggerAppWindow(
85+
target.devtoolsFrontendUrl,
86+
'open-debugger',
87+
),
8588
);
8689
res.end();
8790
eventReporter?.logEvent({

packages/dev-middleware/src/utils/launchChromeDevTools.js renamed to packages/dev-middleware/src/utils/getDevToolsFrontendUrl.js

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,6 @@
99
* @oncall react_native
1010
*/
1111

12-
import type {LaunchedChrome} from 'chrome-launcher';
13-
14-
import launchDebuggerAppWindow from './launchDebuggerAppWindow';
15-
1612
/**
1713
* The Chrome DevTools frontend revision to use. This should be set to the
1814
* latest version known to be compatible with Hermes.
@@ -23,16 +19,13 @@ import launchDebuggerAppWindow from './launchDebuggerAppWindow';
2319
const DEVTOOLS_FRONTEND_REV = 'd9568d04d7dd79269c5a655d7ada69650c5a8336'; // Chrome 100.0.4896.75
2420

2521
/**
26-
* Attempt to launch Chrome DevTools on the host machine for a given CDP target.
22+
* Construct the URL to Chrome DevTools connected to a given debugger target.
2723
*/
28-
export default async function launchChromeDevTools(
24+
export default function getDevToolsFrontendUrl(
2925
webSocketDebuggerUrl: string,
30-
): Promise<LaunchedChrome> {
26+
): string {
3127
const urlBase = `https://chrome-devtools-frontend.appspot.com/serve_rev/@${DEVTOOLS_FRONTEND_REV}/devtools_app.html`;
3228
const ws = webSocketDebuggerUrl.replace(/^ws:\/\//, '');
3329

34-
return launchDebuggerAppWindow(
35-
`${urlBase}?panel=console&ws=${encodeURIComponent(ws)}`,
36-
'open-debugger',
37-
);
30+
return `${urlBase}?panel=console&ws=${encodeURIComponent(ws)}`;
3831
}

0 commit comments

Comments
 (0)