Есть проект на phalcon framework. При прогоне через phpstan разумеется выдается ошибка типа
Class App\Validation\PhalconValidationWithAssertion not found and not be autoloaded.
При настройке phpstan.neon добавил вот такую настройку:
parameters:
ignoreErrors:
- '#Class Phalcon\\[a-zA-Z0-9\\]+ not found and could not be autoloaded\.#'
И при повторном прогоне через phpstan получаю вот такие сообщения:
Error message "Class Phalcon\Di\InjectionAwareInterface not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Http\Request not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Mvc\ModelInterface not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Logger\Adapter not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Logger\Formatter\Line not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Logger\Formatter not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Mvc\Model not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Mvc\Model not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Mvc\User\Component not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Mvc\User\Component not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Mvc\User\Component not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Mvc\User\Component not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Error message "Class Phalcon\Events\EventsAwareInterface not found and could not be autoloaded." cannot be ignored, use excludes_analyse instead.
Разумеется, исключить файлы как рекомендует phpstan я не могу, ибо тогда половина проекта не будет анализироваться. Есть ли какие-нибудь варианты обхода?
Еще есть проблемы с автолоадером composer'а. Если запускать проект, то autoload composer'а работает нормально, но если пытаться прогнать phpstan'ом, то он начинает выдавать ошибки:
Requests/Request.php
------ ---------------------------------------------------------------
Class App\Requests\AbstractRequest not found and could not be
autoloaded.
Когда файл класса Request.php:
<?php
namespace App\Requests;
class Request extends AbstractRequest
{
}
Файл AbstractRequest:
<?php
namespace App\Requests;
abstract class AbstractRequest extends \Phalcon\Http\Request
{
public function validate()
{
return true;
}
}
а в composer.json секция автолоадера:
"autoload": {
"psr-4": {
"App\\": "app/",
"Db\\": "db/",
"Domain\\": "Domain/"
}
},
Запускаю phpstan из докер контейнера, предварительно пробросив туда ФС проекта. phpstan файл vendor/autoload.php видит, так же пробовал в phpstan.neon путь до autoload.php composer'а, результат тот же. Подскажите что не так делаю