Skip to content

Fixers set for PHP-CS-Fixer. Removes debug statements, which shouldn't be in production ever.

License

Notifications You must be signed in to change notification settings

akovalyov/DebugStatementsFixers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Debug Statements Fixers

Fixers set for PHP-CS-Fixer. Removes debug statements, which shouldn't be in production ever.

PHP 7.0 Build Status Latest Stable Version Total Downloads License

If you have ever had 500 Error on production because dump() function is missing, or you forget to remove debug statements time to time - this small package is for you.

Debug statements are good for debugging, but it should never get to master branch.

Initially proposed as RFC in PHP-CS-Fixer repository, it was considered too risky to have it in core (see discussion at PHP-CS-Fixer/PHP-CS-Fixer#2218)

N.B. These fixers are risky and potentially can break your application. You should understand consequences of having it in your project (especially a legacy one). You are warned.

Functions being removed:

  • dump()
  • var_dump()
  • dd()

Usage

  1. Install it:

    $ composer require drew/debug-statements-fixers:^0.4 --dev
  2. Adjust your PHP-CS-Fixer config:

    # .php_cs.dist
    <?php
    
    $finder = PhpCsFixer\Finder::create()
        ->in([__DIR__.'/src', __DIR__.'/tests']);
    
    return PhpCsFixer\Config::create()
        ->setRules([
            //any fixers you would like to have
            'RemoveDebugStatements/dump' => true,
        ])
        ->registerCustomFixers([new Drew\DebugStatementsFixers\Dump()])
        ->setRiskyAllowed(true)
        ->setFinder($finder);    
  3. Enjoy.

Protip!

Works best when integrated with your CI server, just add this step to your CI config:

$ php vendor/bin/php-cs-fixer fix --diff --dry-run -v

About

Fixers set for PHP-CS-Fixer. Removes debug statements, which shouldn't be in production ever.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages