pronovix/drupal-qa

QA tools for Drupal.

Installs: 19 798

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 6

Forks: 3

Type:composer-plugin

3.10.0-alpha3 2022-10-25 12:04 UTC

This package is auto-updated.

Last update: 2023-02-01 11:36:31 UTC


README

Set of modules and libraries and configurations that helps quality assurance in Drupal.

Automated tasks executed when this plugin is installed

Available commands

Drupal QA commands

  • composer drupalqa:phpcs:config-install - installs Pronovix's PHP CodeSniffer configuration for Drupal projects (the plugin tries to install it automatically when it gets installed)
  • composer drupalqa:testrunner:download - installs latest version of Pronovix's TestRunner Go application from Github. (You can avoid API rate limit error if you configure your Github OAuth access token.)
  • drupalqa:phpstan:install-drupal-check-bridge Installs the DrupalCheck-PHPStan bridge
  • drupalqa:phpstan:ensure-configs-exist ensures base configurations for PHPStan (stored in ./config/skeletons/) are available in Composer project root

3rd-party commands

  • composer normalize - Normalizes the composer.json (provided by localheinz/composer-normalize)
  • ./vendor/bin/drupal-check - Checks Drupal 9+ code for deprecations and code quality issues. Deprecated use ./vendor/bin/phpstan directly instead either with the provided PHPStan configs or a custom one. mglaman/drupal-check package dependency was removed in 3.8.0 and replaced with a best effort but still dummy command that proxies every ./vendor/bin/drupal-check call to ./vendor/bin/phpstan.
  • ./vendor/bin/twigcs - Checks TWIG files for violations on coding standards. (provided by friendsoftwig/twigcs)

Packages included

Code quality

Testing

Plus various other packages (like Drupal Coder, PHPUnit, etc.) required by webflo/drupal-core-require-dev.

Development notes

ALL classes, interfaces in this project are internal and not meant to be used by other projects. No backward-compatibility promise is given for these.

Running QA checks:

  • First fix auto-fixable issues with composer lint:fix && composer static:fix
  • then run checkscomposer lint:check && composer static:check