Performance¶
Large Files¶
Phpactor is not currently very performant as a language server when used on large and complex files. This is due to the (blocking) static analysis overhead from diagnostics.
You can improve performance by :
disabling diagnostics when documents are _updated_
disabling document highlighting when documents are _updated_
You can disable both settings with:
$ phpactor config:set language_server.diagnostics_on_update false
$ phpactor config:set language_server_highlight.enabled false
Indexing¶
The Phpactor indexer will include all files that satisfy the include globs and exclude any files in the exclude globs.
Depending on your project you may want to customize this, for example, in a Symfony project you can avoid indexing the var/cache directory by excluding /var/cache/**/*.
The following command (run in the project root) will update .phpactor.json to exclude cache and other common directories:
$ phpactor config:set indexer.exclude_patterns '["/vendor/**/Tests/**/*","/vendor/**/tests/**/*","/var/cache/**/*","/vendor/composer/**/*"]'