WordPress.WP.AlternativeFunctions.file_system_operations error messages cannot be fixed anymore
还没有人认领这个 Issue。
评估
调研方向
从 ruleset.xml 中的 WordPress.WP.AlternativeFunctions.file_system_operations 规则开始,将已配置的消息与 VIPCS 3.0.0 和 WordPressCS 3.1.0 中的行为进行比较。使用提供的 fopen() 代码片段重现该问题,并验证由此产生的指导。完成的标准是:报告的错误不再包含误导性的修复建议,并且所有相关的文件操作规则都具有明确且一致的行为。
由索引模型根据 Issue 内容生成。
描述
Bug Description
WordPress.WP.AlternativeFunctions.file_system_operations error messages are overwritten in the ruleset, e.g.
<rule ref="WordPress.WP.AlternativeFunctions.file_system_operations_fopen">
<message>File system operations only work on the `/tmp/` and `wp-content/uploads/` directories. To avoid unexpected results, please use helper functions like `get_temp_dir()` or `wp_get_upload_dir()` to get the proper directory path when using functions such as %s(). For more details, please see: https://docs.wpvip.com/technical-references/vip-go-files-system/local-file-operations/</message>
</rule>
However since WPCS 3.0.0 this error can only be fixed by using WP_Filesystem. Neither get_temp_dir() or wp_get_upload_dir() will make the error go away and it's unclear why (unless you debug and find the original error message where it says WP_Filesystem)
Minimal Code Snippet
$f = fopen( get_temp_dir() . '/abc.log' );
Error Code
WordPress.WP.AlternativeFunctions.file_system_operations_fopen
Environment
| Question | Answer |
|---|---|
| PHP version | 8.3 |
| VIPCS version | 3.0.0 |
| WordPressCS version | 3.1.0 |
Additional Context (optional)
With WP_Filesystem, I think it's unnecessary to overwrite those errors in the first place and these overwrites can all be removed from ruleset.xml
Possibly, errors like WordPressVIPMinimum.Functions.RestrictedFunctions.file_ops_fputcsv should be changed to a also only allow WP_Filesystem ?
Tested Against main branch?
- I have verified the issue still exists in the
mainbranch of VIPCS. - I have verified the issue still exists in the
developbranch of VIPCS.
- 主要语言
- PHP
- 星标
- 261
- 派生
- 44
- 平均合并
- 3 天 17 小时
- 30 天内合并 PR
- 9
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
Automattic/VIP-Coding-Standards 的其他 Issue
-
难度 3/5 1-2 天 新手友好度 48/100
-
Breaking Change Type: Maintenance
难度 4/5 3-5 天 新手友好度 35/100
Automattic/VIP-Coding-Standards#849 · 1 条评论 ·
-
难度 3/5 1-2 天 新手友好度 45/100
-
Status: Awaiting feedback
难度 2/5 1-3 小时 新手友好度 45/100
Automattic/VIP-Coding-Standards#754 · 3 条评论 ·
-
Type: Enhancement
难度 4/5 3-5 天 新手友好度 45/100
查看 Automattic/VIP-Coding-Standards 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 66/100
Automattic/blocks-engine#2866 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 62/100
community-scripts/ProxmoxVE#17944 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 62/100
EasyCorp/EasyAdminBundle#7861 · 2 条评论 ·
维护者通常 1 天内回复
-
enhancement good first issue help wanted
难度 2/5 1-3 小时 新手友好度 82/100
-
backend gamification P0
难度 2/5 1-3 小时 新手友好度 66/100
semanadeinformatica/website#461 ·