You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
pixelfed/composer.json

138 lines
4.4 KiB
JSON

{
"name": "pixelfed/pixelfed",
"description": "Open and ethical photo sharing platform, powered by ActivityPub federation.",
"keywords": ["framework", "laravel", "pixelfed", "activitypub", "social", "network", "federation"],
"license": "AGPL-3.0-only",
"type": "project",
"require": {
"php": "^8.3|^8.4|^8.5",
"ext-bcmath": "*",
"ext-ctype": "*",
"ext-curl": "*",
"ext-intl": "*",
"ext-json": "*",
"ext-mbstring": "*",
"ext-openssl": "*",
"ext-redis": "*",
"bacon/bacon-qr-code": "^3.0",
10 months ago
"brick/math": "^0.14",
11 months ago
"guzzlehttp/guzzle": "^7.10",
4 weeks ago
"intervention/image-driver-vips": "^4.1",
"intervention/image-laravel": "^4.1",
"laravel-notification-channels/expo": "^2.0.0",
"laravel-notification-channels/webpush": "^13.0",
Upgrade to Laravel 13 - laravel/framework ^12.0 -> ^13.0 - spatie/laravel-backup ^9.2.9 -> ^10.0 (forced: 9.x pins illuminate/notifications ^12.40, incompatible with L13) - Drop psalm/plugin-laravel + vimeo/psalm (dev-only static analysis): the only version chain compatible with L13's testbench-core needs vimeo/psalm ^7.0.0-beta, which requires narrowing the project's declared PHP floor (composer platform.php is pinned to 8.3.0 to keep composer.lock installable on the oldest supported PHP patch; the psalm 7 betas require specific 8.3.16+/8.4.3+/8.5.0+ floors). Its CI workflow (.github/workflows/php-psalm.yml) was already disabled (`on: []`, "too many errors"). Larastan/PHPStan remains as the project's static analysis tool, unaffected. - Rename VerifyCsrfToken/ValidateCsrfToken -> PreventRequestForgery in bootstrap/app.php and config/sanctum.php (the L13 rename; old classes remain as deprecated aliases but new code should reference the new name), and validateCsrfTokens() -> preventRequestForgery() in the middleware config. Everything else (cache serializable_classes, cache/session/redis key prefixes, upsert() uniqueBy, JobAttempted/QueueBusy event properties, pagination view names, Manager::extend bindings, model-boot nested instantiation) was checked against the app's actual code and found to be either already handled, already using the new convention, or not applicable to any pattern in this codebase. All 715 tests pass (verified against a clean baseline with Redis available locally via Docker); Pint and Larastan (the project's configured `composer analyse` scope) are both clean.
2 weeks ago
"laravel/framework": "^13.0",
"laravel/horizon": "^5.0",
"laravel/passport": "^13.4.4",
"laravel/pulse": "^1.8",
"laravel/sanctum": "^4.3",
"laravel/tinker": "^3.0",
"laravel/ui": "^4.2",
"league/flysystem-aws-s3-v3": "^3.0",
"league/iso3166": "^2.1|^4.0",
"league/oauth2-client": "^2.8",
"league/uri": "^7.4",
"matomo/device-detector": "^6.5",
"pbmedia/laravel-ffmpeg": "^8.0",
"phpseclib/phpseclib": "~3.0",
"pixelfed/fractal": "^0.18.0",
"pixelfed/laravel-snowflake": "^2.0",
"pragmarx/google2fa": "^9.0",
10 months ago
"predis/predis": "^3.2",
"pusher/pusher-php-server": "^7.2",
"resend/resend-php": "^1.14",
Upgrade to Laravel 13 - laravel/framework ^12.0 -> ^13.0 - spatie/laravel-backup ^9.2.9 -> ^10.0 (forced: 9.x pins illuminate/notifications ^12.40, incompatible with L13) - Drop psalm/plugin-laravel + vimeo/psalm (dev-only static analysis): the only version chain compatible with L13's testbench-core needs vimeo/psalm ^7.0.0-beta, which requires narrowing the project's declared PHP floor (composer platform.php is pinned to 8.3.0 to keep composer.lock installable on the oldest supported PHP patch; the psalm 7 betas require specific 8.3.16+/8.4.3+/8.5.0+ floors). Its CI workflow (.github/workflows/php-psalm.yml) was already disabled (`on: []`, "too many errors"). Larastan/PHPStan remains as the project's static analysis tool, unaffected. - Rename VerifyCsrfToken/ValidateCsrfToken -> PreventRequestForgery in bootstrap/app.php and config/sanctum.php (the L13 rename; old classes remain as deprecated aliases but new code should reference the new name), and validateCsrfTokens() -> preventRequestForgery() in the middleware config. Everything else (cache serializable_classes, cache/session/redis key prefixes, upsert() uniqueBy, JobAttempted/QueueBusy event properties, pagination view names, Manager::extend bindings, model-boot nested instantiation) was checked against the app's actual code and found to be either already handled, already using the new convention, or not applicable to any pattern in this codebase. All 715 tests pass (verified against a clean baseline with Redis available locally via Docker); Pint and Larastan (the project's configured `composer analyse` scope) are both clean.
2 weeks ago
"spatie/laravel-backup": "^10.0",
"spatie/laravel-honeypot": "^4.7",
"spatie/laravel-image-optimizer": "^1.8.2",
"stevebauman/purify": "^6.2.0",
10 months ago
"symfony/http-client": "^7.3",
"symfony/http-foundation": "^7.4.13",
10 months ago
"symfony/mailgun-mailer": "^7.3"
},
"require-dev": {
4 days ago
"barryvdh/laravel-ide-helper": "^3.7",
"fakerphp/faker": "^1.23",
"larastan/larastan": "^3.0",
"laravel/pint": "^1.13",
"laravel/telescope": "^5.5",
"mockery/mockery": "^1.6",
"nunomaduro/collision": "^8.8",
Upgrade to Laravel 13 - laravel/framework ^12.0 -> ^13.0 - spatie/laravel-backup ^9.2.9 -> ^10.0 (forced: 9.x pins illuminate/notifications ^12.40, incompatible with L13) - Drop psalm/plugin-laravel + vimeo/psalm (dev-only static analysis): the only version chain compatible with L13's testbench-core needs vimeo/psalm ^7.0.0-beta, which requires narrowing the project's declared PHP floor (composer platform.php is pinned to 8.3.0 to keep composer.lock installable on the oldest supported PHP patch; the psalm 7 betas require specific 8.3.16+/8.4.3+/8.5.0+ floors). Its CI workflow (.github/workflows/php-psalm.yml) was already disabled (`on: []`, "too many errors"). Larastan/PHPStan remains as the project's static analysis tool, unaffected. - Rename VerifyCsrfToken/ValidateCsrfToken -> PreventRequestForgery in bootstrap/app.php and config/sanctum.php (the L13 rename; old classes remain as deprecated aliases but new code should reference the new name), and validateCsrfTokens() -> preventRequestForgery() in the middleware config. Everything else (cache serializable_classes, cache/session/redis key prefixes, upsert() uniqueBy, JobAttempted/QueueBusy event properties, pagination view names, Manager::extend bindings, model-boot nested instantiation) was checked against the app's actual code and found to be either already handled, already using the new convention, or not applicable to any pattern in this codebase. All 715 tests pass (verified against a clean baseline with Redis available locally via Docker); Pint and Larastan (the project's configured `composer analyse` scope) are both clean.
2 weeks ago
"pestphp/pest": "^4.0"
},
"autoload": {
"psr-4": {
"App\\": "app/",
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/"
},
"files": [
"app/helpers.php"
]
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
},
"files": [
"app/helpers.php"
]
},
"extra": {
"laravel": {
"dont-discover": [
"laravel/passport"
]
}
},
"scripts": {
"post-root-package-install": [
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
],
"post-create-project-cmd": [
"@php artisan key:generate --ansi"
],
"post-install-cmd": [
"@php artisan app:composer-post-install-command"
],
"post-update-cmd": [
"@php artisan vendor:publish --tag=laravel-assets --ansi --force",
"@php artisan app:composer-post-install-command"
],
"post-autoload-dump": [
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
"@php artisan package:discover --ansi"
],
"analyse": "./vendor/bin/phpstan analyse --memory-limit=512M",
"test": [
"docker compose -f docker-compose.test.yml up -d --wait",
"./vendor/bin/pest --compact",
"docker compose -f docker-compose.test.yml down"
],
"test:filter": "./vendor/bin/pest --compact --filter",
"test:quick": "./vendor/bin/pest --compact",
"lint": "./vendor/bin/pint",
"lint:test": "./vendor/bin/pint --test",
"translate": [
"@php artisan i18n:export"
],
"build": [
"npm ci",
"npm run production"
]
},
"config": {
"preferred-install": "dist",
"sort-packages": true,
"optimize-autoloader": true,
"allow-plugins": {
10 months ago
"pestphp/pest-plugin": true,
"php-http/discovery": true
4 weeks ago
},
"platform": {
"php": "8.3.0"
}
},
"prefer-stable": true
}