rolldown/rolldown · error · Error

Invalid value "true" for option…

Error message

Invalid value "true" for option "output.inlineDynamicImports" - this option is not supported for "output.manualChunks".

What it means

Configuration validation in bindingifyCodeSplitting: `output.inlineDynamicImports` was set to true while `output.manualChunks` is also configured. Inlining all dynamic imports into a single chunk conflicts with assigning modules to separate manual chunks, so the combination is rejected with an option-name/message style matching rolldown's option validation errors.

Solutions

  1. Remove `output.inlineDynamicImports` (or set it to false) when using `output.manualChunks`
  2. Or drop `manualChunks` if you want everything inlined into one chunk
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at packages/rolldown/src/utils/bindingify-output-options.ts:308 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of rolldown/rolldown@91b44b9d7b (2026-09-07). Data as JSON: /api/errors/8d7be786bafeb41e. Report an issue: GitHub.

Appendix: source

Thrown at packages/rolldown/src/utils/bindingify-output-options.ts:308

      logger.warn(
        '`inlineDynamicImports` option is deprecated, please use `codeSplitting: false` instead.',
      );
      inlineDynamicImports = inlineDynamicImportsOption;
    }
  } else {
    // codeSplitting is an object (advanced config)
    effectiveChunksOption = codeSplitting;
    // Ignore inlineDynamicImports if codeSplitting object is specified
    if (inlineDynamicImportsOption != null) {
      logger.warn(
        '`inlineDynamicImports` option is ignored because the `codeSplitting` option is specified.',
      );
    }
  }

  // Validate inlineDynamicImports conflicts with manualChunks
  if (inlineDynamicImports === true && manualChunks != null) {
    throw new Error(
      'Invalid value "true" for option "output.inlineDynamicImports" - this option is not supported for "output.manualChunks".',
    );
  }

  // Handle advancedChunks deprecation (only if codeSplitting is not set to object)
  if (effectiveChunksOption == null) {
    if (advancedChunks != null) {
      logger.warn('`advancedChunks` option is deprecated, please use `codeSplitting` instead.');
      effectiveChunksOption = advancedChunks;
    }
  } else if (advancedChunks != null) {
    logger.warn(
      '`advancedChunks` option is ignored because the `codeSplitting` option is specified.',
    );
  }

  // Handle manualChunks migration
  if (manualChunks != null && effectiveChunksOption != null) {

View on GitHub (pinned to 91b44b9d7b)