From c0b7bb2b3bf3fc70d7de739417b9bb92c6a43881 Mon Sep 17 00:00:00 2001 From: neverland Date: Sat, 7 Mar 2026 16:33:26 +0800 Subject: [PATCH] fix: move compression and p-retry to dev dependencies --- package.json | 4 ++-- pnpm-lock.yaml | 12 ++++++------ src/server.ts | 14 +++++++++----- 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index a10704f..4c3df1f 100644 --- a/package.json +++ b/package.json @@ -50,12 +50,10 @@ "@types/serve-static": "^2.2.0", "@types/ws": "^8.18.1", "chokidar": "^3.6.0", - "compression": "^1.8.1", "connect-history-api-fallback": "^2.0.0", "express": "^5.2.1", "http-proxy-middleware": "^3.0.5", "ipaddr.js": "^2.3.0", - "p-retry": "^7.1.1", "serve-index": "^1.9.2", "webpack-dev-middleware": "^7.4.5", "ws": "^8.19.0" @@ -74,6 +72,7 @@ "@types/node-forge": "^1.3.14", "@types/trusted-types": "^2.0.7", "@types/ws": "8.18.1", + "compression": "^1.8.1", "connect": "^3.7.0", "cross-env": "^10.1.0", "css-loader": "^7.1.4", @@ -82,6 +81,7 @@ "launch-editor": "^2.13.1", "nano-staged": "^0.9.0", "open": "^11.0.0", + "p-retry": "^7.1.1", "prettier": "3.8.1", "puppeteer": "^24.37.5", "react-refresh": "0.18.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ce20d9c..2066b73 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -23,9 +23,6 @@ importers: chokidar: specifier: ^3.6.0 version: 3.6.0 - compression: - specifier: ^1.8.1 - version: 1.8.1 connect-history-api-fallback: specifier: ^2.0.0 version: 2.0.0 @@ -38,9 +35,6 @@ importers: ipaddr.js: specifier: ^2.3.0 version: 2.3.0 - p-retry: - specifier: ^7.1.1 - version: 7.1.1 serve-index: specifier: ^1.9.2 version: 1.9.2 @@ -87,6 +81,9 @@ importers: '@types/trusted-types': specifier: ^2.0.7 version: 2.0.7 + compression: + specifier: ^1.8.1 + version: 1.8.1 connect: specifier: ^3.7.0 version: 3.7.0 @@ -111,6 +108,9 @@ importers: open: specifier: ^11.0.0 version: 11.0.0 + p-retry: + specifier: ^7.1.1 + version: 7.1.1 prettier: specifier: 3.8.1 version: 3.8.1 diff --git a/src/server.ts b/src/server.ts index 929c5b9..0c96123 100644 --- a/src/server.ts +++ b/src/server.ts @@ -15,6 +15,7 @@ import * as path from 'node:path'; import * as url from 'node:url'; import * as util from 'node:util'; import ipaddr from 'ipaddr.js'; +import { getPort } from './getPort'; import { WebsocketServer } from './servers/WebsocketServer'; import type { AddressInfo, @@ -330,8 +331,9 @@ class Server< return port; } - const { default: pRetry } = await import('p-retry'); - const { getPort } = await import('./getPort'); + const { default: pRetry } = await import( + /* webpackChunkName: "p-retry" */ 'p-retry' + ); const basePort = typeof process.env.RSPACK_DEV_SERVER_BASE_PORT !== 'undefined' ? Number.parseInt(process.env.RSPACK_DEV_SERVER_BASE_PORT, 10) @@ -1457,7 +1459,7 @@ class Server< this.setupWatchFiles(); this.setupWatchStaticFiles(); - this.setupMiddlewares(); + await this.setupMiddlewares(); if (this.options.setupExitSignals) { const signals = ['SIGINT', 'SIGTERM']; @@ -1577,7 +1579,7 @@ class Server< } } - setupMiddlewares(): void { + async setupMiddlewares(): Promise { let middlewares: Middleware[] = []; // Register setup host header check for security @@ -1644,7 +1646,9 @@ class Server< // compress is placed last and uses unshift so that it will be the first middleware used if (this.options.compress) { - const compression = require('compression'); + const { default: compression } = await import( + /* webpackChunkName: "compression" */ 'compression' + ); middlewares.push({ name: 'compression', middleware: compression() }); }