Greetings,

I'm not really offering a solution here but will point out some problems and considerations after looking at:

  - A diff of the generated funcindex.xml versus the current in CVS
- The function index to see which are considered undocumented in the new funcindex
  - How phd manipulates version.xml information for the phpdotnet theme

A few reasons why some appear undocumented:

  Old Dead API and/or aliases:
   - Ex: bcompile_* versus bcompiler_*.
- Ex: date_time mess, most of these existed in one old pecl extension only
   - Ex: MySQL, like mysql_numrows vs mysql_num_rows
  OOP versus Procedural
   - Ex: xmlwriter, mysqli, ...

And other notes that may or may not relate to the above or each other:

- Seems WeLoseSomeCamelCasing for understandable reasons but it's a thought to consider - version.xml files are not perfect, but should be (Ex: maxdb- affected-rows being removed from funcindex) - dom versus domxml: not sure where to begin on this as it's a mess on so many levels - _ versus - as both are used in versions.xml so end up in funcindex as is (ex: printer-draw-text()), see below
  - Many mysqli entries were removed but not replaced, see below

Some of the above may be attributed to how versions.xml files are handled by PhD because it's somewhat of a [smart?] hack currently. Often times when an extension offers both OOP and Procedural only one is documented in versions.xml because they are usually documented on the same page... so it works. Bad? But because of this we end up with one seen as undocumented in the newly generated funcindex.xml.

Also, the phd versions conversion mechanism hack (ex: - to _, :: to _) allows versions.xml files to be written in all sorts of styles, so funcindex.xml ends up ugly as it doesn't keep these in mind. I don't know the best way to handle this offhand but the problem exists.

Summary for version files: They are both liberal (with old API information, deprecated goodies) and abbreviated (by often missing version information for OOP/Procedural companions) so basically they require cleaning before use for other purposes aside from adding version information to the PHP Manual.

Regards,
Philip


Reply via email to