judapriest/drupal-quality-checker

This a fork from vijaycs85/drupal-quality-checker, it's very specific for Ecedi starter kit & distribution. Setups code quality checking tools for Drupal project.

1.2.1 2020-05-17 18:07 UTC

This package is auto-updated.

Last update: 2024-04-18 02:47:35 UTC


README

Overview

Provides set of libraries to easily setup code quality checks based on GrumPHP for Drupal module/theme/profile.

Note: This library is aimed to help ecedi starterkit and distribution.

Install

  1. Add judapriest/drupal-quality-checker to composer.json: composer require --dev judapriest/drupal-quality-checker
  2. Replace grumphp.yml in your project's root directory (not Drupal root directory) with vendor/judapriest/drupal-quality-checker/grumphp.yml.dist

That's it. Now, all tasks (listed below) run on every git commit.

Note: As part of install, GrumPHP adds pre-commit hook to repository. Existing pre-commit might get destroyed when install/uninstall.

Features

  1. PHPCS with Drupal standard.
  2. PHPLint
  3. YAML Lint
  4. Composer
  5. JSONLint
  6. PHP Copy/Paste Detector (CPD)
  7. Composer Normalizer

Long list of additional checks/validators available here.

How to use

Pre-configured

When installed (see #install), it's configure to run on every git commit. It will only analyse files you are commiting.

Stand alone run

You can also use bin/grumphp run from the root directory to analyse all existing file (minus the exclude or ignore files define in the grumphp.yml file).

Sample

Pass

drupal-quality-checker-pass

Fail

drupal-quality-checker-fail

Demo

Implemented in Modal Configuration module.

Uninstall

  1. You can remove the package with composer remove judapriest/drupal-quality-checker --update-with-dependencies.
  2. Remove the grumphp.yml in project's root directory if it's there.
  3. Modify the .git/hooks/pre-commit and .git/hooks/commit-msg if necessary