From 4632afd4093a277dacbcf480ac65c65a4f0f54b9 Mon Sep 17 00:00:00 2001 From: Alex Hunt Date: Fri, 30 Oct 2026 11:15:27 +0000 Subject: [PATCH] Remove loadCommunityMiddleware from community-cli-plugin --- .../src/dev-server/loadCommunityMiddleware.js | 49 ------------------- .../src/dev-server/runDevServer.js | 17 +------ .../React/DevSupport/__docs__/README.md | 2 +- 3 files changed, 2 insertions(+), 66 deletions(-) delete mode 100644 packages/community-cli-plugin/src/dev-server/loadCommunityMiddleware.js diff --git a/packages/community-cli-plugin/src/dev-server/loadCommunityMiddleware.js b/packages/community-cli-plugin/src/dev-server/loadCommunityMiddleware.js deleted file mode 100644 index 1406ed7d1eec..000000000000 --- a/packages/community-cli-plugin/src/dev-server/loadCommunityMiddleware.js +++ /dev/null @@ -1,49 +0,0 @@ -/** - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @flow strict-local - * @format - */ - -import type {Server} from 'connect'; - -type DevServerMiddlewareFactory = (params: { - host?: string, - port: number, - watchFolders: ReadonlyArray, -}) => { - middleware: Server, - websocketEndpoints: {[path: string]: ws$WebSocketServer}, - ... -}; - -// $FlowFixMe[incompatible-type] -const unusedMiddlewareStub: Server = {}; - -const communityMiddlewareFallback: DevServerMiddlewareFactory = () => ({ - middleware: unusedMiddlewareStub, - websocketEndpoints: {}, -}); - -/** - * Attempt to load the `createDevServerMiddleware` factory from - * `@react-native-community/cli` (an optional peer dependency). If it cannot be - * found, return a factory that produces stub middleware instead. - */ -export default function loadCommunityMiddleware(): DevServerMiddlewareFactory { - try { - // `@react-native-community/cli` is an optional peer dependency of this - // package, and should be a dev dependency of the host project (via the - // community template's package.json). - // $FlowFixMe[prop-missing] - // $FlowFixMe[untyped-import] - return require('@react-native-community/cli').createDevServerMiddleware; - } catch { - console.warn(`⚠️ Unable to find @react-native-community/cli. -Starting dev server without community middleware endpoints - some functionality may be broken.`); - return communityMiddlewareFallback; - } -} diff --git a/packages/community-cli-plugin/src/dev-server/runDevServer.js b/packages/community-cli-plugin/src/dev-server/runDevServer.js index c0552eb6b22b..c29281b747eb 100644 --- a/packages/community-cli-plugin/src/dev-server/runDevServer.js +++ b/packages/community-cli-plugin/src/dev-server/runDevServer.js @@ -16,7 +16,6 @@ import attachKeyHandlers from './attachKeyHandlers'; import createDevMiddlewareLogger from './createDevMiddlewareLogger'; import createDevServerMiddleware from './createDevServerMiddleware'; import isDevServerRunning from './isDevServerRunning'; -import loadCommunityMiddleware from './loadCommunityMiddleware'; import * as version from './version'; import {createDevMiddleware} from '@react-native/dev-middleware'; import * as Metro from 'metro'; @@ -107,15 +106,6 @@ async function runDevServer( const ReporterImpl = getReporterImpl(args.customLogReporterPath); const terminalReporter = new ReporterImpl(terminal); - const createCommunityMiddleware = loadCommunityMiddleware(); - const { - middleware: communityMiddleware, - websocketEndpoints: communityWebsocketEndpoints, - } = createCommunityMiddleware({ - host: hostname, - port, - watchFolders, - }); const logger = createDevMiddlewareLogger(terminalReporter); const {middleware, websocketEndpoints} = createDevMiddleware({ serverBaseUrl: devServerUrl, @@ -159,13 +149,8 @@ async function runDevServer( secure: args.https, secureCert: args.cert, secureKey: args.key, - unstable_extraMiddleware: [ - pluginMiddleware, - communityMiddleware, - middleware, - ], + unstable_extraMiddleware: [pluginMiddleware, middleware], websocketEndpoints: { - ...communityWebsocketEndpoints, ...pluginWebsocketEndpoints, ...websocketEndpoints, }, diff --git a/packages/react-native/React/DevSupport/__docs__/README.md b/packages/react-native/React/DevSupport/__docs__/README.md index a6bc5f4de9b4..3abff7516630 100644 --- a/packages/react-native/React/DevSupport/__docs__/README.md +++ b/packages/react-native/React/DevSupport/__docs__/README.md @@ -81,7 +81,7 @@ Each step is described in its own document: | -------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `GET /status` | `RCTBundleURLProvider` | Is Metro running | | `GET /.bundle?…` | `RCTJavaScriptLoader` | Bundle download | -| `GET //.` | `RCTBundleURLProvider` resource URLs | Native resources | +| `GET //.` | `RCTBundleURLProvider` resource URLs | Project file by path; not served by `react-native start` | | WS `/message?role=ios` | `RCTPackagerConnection` | Reload, Dev Menu, custom | | WS `/hot` | `HMRClient.js` | Fast Refresh | | WS `/inspector/device?…` | `RCTCxxInspectorPackagerConnection` | React Native DevTools |