composer.json
{
"name": "serendipity_hq/bundle-features",
"description": "Manage features and plans in your Symfony app.",
"type": "symfony-bundle",
"keywords": ["pricing", "plans", "paid", "features gating"],
"homepage": "https://github.com/Aerendir/bundle-features",
"license": "MIT",
"authors": [
{
"name": "Adamo Aerendir Crespi",
"email": "hello@aerendir.me"
}
],
"require": {
"php": "^7.4|^8.0",
"ext-iconv": "*",
"ext-intl": "*",
"ext-json": "*",
"doctrine/common": "^2.5 || ^3.0",
"doctrine/doctrine-bundle": "^1.8 || ^2.0",
"doctrine/orm": "^2.5",
"serendipity_hq/component-array-writer": "^5.1",
"serendipity_hq/component-value-objects": "^7.1",
"symfony/form": "^4.4|^5.4|^6.0",
"symfony/framework-bundle": "^4.4|^5.4|^6.0",
"symfony/options-resolver": "^4.4|^5.4|^6.0",
"symfony/routing": "^4.4|^5.4|^6.0",
"symfony/translation": "^4.4|^5.4|^6.0",
"thecodingmachine/safe": "^1.0|^2.0"
},
"require-dev": {
"ext-ast": "*",
"bamarni/composer-bin-plugin": "^1.4",
"phpstan/phpstan": "^1.5.6",
"phpstan/phpstan-doctrine": "1.3.11",
"phpstan/phpstan-phpunit": "1.1.1",
"phpstan/phpstan-symfony": "1.2.8",
"rector/rector": "0.13.9",
"roave/security-advisories": "dev-master",
"serendipity_hq/component-text-matrix": "^3.0",
"serendipity_hq/rector-config": "^1.0",
"symfony/var-dumper": "^4.4|^5.4|^6.0",
"thecodingmachine/phpstan-safe-rule": "1.2.0"
},
"autoload": {
"psr-4": {
"SerendipityHQ\\Bundle\\FeaturesBundle\\": "src"
}
},
"autoload-dev": {
"psr-4": {
"SerendipityHQ\\Bundle\\FeaturesBundle\\Tests\\": "tests"
}
},
"config": {
"sort-packages": true,
"allow-plugins": {
"composer/package-versions-deprecated": true,
"bamarni/composer-bin-plugin": true
}
},
"scripts": {
"bin": "echo 'bin not installed'",
"post-install-cmd": [
"@composer bin all install --ansi"
],
"post-update-cmd": [
"@composer bin all update --ansi"
]
},
"extra": {
"bamarni-bin": {
"bin-links": false
}
}
}