Moodle声明占位符,帮助IDE和静态分析器

3.11.8 2021-11-12 06:31 UTC

This package is auto-updated.

Last update: 2024-09-12 23:53:36 UTC


README

Moodle声明占位符,包括类、函数和全局变量,感谢 php-stubs/generator,帮助IDE和静态分析器。

注意: 占位符文件可能不完整(仅针对有限部分生成),并且可能不会定期更新。但是,欢迎贡献,包括问题和拉取请求。

如何使用它?

首先,感谢您使用它。

简单地在您的 composer.json 中引入它

composer require --dev machitgarha/bimoo

现在,您的IDE(或文本编辑器)应该会显示Moodle函数和类的建议。不仅如此,您还可以指导您的静态分析器。

包含哪些内容?

首先:占位符文件是从 官方Moodle仓库的镜像 生成的。对 stubs.php 的更新必须手动从仓库完成和提交,但整个过程几乎自动化(使用 bin/generate-stubs 可执行文件)。

要查看包含和未包含的路径,请查看 data/path-list.json 文件。您可以使用glob模式,但建议不要这样做(因为它会导致占位符文件过大)。

发布管理

为了正确跟踪Moodle版本,并防止冲突和混淆,我们不使用 语义版本控制,而是使用以下方法

每个版本都是以下形式:<MoodleMajor>.<MoodleMinor>.<BimooUpdate>

<MoodleMajor><MoodleMinor> 是Bimoo版本基于的Moodle发布号的组成部分,如 此处 所述。不包含Moodle版本中错误修复部分的原因是官方文档所说的:“类似于2.2.1、2.2.2、2.2.3等发布仅包含基于最新主要发布(2.2)的修复,永远不会包含任何重大新功能或数据库更改”。

<BimooUpdate> 是特定Moodle版本的当前库的状态。换句话说,考虑到Moodle的特定次要版本,每次更新库(即占位符文件)时都会增加。

例如,3.11.19 表示支持Moodle 3.11.*的第20个更改系列。请注意,它与Moodle 3.11.19(可能永远不会发布)无关。

每个比最新支持的Moodle版本更旧的版本都有一个单独的分支。分支被命名为它们跟踪的Moodle版本,例如 3.9。理想情况下,master 分支跟踪最新的Moodle版本。

注意: 并没有保证支持Moodle目前支持的所有版本。但是,社区(也许是你)的支持是非常受欢迎的。

待办事项

  • 使用GitHub Actions来自动化过程。工作流将是,克隆Moodle的仓库,切换到最新稳定版本,运行生成器以预定义的路径和文件列表,提交更改并将其推回。

贡献

请随意。

重新生成占位符文件

首先,将您的文件和模式添加到 data/path-list.json 文件中。然后,运行以下命令以自动重新生成 stubs.php

./bin/generate-stubs <moodle-root-dir>

<moodle-root-dir> 是指向Moodle安装或(克隆的)官方仓库的路径(有关更多信息,请参阅 --help)。

就是这样!提交更改,创建一个PR,我们都会很高兴!

许可证

许可协议:GPL 3.0。