forked from Wavyzz/dolibarr
* Qual: Fix FunctionArray phan notices * Fix class name in typing of htdocs/modulebuilder/index.php * Fix customreports phpdoc * Adjust file type after completeFileArrayWithDatabaseInfo * Further phpdoc typing improvements * More phpdoc * Improve typing with cast on position field * Force phpstan version * Add phpstan exception * Fix array index type + adjust phan config comment
PHPStan (https://phpstan.org)
-----------------------------
PHPStan requires PHP >= 7.1
Config File is: ./phpstan.neon
= Installation =
cd ./build/phpstan
mkdir phpstan
cd phpstan
composer require --dev phpstan/phpstan
= Build report from CLI =
In dolibarr/
mv htdocs/custom /tmp/
php build/phpstan/phpstan/vendor/bin/phpstan -v analyze -c ./phpstan.neon -a build/phpstan/bootstrap.php --memory-limit 4G --error-format=table htdocs/commande/class
php build/phpstan/phpstan/vendor/bin/phpstan -v analyze -c ./phpstan.neon -a build/phpstan/bootstrap.php --memory-limit 4G --error-format=table htdocs/
mv /tmp/custom htdocs
Build HTML report from Cron:
Example of line to add into a cron to generate a HTML report:
0 1 5 * * cd /home/dolibarr/preview.dolibarr.org/dolibarr; chmod -R u+w /home/dolibarr/preview.dolibarr.org/dolibarr; git pull; /home/dolibarr/phpstan/vendor/bin/phpstan -v analyze --memory-limit 4G --error-format=github | awk ' BEGIN{ print "Date "strftime("%Y-%m-%d")"<br>" } { print $0"<br>" } END{ print NR } ' > /home/dolibarr/doxygen.dolibarr.org/phpstan/index.html