Files
XC_VM/src/composer.json
T
Divarion-D 045b8f6bd0 chore(deps): install PHPStan via Composer, drop downloaded PHAR
The downloaded phpstan.phar could not resolve namespaced third-party
packages now living in src/vendor/ (M3uParser, PhpM3u8), failing CI with
class.notFound on StreamService::parseM3U.

- add phpstan/phpstan 2.1.17 as a Composer dev dependency (committed to
  src/vendor/); the vendor/bin/phpstan binary auto-loads
  src/vendor/autoload.php, so vendor symbols resolve
- Makefile: drop the phpstan-install PHAR download; run src/vendor/bin/phpstan
- remove the stale Core/Parsing/M3uParser excludePath from phpstan.dist.neon
- drop the obsolete tools/phpstan/phpstan.phar gitignore entry

make phpstan: No errors (278 files).
2026-06-25 19:58:38 +03:00

35 lines
1.2 KiB
JSON

{
"name": "vateron-media/xc-vm",
"description": "XC_VM IPTV panel — Composer autoloader (PSR-4) deployed as /home/xc_vm/. Regenerate with `composer dump-autoload` from this directory; never run `composer install` on the deploy path (vendor/ is committed and shipped).",
"type": "project",
"license": "AGPL-3.0-or-later",
"require": {
"php": ">=8.1",
"gemorroj/m3u-parser": "6.0.1",
"chrisyue/php-m3u8": "^4"
},
"require-dev": {
"phpstan/phpstan": "2.1.17"
},
"autoload": {
"psr-4": {
"XcVm\\": "./"
}
},
"config": {
"optimize-autoloader": false,
"classmap-authoritative": false,
"platform": {
"php": "8.1.33"
}
},
"scripts": {
"post-install-cmd": [
"@php -r \"fwrite(STDERR, \\\"[xc_vm] NOTE: vendor/ is committed and shipped. Use 'composer dump-autoload' to regenerate; do not run 'composer install' on the deploy path.\\n\\\");\""
],
"post-update-cmd": [
"@php -r \"fwrite(STDERR, \\\"[xc_vm] NOTE: vendor/ is committed and shipped (composer.lock is gitignored). Commit vendor/ after updating dependencies.\\n\\\");\""
]
}
}