|
|
Syntax linting displays syntax errors in your code and semantic linting displays other detected problems, such as mismatching docblock and parameter types, missing documentation for methods and missing `@var` tags.
|
|
|
|
|
|
## Deprecation
|
|
|
For quite some time, Serenata has provided both. However, as of Serenata 4.3.0, all semantic linters have been _deprecated_. Syntax linting will remain intact for the time being.
|
|
|
|
|
|
### Why?
|
|
|
Writing linters and extensive code checks is a whole project on its own. It requires advanced semantic analysis - which is something we also need for other operations, such as autocompletion, so not a reason on its own - and there is a lot of ground to cover to implement this properly and fully.
|
|
|
|
|
|
At the same time, there are several separate existing tools that do most of what we do, _much_ more and will likely evolve further in the future. For some examples, see [this list](https://github.com/ziadoz/awesome-php#static-analysis).
|
|
|
|
|
|
Some of these examples, such as PHPStan, are also open and making great strides and receiving a lot of community attention, so we feel that our time is better spent focusing on areas that aren't already (adequately) covered by other tools, such as the remainder of language server operations, and especially refactoring. |
|
|
\ No newline at end of file |