Browse Source

feature #2221 Add support for user-defined whitespaces (keradus)

This PR was squashed before being merged into the 2.0-dev branch (closes #2221).

Discussion
----------

Add support for user-defined whitespaces

Dictionary:
`messy whitespaces` - using tabs and windows white lines.

I do not plan to create a lot of tests for every single fixer with messy whitespaces support. I plan to have one big integration tests that basically mimics Symfony suite.

DEPENENCIES:
- [x] #2223

TODO:
- [x] integration test
- [x] fixers update
- [x] validation of input parameters (eg to not pass `"xxx" as indent)
- [x] make user config input be primitives, not object
- [x] docs

Commits
-------

7a87593 Add support for user-defined whitespaces
Dariusz Ruminski 8 years ago
parent
commit
1fa3c7bd4e

+ 55 - 42
README.rst

@@ -128,7 +128,7 @@ The ``--format`` option for the output format. Supported formats are ``txt`` (de
 
 NOTE: When using ``junit`` format report generates in accordance with JUnit xml schema from Jenkins (see docs/junit-10.xsd).
 
-The ``--verbose`` option will show the applied fixers. When using the ``txt`` format it will also displays progress notifications.
+The ``--verbose`` option will show the applied rules. When using the ``txt`` format it will also displays progress notifications.
 
 The ``--rules`` option limits the rules to apply on the
 project:
@@ -137,23 +137,23 @@ project:
 
     $ php php-cs-fixer.phar fix /path/to/project --rules=@PSR2
 
-By default, all PSR fixers are run.
+By default, all PSR rules are run.
 
-The ``--rules`` option lets you choose the exact fixers to
-apply (the fixer names must be separated by a comma):
+The ``--rules`` option lets you choose the exact rules to
+apply (the rule names must be separated by a comma):
 
 .. code-block:: bash
 
-    $ php php-cs-fixer.phar fix /path/to/dir --rules=unix_line_endings,full_opening_tag,no_tab_indentation
+    $ php php-cs-fixer.phar fix /path/to/dir --rules=line_ending,full_opening_tag,indentation_type
 
-You can also blacklist the fixers you don't want by placing a dash in front of the fixer name, if this is more convenient,
+You can also blacklist the rules you don't want by placing a dash in front of the rule name, if this is more convenient,
 using ``-name_of_fixer``:
 
 .. code-block:: bash
 
-    $ php php-cs-fixer.phar fix /path/to/dir --rules=-full_opening_tag,-no_tab_indentation
+    $ php php-cs-fixer.phar fix /path/to/dir --rules=-full_opening_tag,-indentation_type
 
-When using combinations of exact and blacklist fixers, applying exact fixers along with above blacklisted results:
+When using combinations of exact and blacklist rules, applying exact ruless along with above blacklisted results:
 
 .. code-block:: bash
 
@@ -162,8 +162,8 @@ When using combinations of exact and blacklist fixers, applying exact fixers alo
 A combination of ``--dry-run`` and ``--diff`` will
 display a summary of proposed fixes, leaving your files unchanged.
 
-The ``--allow-risky`` option allows you to set whether riskys fixer may run. Default value is taken from config file.
-Risky fixer is a fixer, which could change code behaviour. By default no risky fixers are run.
+The ``--allow-risky`` option allows you to set whether riskys rule may run. Default value is taken from config file.
+Risky rule is a rule, which could change code behaviour. By default no risky rules are run.
 
 The command can also read from standard input, in which case it won't
 automatically fix anything:
@@ -172,7 +172,7 @@ automatically fix anything:
 
     $ cat foo.php | php php-cs-fixer.phar fix --diff -
 
-Choose from the list of available fixers:
+Choose from the list of available rules:
 
 * **binary_operator_spaces** [@Symfony]
    Binary operators should be surrounded by at least one space.
@@ -214,11 +214,11 @@ Choose from the list of available fixers:
    Equal sign in declare statement should not be surrounded by spaces.
 
 * **declare_strict_types**
-   Force strict types declaration in all files. (Risky fixer!)
+   Force strict types declaration in all files. (Risky rule!)
 
 * **dir_constant**
    Replaces dirname(__FILE__) expression with equivalent __DIR__ constant.
-   (Risky fixer!)
+   (Risky rule!)
 
 * **echo_to_print**
    Converts echo language construct to print if possible.
@@ -232,7 +232,7 @@ Choose from the list of available fixers:
 
 * **ereg_to_preg**
    Replace deprecated ereg regular expression functions with preg. (Risky
-   fixer!)
+   rule!)
 
 * **full_opening_tag** [@PSR1, @PSR2, @Symfony]
    PHP code must use the long <?php ?> tags or the short-echo <?= ?> tags;
@@ -263,6 +263,13 @@ Choose from the list of available fixers:
    Include/Require and file path should be divided with a single space.
    File path should not be placed under brackets.
 
+* **indentation_type** [@PSR2, @Symfony]
+   Code MUST use an indent of 4 spaces, and MUST NOT use tabs for
+   indenting.
+
+* **line_ending** [@PSR2, @Symfony]
+   All PHP files must use same line ending.
+
 * **linebreak_after_opening_tag**
    Ensure there is no code on the same line as the PHP open tag.
 
@@ -280,7 +287,7 @@ Choose from the list of available fixers:
 
 * **mb_str_functions**
    Replace non multibyte-safe functions with corresponding mb function.
-   (Risky fixer!)
+   (Risky rule!)
 
 * **method_argument_space** [@PSR2, @Symfony]
    In method arguments and method call, there MUST NOT be a space before
@@ -291,7 +298,7 @@ Choose from the list of available fixers:
 
 * **modernize_types_casting**
    Replaces intval, floatval, doubleval, strval, boolval functions calls
-   with according type casting operator. (Risky fixer!)
+   with according type casting operator. (Risky rule!)
 
 * **native_function_casing** [@Symfony]
    Function defined by PHP should be called using the correct casing.
@@ -340,7 +347,7 @@ Choose from the list of available fixers:
    Multi-line whitespace before closing semicolon are prohibited.
 
 * **no_php4_constructor**
-   Convert PHP4-style constructors to __construct. (Risky fixer!)
+   Convert PHP4-style constructors to __construct. (Risky rule!)
 
 * **no_short_bool_cast** [@Symfony]
    Short cast bool using double exclamation mark should not be used.
@@ -362,10 +369,6 @@ Choose from the list of available fixers:
    There MUST NOT be a space after the opening parenthesis. There MUST NOT
    be a space before the closing parenthesis.
 
-* **no_tab_indentation** [@PSR2, @Symfony]
-   Code MUST use an indent of 4 spaces, and MUST NOT use tabs for
-   indenting.
-
 * **no_trailing_comma_in_list_call** [@Symfony]
    Remove trailing commas in list function calls.
 
@@ -420,11 +423,11 @@ Choose from the list of available fixers:
 
 * **php_unit_construct** [@Symfony:risky]
    PHPUnit assertion method calls like "->assertSame(true, $foo)" should be
-   written with dedicated method like "->assertTrue($foo)". (Risky fixer!)
+   written with dedicated method like "->assertTrue($foo)". (Risky rule!)
 
 * **php_unit_dedicate_assert** [@Symfony:risky]
    PHPUnit assertions like "assertInternalType", "assertFileExists", should
-   be used over "assertTrue". (Risky fixer!)
+   be used over "assertTrue". (Risky rule!)
 
 * **php_unit_fqcn_annotation** [@Symfony]
    PHPUnit @expectedException annotation should be a FQCN including a root
@@ -432,7 +435,7 @@ Choose from the list of available fixers:
 
 * **php_unit_strict**
    PHPUnit methods like "assertSame" should be used instead of
-   "assertEquals". (Risky fixer!)
+   "assertEquals". (Risky rule!)
 
 * **phpdoc_align** [@Symfony]
    All items of the @param, @throws, @return, @var, and @type phpdoc tags
@@ -500,7 +503,7 @@ Choose from the list of available fixers:
    @var and @type annotations should not contain the variable name.
 
 * **pow_to_exponentiation** [@PHP56Migration, @PHP70Migration, @PHP71Migration]
-   Converts 'pow()' to '**'. (Risky fixer!)
+   Converts 'pow()' to '**'. (Risky rule!)
 
 * **pre_increment** [@Symfony]
    Pre incrementation/decrementation should be used if possible.
@@ -514,14 +517,14 @@ Choose from the list of available fixers:
 * **psr0**
    Classes must be in a path that matches their namespace, be at least one
    namespace deep and the class name should match the file name. (Risky
-   fixer!)
+   rule!)
 
 * **psr4**
-   Class names should match the file name. (Risky fixer!)
+   Class names should match the file name. (Risky rule!)
 
 * **random_api_migration** [@PHP70Migration, @PHP71Migration]
    Replaces rand, srand, getrandmax functions calls with their mt_*
-   analogs. (Risky fixer!)
+   analogs. (Risky rule!)
 
 * **return_type_declaration** [@Symfony]
    There should be no space before colon and one space after it in return
@@ -542,11 +545,11 @@ Choose from the list of available fixers:
    "(int)". "(double)" and "(real)" as "(float)".
 
 * **silenced_deprecation_error** [@Symfony:risky]
-   Ensures deprecation notices are silenced. (Risky fixer!)
+   Ensures deprecation notices are silenced. (Risky rule!)
 
 * **simplified_null_return**
    A return statement wishing to return nothing should be simply "return".
-   (Risky fixer!)
+   (Risky rule!)
 
 * **single_blank_line_at_eof** [@PSR2, @Symfony]
    A file must always end with a single empty line feed.
@@ -575,10 +578,10 @@ Choose from the list of available fixers:
    Replace all <> with !=.
 
 * **strict_comparison**
-   Comparison should be strict. (Risky fixer!)
+   Comparison should be strict. (Risky rule!)
 
 * **strict_param**
-   Functions should be used with $strict param. (Risky fixer!)
+   Functions should be used with $strict param. (Risky rule!)
 
 * **switch_case_semicolon_to_colon** [@PSR2, @Symfony]
    A case should be followed by a colon and not a semicolon.
@@ -599,9 +602,6 @@ Choose from the list of available fixers:
 * **unary_operator_spaces** [@Symfony]
    Unary operators should be placed adjacent to their operands.
 
-* **unix_line_endings** [@PSR2, @Symfony]
-   All PHP files must use the Unix LF line ending.
-
 * **visibility_required** [@PSR2, @Symfony, @PHP71Migration]
    Visibility MUST be declared on all properties and methods; abstract and
    final MUST be declared before the visibility; static MUST be declared
@@ -618,7 +618,7 @@ fixed but without actually modifying them:
 
     $ php php-cs-fixer.phar fix /path/to/code --dry-run
 
-Instead of using command line options to customize the fixer, you can save the
+Instead of using command line options to customize the rule, you can save the
 project configuration in a ``.php_cs.dist`` file in the root directory
 of your project. The file must return an instance of ``PhpCsFixer\ConfigInterface``,
 which lets you configure the rules, the files and directories that
@@ -628,7 +628,7 @@ is a good practice to add that file into your ``.gitignore`` file.
 With the ``--config`` option you can specify the path to the
 ``.php_cs`` file.
 
-The example below will add two fixers to the default list of PSR2 set fixers:
+The example below will add two rules to the default list of PSR2 set rules:
 
 .. code-block:: php
 
@@ -654,8 +654,8 @@ The example below will add two fixers to the default list of PSR2 set fixers:
 See `Symfony\\Finder <http://symfony.com/doc/current/components/finder.html>`_
 online documentation for other `Finder` methods.
 
-You may also use a blacklist for the Fixers instead of the above shown whitelist approach.
-The following example shows how to use all ``Symfony`` Fixers but the ``full_opening_tag`` Fixer.
+You may also use a blacklist for the rules instead of the above shown whitelist approach.
+The following example shows how to use all ``Symfony`` rules but the ``full_opening_tag`` rule.
 
 .. code-block:: php
 
@@ -674,6 +674,19 @@ The following example shows how to use all ``Symfony`` Fixers but the ``full_ope
         ->setFinder($finder)
     ;
 
+You may want to use non-linux whitespaces in your project. Then you need to
+configure them in your config file. Please be aware that this feature is
+experimental.
+
+.. code-block:: php
+
+    <?php
+
+    return PhpCsFixer\Config::create()
+        ->setIndent("\t")
+        ->setLineEnding("\r\n")
+    ;
+
 By using ``--using-cache`` option with yes or no you can set if the caching
 mechanism should be used.
 
@@ -682,7 +695,7 @@ Caching
 
 The caching mechanism is enabled by default. This will speed up further runs by
 fixing only files that were modified since the last run. The tool will fix all
-files if the tool version has changed or the list of fixers has changed.
+files if the tool version has changed or the list of rules has changed.
 Cache is supported only for tool downloaded as phar file or installed via
 composer.
 
@@ -749,8 +762,8 @@ Dedicated plugins exist for:
 Contribute
 ----------
 
-The tool comes with quite a few built-in fixers and finders, but everyone is
-more than welcome to `contribute`_ more of them.
+The tool comes with quite a few built-in fixers, but everyone is more than
+welcome to `contribute`_ more of them.
 
 Fixers
 ~~~~~~

+ 2 - 1
UPGRADE.md

@@ -92,7 +92,7 @@ function_call_space                            | no_spaces_after_function_name
 indentation                                    | no_tab_indentation
 join_function                                  | no_alias_functions                                | new one fixes more aliases
 line_after_namespace                           | blank_line_after_namespace
-linefeed                                       | unix_line_endings
+linefeed                                       | line_ending                                       | whitespaces type aware
 list_commas                                    | no_trailing_comma_in_list_call
 logical_not_operators_with_spaces              | not_operator_with_space
 logical_not_operators_with_successor_space     | not_operator_with_successor_space
@@ -103,6 +103,7 @@ multiple_use                                   | single_import_per_statement
 namespace_no_leading_whitespace                | no_leading_namespace_whitespace
 newline_after_open_tag                         | linebreak_after_opening_tag
 no_empty_lines_after_phpdocs                   | no_blank_lines_after_phpdoc
+no_tab_indentation                             | indentation_type                                  | whitespaces type aware
 object_operator                                | object_operator_without_whitespace
 operators_spaces                               | binary_operator_spaces
 ordered_use                                    | ordered_imports

+ 28 - 0
src/AbstractFixer.php

@@ -21,6 +21,18 @@ use PhpCsFixer\ConfigurationException\InvalidFixerConfigurationException;
  */
 abstract class AbstractFixer implements FixerInterface
 {
+    /**
+     * @var WhitespacesFixerConfig
+     */
+    protected $whitespacesConfig;
+
+    public function __construct()
+    {
+        if ($this instanceof WhitespacesFixerConfigAwareInterface) {
+            $this->whitespacesConfig = $this->getDefaultWhitespacesFixerConfig();
+        }
+    }
+
     /**
      * {@inheritdoc}
      */
@@ -65,4 +77,20 @@ abstract class AbstractFixer implements FixerInterface
     {
         return true;
     }
+
+    public function setWhitespacesConfig(WhitespacesFixerConfig $config)
+    {
+        $this->whitespacesConfig = $config;
+    }
+
+    private function getDefaultWhitespacesFixerConfig()
+    {
+        static $defaultWhitespacesFixerConfig = null;
+
+        if (null === $defaultWhitespacesFixerConfig) {
+            $defaultWhitespacesFixerConfig = new WhitespacesFixerConfig('    ', "\n");
+        }
+
+        return $defaultWhitespacesFixerConfig;
+    }
 }

+ 2 - 0
src/AbstractPhpdocTypesFixer.php

@@ -37,6 +37,8 @@ abstract class AbstractPhpdocTypesFixer extends AbstractFixer
      */
     public function __construct()
     {
+        parent::__construct();
+
         $this->tags = Annotation::getTagsWithTypes();
     }
 

+ 2 - 0
src/AbstractProxyFixer.php

@@ -28,6 +28,8 @@ abstract class AbstractProxyFixer extends AbstractFixer
 
     public function __construct()
     {
+        parent::__construct();
+
         $this->proxyFixer = $this->createProxyFixer();
     }
 

+ 38 - 0
src/Config.php

@@ -24,7 +24,9 @@ class Config implements ConfigInterface
     private $finder;
     private $format = 'txt';
     private $hideProgress = false;
+    private $indent = '    ';
     private $isRiskyAllowed = false;
+    private $lineEnding = "\n";
     private $name;
     private $phpExecutable;
     private $rules = array('@PSR2' => true);
@@ -87,6 +89,22 @@ class Config implements ConfigInterface
         return $this->hideProgress;
     }
 
+    /**
+     * {@inheritdoc}
+     */
+    public function getIndent()
+    {
+        return $this->indent;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getLineEnding()
+    {
+        return $this->lineEnding;
+    }
+
     /**
      * {@inheritdoc}
      */
@@ -193,6 +211,26 @@ class Config implements ConfigInterface
         return $this;
     }
 
+    /**
+     * {@inheritdoc}
+     */
+    public function setIndent($indent)
+    {
+        $this->indent = $indent;
+
+        return $this;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setLineEnding($lineEnding)
+    {
+        $this->lineEnding = $lineEnding;
+
+        return $this;
+    }
+
     /**
      * {@inheritdoc}
      */

+ 24 - 0
src/ConfigInterface.php

@@ -51,6 +51,16 @@ interface ConfigInterface
      */
     public function getHideProgress();
 
+    /**
+     * @return string
+     */
+    public function getIndent();
+
+    /**
+     * @return string
+     */
+    public function getLineEnding();
+
     /**
      * Returns the name of the configuration.
      *
@@ -127,6 +137,20 @@ interface ConfigInterface
      */
     public function setHideProgress($hideProgress);
 
+    /**
+     * @param string $indent
+     *
+     * @return self
+     */
+    public function setIndent($indent);
+
+    /**
+     * @param string $lineEnding
+     *
+     * @return self
+     */
+    public function setLineEnding($lineEnding);
+
     /**
      * Set PHP executable.
      *

+ 30 - 17
src/Console/Command/FixCommand.php

@@ -120,41 +120,41 @@ The <comment>--format</comment> option for the output format. Supported formats
 
 NOTE: When using ``junit`` format report generates in accordance with JUnit xml schema from Jenkins (see docs/junit-10.xsd).
 
-The <comment>--verbose</comment> option will show the applied fixers. When using the ``txt`` format it will also displays progress notifications.
+The <comment>--verbose</comment> option will show the applied rules. When using the ``txt`` format it will also displays progress notifications.
 
 The <comment>--rules</comment> option limits the rules to apply on the
 project:
 
     <info>$ php %command.full_name% /path/to/project --rules=@PSR2</info>
 
-By default, all PSR fixers are run.
+By default, all PSR rules are run.
 
-The <comment>--rules</comment> option lets you choose the exact fixers to
-apply (the fixer names must be separated by a comma):
+The <comment>--rules</comment> option lets you choose the exact rules to
+apply (the rule names must be separated by a comma):
 
-    <info>$ php %command.full_name% /path/to/dir --rules=unix_line_endings,full_opening_tag,no_tab_indentation</info>
+    <info>$ php %command.full_name% /path/to/dir --rules=line_ending,full_opening_tag,indentation_type</info>
 
-You can also blacklist the fixers you don't want by placing a dash in front of the fixer name, if this is more convenient,
+You can also blacklist the rules you don't want by placing a dash in front of the rule name, if this is more convenient,
 using <comment>-name_of_fixer</comment>:
 
-    <info>$ php %command.full_name% /path/to/dir --rules=-full_opening_tag,-no_tab_indentation</info>
+    <info>$ php %command.full_name% /path/to/dir --rules=-full_opening_tag,-indentation_type</info>
 
-When using combinations of exact and blacklist fixers, applying exact fixers along with above blacklisted results:
+When using combinations of exact and blacklist rules, applying exact ruless along with above blacklisted results:
 
     <info>$ php %command.full_name% /path/to/project --rules=@Symfony,-@PSR1,-blank_line_before_return,strict_comparison</info>
 
 A combination of <comment>--dry-run</comment> and <comment>--diff</comment> will
 display a summary of proposed fixes, leaving your files unchanged.
 
-The <comment>--allow-risky</comment> option allows you to set whether riskys fixer may run. Default value is taken from config file.
-Risky fixer is a fixer, which could change code behaviour. By default no risky fixers are run.
+The <comment>--allow-risky</comment> option allows you to set whether riskys rule may run. Default value is taken from config file.
+Risky rule is a rule, which could change code behaviour. By default no risky rules are run.
 
 The command can also read from standard input, in which case it won't
 automatically fix anything:
 
     <info>$ cat foo.php | php %command.full_name% --diff -</info>
 
-Choose from the list of available fixers:
+Choose from the list of available rules:
 
 {$this->getFixersHelp()}
 
@@ -163,7 +163,7 @@ fixed but without actually modifying them:
 
     <info>$ php %command.full_name% /path/to/code --dry-run</info>
 
-Instead of using command line options to customize the fixer, you can save the
+Instead of using command line options to customize the rule, you can save the
 project configuration in a <comment>.php_cs.dist</comment> file in the root directory
 of your project. The file must return an instance of ``PhpCsFixer\ConfigInterface``,
 which lets you configure the rules, the files and directories that
@@ -173,7 +173,7 @@ is a good practice to add that file into your <comment>.gitignore</comment> file
 With the <comment>--config</comment> option you can specify the path to the
 <comment>.php_cs</comment> file.
 
-The example below will add two fixers to the default list of PSR2 set fixers:
+The example below will add two rules to the default list of PSR2 set rules:
 
     <?php
 
@@ -199,8 +199,8 @@ The example below will add two fixers to the default list of PSR2 set fixers:
 See `Symfony\\\\Finder <http://symfony.com/doc/current/components/finder.html>`_
 online documentation for other `Finder` methods.
 
-You may also use a blacklist for the Fixers instead of the above shown whitelist approach.
-The following example shows how to use all ``Symfony`` Fixers but the ``full_opening_tag`` Fixer.
+You may also use a blacklist for the rules instead of the above shown whitelist approach.
+The following example shows how to use all ``Symfony`` rules but the ``full_opening_tag`` rule.
 
     <?php
 
@@ -219,6 +219,19 @@ The following example shows how to use all ``Symfony`` Fixers but the ``full_ope
 
     ?>
 
+You may want to use non-linux whitespaces in your project. Then you need to
+configure them in your config file. Please be aware that this feature is
+experimental.
+
+    <?php
+
+    return PhpCsFixer\Config::create()
+        ->setIndent("\\t")
+        ->setLineEnding("\\r\\n")
+    ;
+
+    ?>
+
 By using ``--using-cache`` option with yes or no you can set if the caching
 mechanism should be used.
 
@@ -227,7 +240,7 @@ Caching
 
 The caching mechanism is enabled by default. This will speed up further runs by
 fixing only files that were modified since the last run. The tool will fix all
-files if the tool version has changed or the list of fixers has changed.
+files if the tool version has changed or the list of rules has changed.
 Cache is supported only for tool downloaded as phar file or installed via
 composer.
 
@@ -432,7 +445,7 @@ EOF
             $description = $fixer->getDescription();
 
             if ($fixer->isRisky()) {
-                $description .= ' (Risky fixer!)';
+                $description .= ' (Risky rule!)';
             }
 
             $description = str_replace("\n", "\n   ", wordwrap($description, 72, "\n"));

+ 2 - 2
src/Console/Command/ReadmeCommand.php

@@ -176,8 +176,8 @@ Dedicated plugins exist for:
 Contribute
 ----------
 
-The tool comes with quite a few built-in fixers and finders, but everyone is
-more than welcome to `contribute`_ more of them.
+The tool comes with quite a few built-in fixers, but everyone is more than
+welcome to `contribute`_ more of them.
 
 Fixers
 ~~~~~~

+ 5 - 1
src/Console/ConfigurationResolver.php

@@ -27,6 +27,7 @@ use PhpCsFixer\Report\ReporterFactory;
 use PhpCsFixer\RuleSet;
 use PhpCsFixer\StdinFileInfo;
 use PhpCsFixer\ToolInfo;
+use PhpCsFixer\WhitespacesFixerConfig;
 use Symfony\Component\Filesystem\Filesystem;
 use Symfony\Component\Finder\Finder as SymfonyFinder;
 
@@ -219,7 +220,10 @@ final class ConfigurationResolver
             $fixerFactory->registerBuiltInFixers();
             $fixerFactory->registerCustomFixers($this->getConfig()->getCustomFixers());
 
-            $this->fixers = $fixerFactory->useRuleSet($this->getRuleSet())->getFixers();
+            $this->fixers = $fixerFactory
+                ->useRuleSet($this->getRuleSet())
+                ->setWhitespacesConfig(new WhitespacesFixerConfig($this->config->getIndent(), $this->config->getLineEnding()))
+                ->getFixers();
 
             if (false === $this->getRiskyAllowed()) {
                 $riskyFixers = array_map(

Some files were not shown because too many files changed in this diff