WarnCaseSensitiveModulesPlugin

Detect case sensitivity conflicts in referenced module names and emit warnings.

Different operating systems may handle case sensitivity in file systems differently. When code references module names that differ only in case, this can lead to unexpected errors during cross-platform compilation. This plugin helps to avoid such situations.

new rspack.WarnCaseSensitiveModulesPlugin();

Register

rspack.config.js
module.exports = {
  plugins: [new rspack.WarnCaseSensitiveModulesPlugin()],
};

Example

Assume there is a utils.js file in the project:

src/
  ├── a.js
  ├── b.js
  └── utils.js

When importing utils.js in a.js and b.js, if the case sensitivity in the import path is inconsistent, the plugin will emit a warning.

src/a.js
import { helper } from './utils';
src/b.js
import { helper } from './Utils';

The warning is as follows:

WARNING There are multiple modules with names that only differ in casing.

This warning indicates that there is a case sensitivity conflict in module names, ensuring that the same module is used with consistent case sensitivity in the project.

TIP

WarnCaseSensitiveModulesPlugin is based on module identifiers rather than the file system to determine case sensitivity differences.

ON THIS PAGE