kreta / php-cs-fixer-config
PHP linting tool using PHP CS Fixer for Kreta packages
Installs: 1 420
Dependents: 1
Suggesters: 0
Security: 0
Stars: 1
Watchers: 3
Forks: 0
Open Issues: 0
Requires
- php: ^7.1
- friendsofphp/php-cs-fixer: ^2.1.0
Requires (Dev)
- phpspec/phpspec: ^3.2
This package is not auto-updated.
Last update: 2024-11-10 02:52:32 UTC
README
PHP linting tool using PHP CS Fixer for Kreta packages
It's based on the ideas of refinery29/php-cs-fixer-config
and
prooph/php-cs-fixer-config
.
Installation
$ composer require --dev kreta/php-cs-fixer-config
Usage
Configuration
Create a configuration file .php_cs
in the root of your project:
<?php /* * This file is part of the Kreta package. * * (c) Beñat Espiña <benatespina@gmail.com> * (c) Gorka Laucirica <gorka.lauzirika@gmail.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ declare(strict_types=1); use Kreta\PhpCsFixerConfig\KretaConfig; $config = new KretaConfig(); $config->getFinder()->in(__DIR__ . '/src'); $cacheDir = getenv('TRAVIS') ? getenv('HOME') . '/.php-cs-fixer' : __DIR__; $config->setCacheFile($cacheDir . '/.php_cs.cache'); return $config;
In case your project uses PhpSpec BDD test framework, also create a .phpspec_cs
file in the root of your project:
<?php /* * This file is part of the Kreta package. * * (c) Beñat Espiña <benatespina@gmail.com> * (c) Gorka Laucirica <gorka.lauzirika@gmail.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ declare(strict_types=1); use Kreta\PhpCsFixerConfig\KretaConfig; $config = new KretaConfig(true); $config->getFinder() ->in(__DIR__ . '/tests/Spec') ->name('*Spec.php'); $cacheDir = getenv('TRAVIS') ? getenv('HOME') . '/.php-cs-fixer' : __DIR__; $config->setCacheFile($cacheDir . '/.php_cs.cache'); return $config;
Git
Add .php_cs.cache
(this is the cache file created by php-cs-fixer
) to .gitignore
:
/vendor /.php_cs.cache
Composer
Add the following scripts in the composer.json
file:
(...) "scripts": { (...) "cs": [ "php-cs-fixer fix --config=.php_cs -v", "php-cs-fixer fix --config=.phpspec_cs -v" ] },
Travis
Update your .travis.yml
to cache the php_cs.cache
file:
cache: directories: - $HOME/.php-cs-fixer
Then run php-cs-fixer
in the script
section:
script: - vendor/bin/php-cs-fixer fix --config=.php_cs --verbose --diff --dry-run - vendor/bin/php-cs-fixer fix --config=.phpspec_cs --verbose --diff --dry-run
Fixing issues
Manually
If you need to fix issues locally and if you previously added the composer script, just run:
$ composer run-script cs
otherwise you can run:
$ vendor/bin/php-cs-fixer fix -v $ vendor/bin/php-cs-fixer fix -v --config=.phpspec_cs
Credits
Kreta is created by:
@benatespina - benatespina@gmail.com
@gorkalaucirica - gorka.lauzirika@gmail.com