{
    "name": "ssch/typo3-rector",
    "description": "Instant fixes for your TYPO3 PHP code by using Rector.",
    "license": "MIT",
    "type": "rector-extension",
    "keywords": [
        "dev",
        "rector",
        "upgrade",
        "refactoring",
        "automation",
        "migration"
    ],
    "authors": [
        {
            "name": "Sebastian Schreiber",
            "email": "breakpoint@schreibersebastian.de",
            "role": "Founder and lead developer"
        },
        {
            "name": "Henrik Elsner"
        },
        {
            "name": "Simon Schaufelberger",
            "role": "Developer"
        }
    ],
    "homepage": "https://www.typo3-rector.com/",
    "support": {
        "issues": "https://github.com/sabbelasichon/typo3-rector/issues",
        "chat": "https://typo3.slack.com/archives/C019R5LAA6A",
        "source": "https://github.com/sabbelasichon/typo3-rector",
        "docs": "https://github.com/sabbelasichon/typo3-rector/tree/main/docs"
    },
    "require": {
        "php": "^7.4 || ^8.0",
        "ext-json": "*",
        "league/flysystem": "^2.0 || ^3.0",
        "league/flysystem-memory": "^2.0 || ^3.0",
        "nette/utils": "^3.2.10 || ^4.0.4",
        "nikic/php-parser": "^5.3.1",
        "phpstan/phpstan": "^2.0.3",
        "rector/rector": "^2.2.9",
        "symfony/console": "^5.4 || ^6.4 || ^7.0",
        "symfony/filesystem": "^5.4 || ^6.4 || ^7.0",
        "symfony/finder": "^5.4 || ^6.4 || ^7.0",
        "symfony/polyfill-php80": "^1.28.0",
        "symfony/polyfill-php81": "^1.28.0",
        "symfony/string": "^5.4 || ^6.4 || ^7.0",
        "webmozart/assert": "^1.11.0"
    },
    "require-dev": {
        "ergebnis/composer-normalize": "^2.42.0",
        "php-parallel-lint/php-parallel-lint": "^1.3.2",
        "phpstan/extension-installer": "^1.3.1",
        "phpstan/phpstan-deprecation-rules": "^2.0.1",
        "phpstan/phpstan-phpunit": "^2.0.1",
        "phpunit/phpunit": "^9.6.17 || ^10.0",
        "symfony/config": "^5.0 || ^6.0 || ^7.0",
        "symfony/dependency-injection": "^5.4.36 || ^6.4.2 || ^7.0.2",
        "symfony/http-kernel": "^5.4.37 || ^6.4.2 || ^7.0.2",
        "symplify/easy-coding-standard": "^12.1.14"
    },
    "suggest": {
        "ext-pdo": "*",
        "ssch/typo3-debug-dump-pass": "^0.0.1"
    },
    "autoload": {
        "psr-4": {
            "Ssch\\TYPO3Rector\\": [
                "src",
                "rules"
            ],
            "Ssch\\TYPO3Rector\\PHPStan\\": "utils/phpstan/src"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Ssch\\TYPO3Rector\\Generator\\": "utils/generator/src",
            "Ssch\\TYPO3Rector\\PHPStan\\Tests\\": "utils/phpstan/tests",
            "Ssch\\TYPO3Rector\\Tests\\": "tests",
            "TYPO3\\": "stubs/TYPO3"
        },
        "classmap": [
            "stubs"
        ],
        "exclude-from-classmap": [
            "**.php.inc"
        ]
    },
    "bin": [
        "bin/typo3-init"
    ],
    "config": {
        "allow-plugins": {
            "ergebnis/composer-normalize": true,
            "phpstan/extension-installer": true
        },
        "optimize-autoloader": true,
        "platform-check": false,
        "sort-packages": true,
        "update-with-dependencies": true
    },
    "extra": {
        "branch-alias": {
            "dev-main": "2.0-dev"
        },
        "rector": {
            "includes": [
                "config/config.php"
            ]
        }
    },
    "scripts": {
        "ci:check-style": "@php ecs check --ansi",
        "ci:check-typo3-rector": "@php vendor/bin/rector process src/Helper --config templates/rector.php --dry-run --ansi",
        "ci:composer:normalize": "@composer normalize --no-check-lock --dry-run",
        "ci:php:lint": "@php parallel-lint src config tests",
        "ci:php:stan": "@php phpstan analyse --memory-limit=-1 --ansi",
        "ci:rector": "@php rector process --dry-run --ansi",
        "ci:tests:unit": "@php phpunit",
        "docs:generate": "@php rule-doc-generator generate rules --output-file docs/all_rectors_overview.md  --ansi --categorize 2",
        "fix:composer:normalize": "@composer normalize --no-check-lock",
        "fix:rector": "@php rector process --ansi",
        "fix:style": "@php ecs check --fix --ansi",
        "local:contribute": [
            "@fix:rector",
            "@fix:style",
            "@ci:php:stan",
            "@phpstan:baseline"
        ],
        "phpstan:baseline": "@php vendor/bin/phpstan analyse --generate-baseline --memory-limit=-1 --ansi --allow-empty-baseline"
    }
}
