xactsystems / phpstan-dev
用于提取和提供 PHPStan 源代码的包,以开发自定义规则
Requires
- php: ^7.4 || ^8.0
- composer-plugin-api: ^2.0
- phpstan/phpstan: ^1.10
Requires (Dev)
- composer/composer: ^2.5
This package is auto-updated.
Last update: 2024-09-29 13:51:45 UTC
README
一个用于提取和提供 PHPStan 源代码的包,以便开发自定义规则。
PHPStan 不提供通过包管理器加载源代码的方法。相反,它需要从 .phar 归档中提取。
如果你使用 PHPStorm 或 DEVSENSE 的 PHP Tools,那么这个问题已经得到解决,但并非所有人都这样做!
我个人认为这种整个方法与包管理器的精神相违背,它应该只是一个包!
因此,我创建了这个 composer 插件,它要求 phpstan 作为依赖项,提取源代码,并将 PHPStan 命名空间链接到它。
安装
要使用此扩展,请在 Composer 中要求它
composer require --dev xactsystems/phpstan-dev
请授权插件,请回答 y 到以下提示:xactsystems/phpstan-dev 包含一个当前不在您的 allow-plugins 配置中的 Composer 插件。请参阅 https://getcomposer.org.cn/allow-plugins 你信任 "xactsystems/phpstan-dev" 来执行代码并希望现在启用它吗?(将 "allow-plugins" 写入 composer.json) [y,n,d,?] y
使用
此插件将公开 \PHPStan 命名空间,以便您可以创建自己的自定义规则和收集器。
有关更多详细信息,请参阅以下页面: https://phpstan.org/developing-extensions/rules https://phpstan.org/developing-extensions/collectors
为什么要使用插件?
虽然 Composer 生态系统中存在事件,但它们都不会为正在管理的包触发,它们只为要求它们的顶级包触发。另一方面,Composer 插件在要求它们的包内部触发。
在这种情况下,我们只需使用 Activate 方法来检查和查看 PHPStan 源代码是否已被提取。如果没有,我们就这样做。