vinc file version regexp

工具查询 2025-08-02

vinc-file-version-regexp

ru

Voral/版本提示的扩展名,用于使用正则表达式在自定义文件中更新版本字符串。

此工具允许您在版本管理过程中自动更新任意文件(例如,PHP,JSON,XML)中的版本号。它与Voral/版本插件软件包无缝集成,并倾听tre_version_set事件,以根据提供的正则表达式执行替换。


关键功能

  • 自定义文件支持:使用灵活的正则表达式以任何文件格式更新版本字符串。
  • 基于事件的集成:从voral/vorse-increment聆听tre_version_set事件。
  • 使用唯一代码处理错误:通过支持错误代码deltas来防止多个扩展之间的冲突。
  • 灵活配置:定义自定义正则表达式以匹配各种格式的版本字符串。
  • 可扩展性:通过最小配置轻松整合到现有的工作流中。

安装

通过作曲家安装软件包:

composer require --dev voral/vinc-file-version-regexp

用法

要使用此扩展程序,请通过为tre_version_set事件添加侦听器,将其配置在.vs-vers-increment.php文件中。这是一个例子:

 use Vasoft  VersionIncrement  Config ;
use Vasoft  VersionIncrement  Events  EventType ;
use Vasoft  VersionIncrement  Extension  RegexpFileModifier ;

$ config = ( new Config ());
$ config -> getEventBus ()-> addListener (
        EventType:: BEFORE_VERSION_SET ,
        new RegexpFileModifier (
            ' ./src/version.php ' ,
            ' #($versions*=s* ' |"v)d+.d+.d+( ' |";)#s '
        )
    );


return $ config ;

解释:

  • 文件路径:指定应更新版本字符串的文件路径(例如,./src/version.php)。
  • 正则表达式:提供一个正则模式来找到版本字符串。模式必须包括:
    • 第1组:版本之前的字符串部分。
    • 第2组:版本之后的字符串部分。
  • 错误代码delta :可选,指定一个增量值,以确保使用多个扩展名时唯一的错误代码。

示例用例

1。更新PHP文件

如果您的项目包含这样的version.php文件:

">
  $ version = " Version 1.0.0 " ; ?>

扩展程序将将其更新为:

">
  $ version = " Version 2.0.0 " ; ?>

2。更新JSON文件

对于config.json文件:

{
  "version" : " 1.0.0 "
}

扩展程序可以将其更新为:

{
  "version" : " 2.0.0 "
}

错误处理

该扩展名提供了详细的错误消息和唯一的错误代码,以帮助诊断问题:

  • FILENOTFOUNDEXCEPTION :如果指定文件不存在,则抛出。
  • FileNotWritableException :如果文件不写,则抛出。
  • tatternotfoundexception :如果正则表达式不匹配文件内容的任何部分,则抛出。

错误代码被可配置的错误Codedelta所抵消,以避免与其他扩展相冲突。


配置选项

您可以通过调整其参数来自定义扩展名的行为:

范围描述
filepath将更新版本的文件的路径。
REGEXP用于定位版本字符串的正则表达式。
errorcodedelta可选的增量值,以确保跨多个模块的唯一错误代码。

贡献

欢迎捐款!请按照以下步骤操作:

  1. 分叉存储库。
  2. 为您的功能或BugFix创建一个新的分支。
  3. 提交拉动请求,清楚地说明您的更改。

确保您的代码遵守项目的编码标准,并包括适当的测试。


测试

运行以下命令来测试软件包:

composer test

生成代码覆盖报告:

composer coverage

执行静态分析:

composer stan

检查编码标准:

composer fixer

立即运行所有检查:

composer check

执照

此软件包已根据MIT许可获得许可。有关详细信息,请参见许可证文件。


有用的链接

  • voral/版本提示:此扩展程序与。
下载源码

通过命令行克隆项目:

git clone https://github.com/Voral/vinc-file-version-regexp.git