定制 moxio/captainhook-yarn-deduplicate 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

moxio/captainhook-yarn-deduplicate

最新稳定版本:v1.0.0

Composer 安装命令:

composer require moxio/captainhook-yarn-deduplicate

包简介

Captain Hook Plugin to check for unnecessary duplication in yarn.lock using yarn-deduplicate

README 文档

README

Latest Stable Version

moxio/captainhook-yarn-deduplicate

This project is a plugin for CaptainHook to check your yarn.lock file for duplicate packages using yarn-deduplicate. The commit is blocked when one or more duplicate packages are found. You can then fix these manually by running yarn-deduplicate.

Installation

Install as a development dependency using composer:

$ composer require --dev moxio/captainhook-yarn-deduplicate 

Usage

Add yarn-deduplicate validation as a pre-commit to your captainhook.json configuration file:

{ "pre-commit": { "enabled": true, "actions": [ { "action": "\\Moxio\\CaptainHook\\YarnDeduplicate\\YarnDuplicationCheckAction" } ] } }

The check is only run when committing changes to yarn.lock. It will thus not detect pre-existing duplications as long as there are no changes to the Yarn lockfile.

The action expects yarn-deduplicate to be installed as a local NPM package (i.e. available at node_modules/.bin/yarn-deduplicate).

Conditional usage

If you want to perform duplication checks only when yarn-deduplicate is installed (i.e. available at node_modules/.bin/yarn-deduplicate), you can add a corresponding condition to the action:

{ "pre-commit": { "enabled": true, "actions": [ { "action": "\\Moxio\\CaptainHook\\YarnDeduplicate\\YarnDuplicationCheckAction", "conditions": [ { "exec": "\\Moxio\\CaptainHook\\YarnDeduplicate\\Condition\\YarnDeduplicateInstalled" } ] } ] } }

This may be useful in scenarios where you have a shared CaptainHook configuration file that is included both in projects that use yarn-deduplicate and projects that don't. If yarn-deduplicate is installed, the action is run. In projects without yarn-deduplicate, the validation is skipped.

Versioning

This project adheres to Semantic Versioning.

Contributing

Contributions to this project are welcome. Please make sure that your code follows the PSR-12 extended coding style.

License

This project is released under the MIT license.

统计信息

  • 总下载量: 24.93k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 3
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 10
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-04

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固