конфигурация — PHP-CS-FIXER игнорирует мою конфигурацию

Я создал файл с именем .gm_cs в корне моего проекта и php-cs-fixer установлен глобально.

В конфигурационном файле есть следующее

<?php
$rules = array(
'@PSR2' => true,
'combine_consecutive_unsets' => true,
'no_extra_consecutive_blank_lines' => array('break', 'continue', 'extra', 'return', 'throw', 'use', 'parenthesis_brace_block', 'square_brace_block', 'curly_brace_block'),
'no_useless_else' => true,
'no_useless_return' => true,
'ordered_class_elements' => true,
'array_syntax' => array('syntax' => 'short'),
'ordered_imports' => true,
'phpdoc_add_missing_param_annotation' => true,
'psr4' => true,
'strict_comparison' => true,
'strict_param' => true,
);

$fixers = array(
'-pre_increment'
);

return PhpCsFixer\Config::create()->setRiskyAllowed(false)->setRules($rules)->fixers($fixers)->in(__DIR__);

Я вызываю команду из git-bash для Windows со следующим:
php-cs-fixer fix -vvv ./private --config-file=gm_cs

Я также попробовал это:
php-cs-fixer fix -vvv ./private --config-file=.gm_cs
php-cs-fixer fix -vvv ./private --config-file=./.gm_cs
php-cs-fixer fix -vvv ./private --config gm_cs
php-cs-fixer fix -vvv ./private --config .gm_cs
php-cs-fixer fix -vvv ./private --config ./.gm_cs
php-cs-fixer fix -vvv ./private --config=gm_cs
php-cs-fixer fix -vvv ./private --config=.gm_cs
php-cs-fixer fix -vvv ./private --config=./.gm_cs

В отчаянии я скопировал .php_cs из моей папки composer / vendor:

<?php
Symfony\CS\Fixer\Contrib\HeaderCommentFixer::setHeader($header);

return Symfony\CS\Config::create()
// use default SYMFONY_LEVEL and extra fixers:
->fixers(array(
'-pre_increment',
))
->finder(
Symfony\CS\Finder::create()
->exclude('Symfony/CS/Tests/Fixtures')
->in(__DIR__)
)
;

И сократил количество исправлений, чтобы просто остановить прединкрементную, а затем запустил его со всеми перечисленными выше командами, и это до сих пор не решило проблему.

Больше всего на свете я хочу, чтобы это прекратило менять местами $i++ в ++$i потому что это огромный проект, который я унаследовал, и у меня нет времени, чтобы протестировать все эти изменения (пока нет никаких модульных тестов).

Будем весьма благодарны за любые советы или помощь, которые кто-либо может предоставить.

2

Решение

Оказывается версия php-cs-fixer Я использую это Symfony\CS\Fixer\ один, и это не займет $rules,

Кроме того, файл должен быть назван .php_cs

3

Другие решения

Symfony независимый пример: http://www.inanzzz.com/index.php/post/m9yq/creating-a-standalone-composer-json-library-or-package

.php_cs

return PhpCsFixer\Config::create()
->setUsingCache(false)
->setRules([
'array_syntax' => ['syntax' => 'short'],
'ordered_imports' => true,
])
->setFinder(
PhpCsFixer\Finder::create()
->exclude(['bin', 'vendor'])
->in(__DIR__)
);

Symfony зависимый пример:

.php_cs

$finder = Symfony\CS\Finder::create()
->exclude(['app', 'spec', 'build', 'bin', 'web', 'vendor'])
->in(__DIR__);

return  Symfony\CS\Config::create()
->fixers(['short_array_syntax', '-phpdoc_align', 'ordered_use'])
->finder($finder);

Пример без .php_cs файл:

$ bin/php-cs-fixer fix src --fixers=short_array_syntax
1

По вопросам рекламы [email protected]