parameters:
    autoload_files:
        - autoload.php
    level: 0
    excludes_analyse:
       - '../tests/Composer/Test/Fixtures/*'
       - '../tests/Composer/Test/Autoload/Fixtures/*'
       - '../tests/Composer/Test/Plugin/Fixtures/*'
    ignoreErrors:
        # ion cube is not installed
        - '~^Function ioncube_loader_\w+ not found\.$~'
        # rar is not installed
        - '~^Call to static method open\(\) on an unknown class RarArchive\.$~'
        # imagick is not installed
        - '~^Instantiated class Imagick not found\.$~'

        # variables from global scope
        - '~^Undefined variable: \$vendorDir$~'
        - '~^Undefined variable: \$baseDir$~'

        # variable defined in eval
        - '~^Undefined variable: \$res$~'

        # we don't have different constructors for parent/child
        - '~^Unsafe usage of new static\(\)\.$~'

        # hhvm should have support for $this in closures
        -
            count: 1
            message: '~^Using \$this inside anonymous function is prohibited because of PHP 5\.3 support\.$~'
            path: '../tests/Composer/Test/Repository/PlatformRepositoryTest.php'
    paths:
        - ../src
        - ../tests

rules:
    - Composer\PHPStanRules\AnonymousFunctionWithThisRule