diff --git a/docs/config/dep-optimization-options.md b/docs/config/dep-optimization-options.md index 1cc3c710c62846..413452d2a23d71 100644 --- a/docs/config/dep-optimization-options.md +++ b/docs/config/dep-optimization-options.md @@ -45,3 +45,9 @@ Certain options are omitted since changing them would not be compatible with Vit - `external` is also omitted, use Vite's `optimizeDeps.exclude` option - `plugins` are merged with Vite's dep plugin + +## optimizeDeps.force + +- **Type:** `boolean` + +Set to `true` to force dependency pre-bundling, ignoring previously cached optimized dependencies. diff --git a/docs/config/server-options.md b/docs/config/server-options.md index a3f82aa0f12b79..3e09f7b744f2fc 100644 --- a/docs/config/server-options.md +++ b/docs/config/server-options.md @@ -107,13 +107,6 @@ Configure CORS for the dev server. This is enabled by default and allows any ori Specify server response headers. -## server.force - -- **Type:** `boolean` -- **Related:** [Dependency Pre-Bundling](/guide/dep-pre-bundling) - -Set to `true` to force dependency pre-bundling. - ## server.hmr - **Type:** `boolean | { protocol?: string, host?: string, port?: number, path?: string, timeout?: number, overlay?: boolean, clientPort?: number, server?: Server }` diff --git a/docs/guide/migration.md b/docs/guide/migration.md index 9885dec7117742..1e1c42dc8aff7e 100644 --- a/docs/guide/migration.md +++ b/docs/guide/migration.md @@ -116,7 +116,7 @@ Also there are other breaking changes which only affect few users. - [[#8090] feat: preserve process env vars in lib build](https://github.com/vitejs/vite/pull/8090) - `process.env.*` is now preserved in library mode - [[#8280] feat: non-blocking esbuild optimization at build time](https://github.com/vitejs/vite/pull/8280) - - `server.force` option was removed in favor of `force` option. + - `server.force` option was removed in favor of `optimizeDeps.force` option. - [[#8550] fix: dont handle sigterm in middleware mode](https://github.com/vitejs/vite/pull/8550) - When running in middleware mode, Vite no longer kills process on `SIGTERM`. diff --git a/packages/vite/src/node/cli.ts b/packages/vite/src/node/cli.ts index 46d6afd6980ac2..4922a7ec518a18 100644 --- a/packages/vite/src/node/cli.ts +++ b/packages/vite/src/node/cli.ts @@ -87,6 +87,7 @@ cli configFile: options.config, logLevel: options.logLevel, clearScreen: options.clearScreen, + optimizeDeps: { force: options.force }, server: cleanOptions(options) }) @@ -174,7 +175,7 @@ cli configFile: options.config, logLevel: options.logLevel, clearScreen: options.clearScreen, - force: options.force, + optimizeDeps: { force: options.force }, build: buildOptions }) } catch (e) { diff --git a/packages/vite/src/node/config.ts b/packages/vite/src/node/config.ts index 24b0e67fc9d390..d4455c67241844 100644 --- a/packages/vite/src/node/config.ts +++ b/packages/vite/src/node/config.ts @@ -146,11 +146,6 @@ export interface UserConfig { * Preview specific options, e.g. host, port, https... */ preview?: PreviewOptions - /** - * Force dep pre-optimization regardless of whether deps have changed. - * @experimental - */ - force?: boolean /** * Dep optimization options */ diff --git a/packages/vite/src/node/optimizer/index.ts b/packages/vite/src/node/optimizer/index.ts index b5e3f1d0b13565..f93c277a64db77 100644 --- a/packages/vite/src/node/optimizer/index.ts +++ b/packages/vite/src/node/optimizer/index.ts @@ -137,6 +137,11 @@ export interface DepOptimizationOptions { * @experimental */ disabled?: boolean | 'build' | 'dev' + /** + * Force dep pre-optimization regardless of whether deps have changed. + * @experimental + */ + force?: boolean } export interface DepOptimizationResult { @@ -209,7 +214,7 @@ export interface DepOptimizationMetadata { */ export async function optimizeDeps( config: ResolvedConfig, - force = config.force, + force = config.optimizeDeps.force, asCommand = false ): Promise { const log = asCommand ? config.logger.info : debug @@ -265,7 +270,7 @@ export function addOptimizedDepInfo( */ export function loadCachedDepOptimizationMetadata( config: ResolvedConfig, - force = config.force, + force = config.optimizeDeps.force, asCommand = false ): DepOptimizationMetadata | undefined { const log = asCommand ? config.logger.info : debug