barth / dev-pack
一个提供开发工具的灵活包
Requires
- endroid/installer: ^1.0
- friendsofphp/php-cs-fixer: ^2.13
- j13k/yaml-lint: ^1.1
- jakub-onderka/php-parallel-lint: ^1.0
- phpmd/phpmd: ^2.6
- phpro/grumphp: ^0.14.2
- phpstan/phpstan-symfony: ^0.10.1
- sclable/xml-lint: ^0.2.4
- sebastian/phpcpd: ^4.0
- seld/jsonlint: ^1.7
- sensiolabs/security-checker: ^5.0 || ^6.0
- squizlabs/php_codesniffer: ^3.3
This package is auto-updated.
Last update: 2024-09-24 19:49:30 UTC
README
这是一个用于安装多个开发工具的Flex包。
为什么
在Symfony中,我们使用Composer快速创建项目
composer create-project symfony/skeleton
然后,我们只需要添加一些包依赖项,多亏了flex,一切就绪。
但是,有一段时间,当我开始一个新项目时,我会添加dev依赖项来提高代码质量,并长期保持,所以我将它们分组在这个包中,并预配置了文件。
这使我能够拥有干净的代码规范与项目团队共享,并避免在代码审查中的无用讨论。
安装和使用
以下假设您刚刚创建了一个新的Symfony项目。
将包作为dev依赖项要求
composer require --dev barth/dev-pack
您现在有我的开发工具列表,带有预配置文件。不要犹豫,根据自己的设置进行修改,或者可以自由地fork此存储库以拥有自己的列表和设置。
清理/解包
因为它是一个 symfony-pack,您可能希望将其解包以仅保留所需的依赖项,并在您的 composer.json 中不再保留 barth/dev-pack。
⚠️ 我不推荐使用 –unpack flex 选项直接要求此包。如果您这样做,您将没有预配置的文件。
要正确执行此操作,请安装后解包
composer unpack barth/dev-pack
然后,您还可以删除 endroid/installer,它提供了一个composer插件来从我的包中复制文件。
composer remove --dev endroid/installer
已安装包列表
PHP CodeSniffer
这是PHP社区中最著名的工具,配置了PSR2规则集。
PHPMD - 代码检查器
此工具专注于代码的形式。以下是它强制执行的规则
- Clean Code Rules: 不要将布尔值作为函数的参数传递,避免使用
else
和在static
中访问。 - Code Size Rules: 类太长,方法参数太多,函数太复杂,这里就是发生这种情况的地方。
- Controversial Rules: 有争议的规则...它们关注命名,特别是通过使用驼峰命名法。
- Design Rules: 检测软件设计中问题的规则集合。
- Naming Rules: 变量、方法、类名称的规则——太长、太短等。
- Unused Code Rules: 检测未使用的代码片段。
PHPStan - 静态分析工具
此工具在执行代码之前就能阻止潜在的bug。您可以查看其功能列表,甚至可以在线测试
PHPCPD - 复制/粘贴检测器
非常适合重构代码,避免在项目的多个地方出现相同的代码片段。
PHP-CS-Fixer
与PHP CodeSniffer类似,我认为它提供了一个更简单的配置,并且在命令行中修复错误。
GrumPHP
允许在precommit钩子上编排所有这些工具。
贡献
首先,感谢您的贡献 ❤️
请注意,如果您添加工具,我当然只会接受符合我自身需求的工具。请不要犹豫,为了满足您组织的需要,将此项目进行分支。
许可协议
MIT许可协议(MIT)。有关更多信息,请参阅许可文件。