composer require --dev matheusab/rector-html-output-formatter
Configure it in your rector.php
, where the exportedFilePathPrefix
argument is the path to the exported report.
Example:
return static function (RectorConfig $rectorConfig): void {
$rectorConfig->singleton(HtmlOutputFormatter::class, HtmlOutputFormatter::class);
$rectorConfig->tag(HtmlOutputFormatter::class, OutputFormatterInterface::class);
$rectorConfig
->when(HtmlOutputFormatter::class)
->needs('$exportedFilePathPrefix')
->give(__DIR__ . '/rector-report');
Since v1.1, a custom report template can also be used: see Using a custom report template
After configuring it, you can generate it with Rector's process
command by setting --output-format=html
.
Example:
vendor/bin/rector process --dry-run --output-format=html
When configuring RectorConfig
, a custom report template can be used. Example:
rector.php
:
$rectorConfig
->when(HtmlOutputFormatter::class)
->needs('$customReportTemplatePath')
->give(__DIR__ . '/custom_template.php');
You may use the following variables on the template:
Variable | Description |
---|---|
$errorsJson |
an array with the following keys:changed_files : an array of file namesfile_diffs : an array of files with the following shape:* 'file => string * 'diff' => string * 'applied_rectors' => string[] |
$diffOccurrences |
a map where key : applied rector value : number of occurences |