mirror of
https://github.com/FriendsOfTYPO3/tea.git
synced 2024-11-26 03:16:13 +01:00
200 lines
7.1 KiB
JSON
200 lines
7.1 KiB
JSON
{
|
|
"name": "ttn/tea",
|
|
"type": "typo3-cms-extension",
|
|
"description": "TYPO3 example extension for unit testing and best practices",
|
|
"keywords": [
|
|
"typo3",
|
|
"example",
|
|
"extension",
|
|
"tdd",
|
|
"phpunit",
|
|
"unit testing",
|
|
"best practices"
|
|
],
|
|
"license": "GPL-2.0-or-later",
|
|
"authors": [
|
|
{
|
|
"name": "Oliver Klee",
|
|
"email": "typo3-coding@oliverklee.de",
|
|
"homepage": "https://www.oliverklee.de",
|
|
"role": "developer"
|
|
}
|
|
],
|
|
"require": {
|
|
"php": "~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0",
|
|
"typo3/cms-core": "^9.5 || ^10.4",
|
|
"typo3/cms-extbase": "^9.5 || ^10.4",
|
|
"typo3/cms-fluid": "^9.5 || ^10.4",
|
|
"typo3/cms-frontend": "^9.5 || ^10.4"
|
|
},
|
|
"replace": {
|
|
"typo3-ter/tea": "self.version"
|
|
},
|
|
"conflict": {
|
|
"doctrine/dbal": "2.13.1",
|
|
"typo3/class-alias-loader": "< 1.1.0"
|
|
},
|
|
"require-dev": {
|
|
"codeception/codeception": "^4.1.22",
|
|
"ergebnis/composer-normalize": "^2.15.0",
|
|
"friendsofphp/php-cs-fixer": "^2.19.2",
|
|
"helhum/typo3-composer-setup": "^0.5.7",
|
|
"helmich/typo3-typoscript-lint": "^2.5.2",
|
|
"jangregor/phpstan-prophecy": "^0.8.1",
|
|
"nimut/testing-framework": "^5.2.1",
|
|
"phpstan/extension-installer": "^1.1.0",
|
|
"phpstan/phpstan": "^0.12.98",
|
|
"phpstan/phpstan-phpunit": "^0.12.22",
|
|
"phpunit/phpunit": "^7.5.20",
|
|
"saschaegerer/phpstan-typo3": "^0.13.3",
|
|
"seld/jsonlint": "^1.8.3",
|
|
"squizlabs/php_codesniffer": "^3.6.0",
|
|
"symfony/yaml": "^4.4.29 || ^5.3.6 || ^6.0",
|
|
"typo3/cms-fluid-styled-content": "^9.5 || ^10.4"
|
|
},
|
|
"config": {
|
|
"preferred-install": {
|
|
"*": "dist"
|
|
},
|
|
"sort-packages": true,
|
|
"vendor-dir": ".Build/vendor"
|
|
},
|
|
"extra": {
|
|
"branch-alias": {
|
|
"dev-main": "1.0.x-dev"
|
|
},
|
|
"typo3/cms": {
|
|
"app-dir": ".Build",
|
|
"extension-key": "tea",
|
|
"web-dir": ".Build/public"
|
|
}
|
|
},
|
|
"autoload": {
|
|
"psr-4": {
|
|
"TTN\\Tea\\": "Classes/"
|
|
}
|
|
},
|
|
"autoload-dev": {
|
|
"psr-4": {
|
|
"TTN\\Tea\\Tests\\": "Tests/"
|
|
}
|
|
},
|
|
"prefer-stable": true,
|
|
"scripts": {
|
|
"post-autoload-dump": [
|
|
"@link-extension"
|
|
],
|
|
"ci": [
|
|
"@ci:static"
|
|
],
|
|
"ci:composer:normalize": "@composer normalize --dry-run",
|
|
"ci:coverage": [
|
|
"@ci:coverage:unit",
|
|
"@ci:coverage:functional"
|
|
],
|
|
"ci:coverage:functional": ".Build/vendor/bin/phpunit -c .Build/vendor/nimut/testing-framework/res/Configuration/FunctionalTests.xml --whitelist Classes --coverage-php=coverage/functional.cov Tests/Functional",
|
|
"ci:coverage:merge": "@php tools/phpcov merge --clover=./coverage/clover.xml coverage/",
|
|
"ci:coverage:unit": ".Build/vendor/bin/phpunit -c .Build/vendor/nimut/testing-framework/res/Configuration/UnitTests.xml --whitelist Classes --coverage-php=coverage/unit.cov Tests/Unit",
|
|
"ci:dynamic": [
|
|
"@ci:tests"
|
|
],
|
|
"ci:json:lint": "find . ! -path '*.Build/*' ! -path '*Resources/Private/node_modules/*' -name '*.json' | xargs php .Build/vendor/bin/jsonlint -q",
|
|
"ci:php": [
|
|
"@ci:php:copypaste",
|
|
"@ci:php:cs-fixer",
|
|
"@ci:php:lint",
|
|
"@ci:php:sniff",
|
|
"@ci:php:stan"
|
|
],
|
|
"ci:php:copypaste": "@php ./tools/phpcpd Classes Configuration Tests",
|
|
"ci:php:cs-fixer": "php-cs-fixer fix --config .php_cs.php -v --dry-run --using-cache false --diff --diff-format=udiff",
|
|
"ci:php:lint": "find *.php Classes Configuration Tests -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l",
|
|
"ci:php:sniff": "phpcs Classes Configuration Tests",
|
|
"ci:php:stan": "phpstan --no-progress",
|
|
"ci:static": [
|
|
"@ci:composer:normalize",
|
|
"@ci:json:lint",
|
|
"@ci:php:copypaste",
|
|
"@ci:php:cs-fixer",
|
|
"@ci:php:lint",
|
|
"@ci:php:sniff",
|
|
"@ci:php:stan",
|
|
"@ci:ts:lint",
|
|
"@ci:yaml:lint"
|
|
],
|
|
"ci:tests": [
|
|
"@ci:tests:unit",
|
|
"@ci:tests:functional"
|
|
],
|
|
"ci:tests:functional": "find 'Tests/Functional' -wholename '*Test.php' | parallel --gnu 'echo; echo \"Running functional test suite {}\"; .Build/vendor/bin/phpunit -c .Build/vendor/nimut/testing-framework/res/Configuration/FunctionalTests.xml {}';",
|
|
"ci:tests:unit": ".Build/vendor/bin/phpunit -c .Build/vendor/nimut/testing-framework/res/Configuration/UnitTests.xml Tests/Unit",
|
|
"ci:ts:lint": "typoscript-lint -c Configuration/TsLint.yml --ansi -n --fail-on-warnings -vvv Configuration/TypoScript",
|
|
"ci:yaml:lint": "find . ! -path '*.Build/*' ! -path '*Resources/Private/node_modules/*' -name '*.yml' | xargs php ./.Build/vendor/bin/yaml-lint",
|
|
"docs:generate": [
|
|
"docker run --rm t3docs/render-documentation show-shell-commands > tempfile.sh; echo 'dockrun_t3rd makehtml' >> tempfile.sh; bash tempfile.sh; rm tempfile.sh"
|
|
],
|
|
"fix:php": [
|
|
"@fix:php:cs",
|
|
"@fix:php:sniff"
|
|
],
|
|
"fix:php:cs": "php-cs-fixer fix --config .php_cs.php",
|
|
"fix:php:sniff": "phpcbf Classes Configuration Tests",
|
|
"link-extension": [
|
|
"@php -r 'is_dir($extFolder=__DIR__.\"/.Build/public/typo3conf/ext/\") || mkdir($extFolder, 0777, true);'",
|
|
"@php -r 'file_exists($extFolder=__DIR__.\"/.Build/public/typo3conf/ext/tea\") || symlink(__DIR__,$extFolder);'"
|
|
],
|
|
"phpstan:baseline": ".Build/vendor/bin/phpstan --generate-baseline=phpstan-baseline.neon",
|
|
"prepare-release": [
|
|
"rm .gitignore",
|
|
"rm -rf .Build",
|
|
"rm -rf .ddev",
|
|
"rm -rf .github",
|
|
"rm -rf .gitlab",
|
|
"rm -rf Tests",
|
|
"rm -rf tools",
|
|
"rm .editorconfig",
|
|
"rm .gitattributes",
|
|
"rm .php_cs.php",
|
|
"rm Resources/Private/.eslintignore",
|
|
"rm Resources/Private/.eslintrc.json",
|
|
"rm Resources/Private/.prettierrc.js",
|
|
"rm Resources/Private/package.json",
|
|
"rm Resources/Private/stylelint.config.js",
|
|
"rm codeception.yml",
|
|
"rm phive.xml",
|
|
"rm phpstan-baseline.neon",
|
|
"rm phpstan.neon",
|
|
"rm phpcs.xml"
|
|
]
|
|
},
|
|
"scripts-descriptions": {
|
|
"ci": "Runs all dynamic and static code checks.",
|
|
"ci:composer:normalize": "Checks the composer.json.",
|
|
"ci:coverage:functional": "Generates the code coverage report for functional tests.",
|
|
"ci:coverage:merge": "Merges the code coverage reports for unit and functional tests.",
|
|
"ci:coverage:unit": "Generates the code coverage report for unit tests.",
|
|
"ci:dynamic": "Runs all PHPUnit tests (unit and functional).",
|
|
"ci:json:lint": "Lints the JSON files.",
|
|
"ci:php": "Runs all static checks for the PHP files.",
|
|
"ci:php:copypaste": "Checks for copy'n'pasted PHP code.",
|
|
"ci:php:cs-fixer": "Checks the code style with the PHP Coding Standards Fixer (PHP-CS-Fixer).",
|
|
"ci:php:lint": "Lints the PHP files for syntax errors.",
|
|
"ci:php:sniff": "Checks the code style with PHP_CodeSniffer (PHPCS).",
|
|
"ci:php:stan": "Checks the PHP types using PHPStan.",
|
|
"ci:static": "Runs all static code checks (syntax, style, types).",
|
|
"ci:tests": "Runs all PHPUnit tests (unit and functional).",
|
|
"ci:tests:functional": "Runs the functional tests.",
|
|
"ci:tests:unit": "Runs the unit tests.",
|
|
"ci:ts:lint": "Lints the TypoScript files.",
|
|
"ci:yaml:lint": "Lints the YAML files.",
|
|
"docs:generate": "Renders the extension ReST documentation.",
|
|
"fix:php": "Runs all fixers for the PHP code.",
|
|
"fix:php:cs": "Fixes the code style with PHP-CS-Fixer.",
|
|
"fix:php:sniff": "Fixes the code style with PHP_CodeSniffer.",
|
|
"phpstan:baseline": "Updates the PHPStan baseline file to match the code."
|
|
},
|
|
"support": {
|
|
"issues": "https://github.com/TYPO3-Documentation/tea/issues",
|
|
"source": "https://github.com/TYPO3-Documentation/tea"
|
|
}
|
|
}
|