Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Rendering differences around non significant XML

未关闭
#265 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
冷清
技术栈
php

调研方向

使用所示的确切修订版本和 PHP 命令,重现与 doc-base/configure.php、phd/render.php 和 doc-base/.manual.xml 的比较。仅更改 XML 注释或重复的 namespaces,同时比较空 TDs 和省略文件的生成输出。完成标准是确定差异是否可重现并找出其来源,或记录未找到稳定原因。

由索引模型根据 Issue 内容生成。

描述

While developing the XML trim project, testing showed some differences that may or may not be worth debugging. I think these changes (removal of XML comments and removal of duplicated XML namespaces) surfaced heisenbug, in a very controlled setup, so it is possible to stabilize PhD to not show dependent behaviour in non significant XML changes.

The setup:

phd             1a70b5bd531e4687b64447d0c0a3e33cb9c98714
en              36d18e7d4a32ecfdacc1eb086276ffb1baf0393c
doc-base (prev) 738f18cf429d45eed2698b8cd77d3364ea87f085
doc-base (next) 8eeece936aa2103c0632a22e47791749cb7aa697

php -v
PHP 8.1.2-1ubuntu2.25 (cli) (built: Jul 16 2026 18:32:33) (NTS)

rm -rf output
php doc-base/configure.php -q --with-lang=en
php phd/render.php --color false --package PHP --format php --format xhtml --format bigxhtml --format tocfeed -d doc-base/.manual.xml

These are the major differences observed.

Empty TD

There is a lot of:

<       <td></td>
---
>       <td class="empty">&nbsp;</td>

These, while annoying, does not change the behaviour or rendered manual. The worrie is that XML comments or duplicated namespace somehow affects empty TDs.

Files omitted

There are a lot of files that are emitted with doc-base prev, that are not in doc-base prev. Things like:

Only in doc-base-prev-out/php-chunked-xhtml: intro.apache.html
Only in doc-base-prev-out/php-chunked-xhtml: intro.apcu.html
Only in doc-base-prev-out/php-chunked-xhtml: intro.array.html
...
Only in doc-base-prev-out/php-chunked-xhtml: intro.zmq.html
Only in doc-base-prev-out/php-chunked-xhtml: intro.zookeeper.html
Only in doc-base-prev-out/php-chunked-xhtml: mysqlinfo.intro.html
Only in doc-base-prev-out/php-chunked-xhtml: preface.html

Only in doc-base-prev-out/php-web: intro.apache.php
Only in doc-base-prev-out/php-web: intro.apcu.php
Only in doc-base-prev-out/php-web: intro.array.php
...
Only in doc-base-prev-out/php-web: intro.zmq.php
Only in doc-base-prev-out/php-web: intro.zookeeper.php
Only in doc-base-prev-out/php-web: mysqlinfo.intro.php
Only in doc-base-prev-out/php-web: preface.php

All these files appear to not being published on the main manual, so they also do not block XML trim merge, but is something that worries me more, as now entire files are being created or omitted bases in non-significant XML.

主要语言
PHP
星标
91
派生
59
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

php/phd 的其他 Issue

查看 php/phd 的全部 Issue

相似的 Issue

更多 PHP Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。