Verify bundled deps using CI
还没有人认领这个 Issue。
- 主要语言
- C
- 星标
- 40.4k
- 派生
- 8.2k
- 平均合并
- 2 天 13 小时
- 30 天内合并 PR
- 96
描述
Description
I am the author of https://github.com/php/php-src/blob/7db647dd99/.github/actions/verify-generated-files/action.yml and I would be happy if this integrity concept can be extended also to all extenal/bundled deps like PCRE [1], Unicode tables [2] etc.
The expected behaviour is zero changes after the update is run. This will prevent hiding bad code and prevent human mistakes.
- [1] PCRE2 https://github.com/php/php-src/pull/14498
- [2] Unicode tables https://github.com/php/php-src/pull/7502#issue-1000424830 /w update steps described
- [3] XSSE https://github.com/php/php-src/pull/18413
- [4] uriparser https://github.com/php/php-src/pull/19711
- [5] IR https://github.com/php/php-src/commit/2ff7a18bdc8e1ce184c8df312fe87a178f775761
- [6] timelib https://github.com/php/php-src/commit/a0329dbab009d984926f8817359ba5d83195d960 - https://github.com/derickr/timelib/tags
- [7] xxHash https://github.com/php/php-src/pull/20064
- [8] https://github.com/php/php-src/tree/master/ext/fileinfo/libmagic
- [9] https://github.com/php/php-src/tree/master/ext/standard/libavifinfo https://github.com/php/php-src/pull/21250
- [10] https://github.com/php/php-src/tree/master/ext/mbstring/libmbfl
- [11] https://github.com/php/php-src/tree/master/ext/bcmath/libbcmath
- [12] https://github.com/php/php-src/tree/master/ext/dba 3x libs
- [13] https://github.com/php/php-src/tree/master/ext/hash/murmur (impossible - https://github.com/php/php-src/pull/6059#issuecomment-692012970)
- [14] https://github.com/php/php-src/tree/master/ext/hash/sha3
- [15] https://github.com/php/php-src/tree/master/ext/lexbor/lexbor
- [16] https://github.com/php/php-src/tree/master/ext/dom/lexbor
- [17] https://github.com/php/php-src/tree/master/ext/gd/libgd
This was probably not done yet to not slow down the testing pipelines. The solution is to run the integrity verification of the external sources as a separate workflow only when the source files are changed and always in nightly.
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从 .github/actions/verify-generated-files/action.yml 开始,检查 issue 中列出的未勾选的捆绑依赖目录,包括 IR、libmagic、libavifinfo、libmbfl、libbcmath 和 libgd。定义单独 workflow 对已更改源和 nightly 运行的行为,然后验证每个适用的更新在完整性检查后都不会产生任何更改。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- c, github-actions
- 领域
- build-system, ci-cd, security
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100