Skip to content
6 changes: 3 additions & 3 deletions .cspell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ patterns:
- name: markdown_code_block
pattern: |
/
^(\s*`{3,})[a-z]+ # match the ``` with a language modifier
[\s\S]*? # the block of code
^\1 # end of the block
^([\s>]*`{3,})[a-z]+ # match the ``` with a language modifier, optionally inside a blockquote
[\s\S]*? # the block of code
^\1 # end of the block
/gmx
- name: markdown_inline_code
pattern: /(\s*`)[^`\n]{3,}`/gmx
Expand Down
9 changes: 8 additions & 1 deletion wiki/Requirements.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,14 @@ Additionally, PHP_CodeSniffer requires the following PHP extensions to be enable
- SimpleXML: used to process ruleset XML files
- XMLWriter: used to create some report formats

The following PHP extension is not required, but is strongly recommended:
The following PHP extensions are not required, but are strongly recommended:
- iconv: used for accurate character length calculation in files containing multibyte characters. Without this extension, some sniffs, like `Generic.Files.LineLength`, may report incorrect results for lines containing non-ASCII characters, as PHP_CodeSniffer will fall back to byte-based length calculations.
- PCNTL: required for parallel processing via the `--parallel` CLI option. Without this extension, PHP_CodeSniffer will not be able to check multiple files simultaneously.

Individual sniffs may have additional requirements such as external applications and scripts. See the [Configuration Options](https://github.com/PHPCSStandards/PHP_CodeSniffer/wiki/Configuration-Options) manual page for a list of these requirements.

> [!WARNING]
> The gRPC PHP extension is known to cause PHP_CodeSniffer to hang when running with parallel processing enabled. If the gRPC extension is loaded, either do not use the `--parallel` CLI option or configure the extension's ini settings as follows:
> ```text
> phpcs -d grpc.enable_fork_support=1 -d grpc.poll_strategy=epoll1 [other options] <file|directory>
> ```
Loading