Options

RsdoctorRspackPlugin

RsdoctorRspackPlugin class are exported by @rsdoctor/rspack-plugin, and the option is RsdoctorRspackPluginOptions.

cjs
esm
const { RsdoctorRspackPlugin } = require("@rsdoctor/rspack-plugin");

new RsdoctorRspackPlugin({
  /** RsdoctorRspackPluginOptions */
});

RsdoctorWebpackPlugin

RsdoctorWebpackPlugin class are exported by @rsdoctor/webpack-plugin, and the option is RsdoctorWebpackPluginOptions.

cjs
esm
const { RsdoctorWebpackPlugin } = require("@rsdoctor/webpack-plugin");

new RsdoctorWebpackPlugin({
  /** RsdoctorWebpackPluginOptions */
});

Options

Type: Object

This is the options for the RsdoctorWebpackPlugin and RsdoctorRspackPlugin. It contains these properties:

disableClientServer

  • Type: boolean
  • Optional: true
  • Default: false

Whether to automatically open the Rsdoctor report page. If you do not need to view the analysis report provided by Rsdoctor in the browser, you can enable this configuration item.

features

features values

TIP

If an "out of memory" error occurs, you can try the following:

  1. Open the lite mode。
  2. Increase the node memory limit, for example: NODE_OPTIONS=--max-old-space-size=8096.
  • Reason: During the build process, source code information is cached, which exceeds memory. Therefore, enabling the "lite" mode can help alleviate the problem.
  • Difference: The difference between the "lite" mode and the normal mode is that source code information is no longer cached, only packaged code information is cached. Thus, the code analyzed on the page will also only be packaged.

The features attribute is used to analyze the function switches, and the specific functional items are as follows:

  • loader: Analysis of Loader time consumption and code compilation changes, enabled by default.

  • plugins: Analysis of Plugins calls and time consumption, enabled by default.

  • bundle: Analysis of build artifacts, enabled by default.

  • resolver: resolver analysis, disabled by default.

  • lite: lite mode. The difference between lite mode and normal mode is that source code information is no longer cached, only packaged code information is cached, so the code analyzed on the page will also be packaged. The default is normal mode.

Therefore, the default configuration enables bundle analysis capabilities and Loader and Plugin build-time analysis. The Resolver analysis capability is not enabled, and Rspack does not currently support Resolver analysis capabilities.

features types

  • if the features is set as an Array, it will open the features which you define in this array only.

  • if the features is set as an Object, it will close the features which you set the value is false.

RsdoctorWebpackPluginFeatures

The types of features are as follows:

interface RsdoctorWebpackPluginFeatures {
  /**
   * turn off it if you need not to analyze the executions of webpack loaders.
   * @default true
   */
  loader?: boolean;
  /**
   * turn off it if you need not to analyze the executions of webpack plugins.
   * @default true
   */
  plugins?: boolean;
  /**
   * turn off it if you need not to analyze the executions of resolver.
   * @default false
   */
  resolver?: boolean;
  /**
   * turn off it if you need not to analyze the output bundle.
   * @default true
   */
  bundle?: boolean;
  /**
   * turn on it if you just use lite mode. This mode do not have source codes.
   * @default false
   */
  lite?: boolean;
}

RsdoctorRspackPluginFeatures

The types of features are as follows:

interface RsdoctorRspackPluginFeatures {
  /**
   * turn off it if you need not to analyze the executions of webpack loaders.
   * @default true
   */
  loader?: boolean;
  /**
   * turn off it if you need not to analyze the executions of webpack plugins.
   * @default true
   */
  plugins?: boolean;
  /**
   * turn off it if you need not to analyze the output bundle.
   * @default true
   */
  bundle?: boolean;
  /**
   * turn on it if you just use lite mode. This mode do not have source codes.
   * @default false
   */
  lite?: boolean;
}