On Thu, Jul 21, 2011 at 23:11, Hannes Magnusson
<hannes.magnus...@gmail.com> wrote:
> On Jul 21, 2011 9:12 PM, "Adam Harvey" <ahar...@php.net> wrote:
>> On 21 July 2011 12:07, Hannes Magnusson <hannes.magnus...@gmail.com> wrote:
>>> On Thu, Jul 21, 2011 at 20:14, Adam Harvey <ahar...@php.net> wrote:
>>>> On 21 July 2011 07:15, Hannes Magnusson <hannes.magnus...@gmail.com> wrote:
>>>>> A (short) list of "authors" or a "group" needs to exist due to licensing 
>>>>> issues.
>>>>> How to generate that one I've no idea.
>>>>
>>>> Are you sure about that? I think you'll find that copyright is held by
>>>> all contributors individually, so it's actually more accurate to point
>>>> to the entire list for licensing purposes.
>>>
>>> That would mean we would need the approval of every single person in
>>> that gigantic list to change the license.
>>> It was hard enough to track down and contact the less-then-10 people 
>>> lasttime
>>
>> Yep. That's why Wikipedia had to get the GFDL changed to allow them to
>> convert to CC — it was the only feasible way of doing it, since they
>> couldn't contact all their contributors.
>>
>> It is a pain.
>
> Right. Therefore having a little group of some sort makes that epic
> pain into "just" much annoyance.
>
>
>
>>
>>>>> I would like a "NEWS"/"ChangeLog" listing, similar to what php-src does.
>>>>> That would serve the dual purpose of improving crediting of people
>>>>> actually working on the docs on daily basis, and letting the user know
>>>>> what is new within the docs (so he can pay attention to modifications
>>>>> to his favorite doc page), and bugfixes etc etc.
>>>>
>>>> It would be nice. We should be able to auto-generate something,
>>>> really, based on commits.
>>>
>>>
>>> I don't like the idea of autogenerating such list. The black list
>>> would be painful to manage (i.e. how would remove WS commits and
>>> random weirdness?)
>>
>> I wouldn't even try to. They're not that big a percentage of our commits.
>>
>>> I'm sure it will take few weeks to get used to update a "NEWS" file on
>>> every bugfix/new additions, and drive-by-committers will probably not
>>> to do.. but in the longterm I still think its a better option.
>>>
>>> We could then manually rotate the list every once in a while, or even
>>> create a rule in PhD to only list the last "100 entries" or whatever.
>>
>> How's this going to integrate with the online doc editor?
>
>
> I suppose in the first few weeks you'd have to manually edit the file.
> Afterwards we could add, on committing, "what do you want to have as
> NEWS entry?" or when creating the patch or whatever. I'm sure we can
> come up with something.
>
> As for the presentation, I'd like it to be displaid on the frontpage
> somehow, and on the rendered page itself, and on
> php.net/manual/en/whats.new.in.the.docs.php or something along that
> way.
>
> The news entry could be contain the bug#, date, message, xml:id and username.
> That way we could easily show the "edits to this page within the last
> month (plus comments)", aggregate "who makes most bugfixes" and "other
> modifications" and whatever....

Attached is a patch that adds a changelog to the manual.
The initial list of entries is extracted from svn log, any commits as
of "now" should be manually added (and the initial list probably
modified).

The patch adds a paragraph to the manual frontpage with a link to the
changelog, which is implement as an chapter under the PHP Manual book
(which currently only contained preface).

I dropped the idea of adding xml:id to the changelog entries (what if
you edit bucketloads of files?), but we could do that later and expand
more upon the idea.
As for phd, it just prints this out in a table.
Later on I would like to create some sort of paginated list, or simply
drop entries older then X months.
Furthermore, adding links from the username entry to people.php.net
would be fun, and automatically scanning the message for "fixed bug
#xyz" and link it to bugsweb etc etc etc.


So.
Every changelog entry should look as follows:
  <revision>
   <date>2011-08-31</date>
   <authorinitials>bjori</authorinitials>
   <revremark>Fixed bug#xyz</revremark>
  </revision>

The current <revremark> entries are extracted from the commit
messages, but it would be nice if we could make them "audience
readable" when we start adding changelogs manually.

Since this requires modifications in PhD (to support the revision,
authorinitials and revremark elements) we'll need to roll out a new
PhD release before being able to deploy this, I do however intend to
commit the manual-changelog.xml file (without enabling it in the
build) so we can start populating it.

-Hannes
Index: phpdoc/en/trunk/manual-changelog.xml
===================================================================
--- phpdoc/en/trunk/manual-changelog.xml        (revision 0)
+++ phpdoc/en/trunk/manual-changelog.xml        (revision 0)
@@ -0,0 +1,601 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- $Revision: 295472 $ -->
+
+<appendix xml:id="manual-changelog" xmlns="http://docbook.org/ns/docbook"; 
xmlns:xlink="http://www.w3.org/1999/xlink";>
+ <title>Changelog</title>
+
+ <revhistory>
+
+  <revision>
+   <date>2011-08-31</date>
+   <authorinitials>laruence</authorinitials>
+   <revremark>Add new lua docs</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-31</date>
+   <authorinitials>colder</authorinitials>
+   <revremark>Mention that __autoload is somehow outdated</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-30</date>
+   <authorinitials>joey</authorinitials>
+   <revremark>DOMNodeList is Iterable</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-30</date>
+   <authorinitials>kristina</authorinitials>
+   <revremark>More info on connection pooling</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-30</date>
+   <authorinitials>kristina</authorinitials>
+   <revremark>add "db" option</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-30</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Fixed bug#49294 (ReflectionExtension::info doesn't return the 
info)</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-30</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Add a see also for the notification function 
declaration</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-30</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Fixed bug#30157, stream_tell() isn't called by ftell(), only 
when seeking</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-30</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>point to the session handler rather then apc</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-30</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Fixed bug#55430, introduce the session.upload_progress family to 
the world</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-29</date>
+   <authorinitials>gwynne</authorinitials>
+   <revremark>Add documentation for the JSON_UNESCAPED_UNICODE flag (bug 
#53946)</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-28</date>
+   <authorinitials>aharvey</authorinitials>
+   <revremark>Fix doc bug #55519 (mt_rand only generetes even 64 bits numbers) 
by adding a
+    cautionary note to the mt_rand() documentation.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-27</date>
+   <authorinitials>bradley</authorinitials>
+   <revremark>Update AMQP documentation to follow documentation 
standards.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-27</date>
+   <authorinitials>lytboris</authorinitials>
+   <revremark>introducing SNMP::ERRNO_OID_PARSING_ERROR constant</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>bradley</authorinitials>
+   <revremark>Add examples to AMQPQueue::get and AMQPQueue::ack 
documentation.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>sebastian</authorinitials>
+   <revremark>Fix wording.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>sebastian</authorinitials>
+   <revremark>Fix documentation of 
ReflectionClass::newInstanceWithoutConstructor().</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>bradley</authorinitials>
+   <revremark>Fix incorrect constant name and add missing parameter 
name.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>shein</authorinitials>
+   <revremark>Fixed parameter description.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>name variables better in simplexml basic examples (hat tip 
Gordon Oheim)</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>shein</authorinitials>
+   <revremark>Moved description of "empty" values beyond the literal tag to 
allow its translation.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>fix build</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>see also mb_split (thanks Olivier Pons)</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>sebastian</authorinitials>
+   <revremark>Document 
ReflectionClass::newInstanceWithoutConstructor().</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-26</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Fix syntax highlighting</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>nikic</authorinitials>
+   <revremark>Fix Doc Bug #55454: Apparent errors in the examples</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>takagi</authorinitials>
+   <revremark>fix build.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>nikic</authorinitials>
+   <revremark>Fix Doc Bug #54663: chdir() emits E_WARNING</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>nikic</authorinitials>
+   <revremark>Fix Bug #55243: Namespaces also affect interfaces</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>nikic</authorinitials>
+   <revremark>Fix Doc Bug #55452: Confusing description for 
mb_strcut()</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>wrap and dot</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>iliaa</authorinitials>
+   <revremark>Updated curl-setopt docs re-SSL options</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>cubrid</authorinitials>
+   <revremark>add primary key, blob, unsigned and zerofill in 
cubrid_fetch_field function</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>shein</authorinitials>
+   <revremark>Fixed wrong parameter description.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-25</date>
+   <authorinitials>chx</authorinitials>
+   <revremark>Added PATH_SEPARATOR to open_basedir and a brief explanation of 
it into reference/dir/constants.xml</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-24</date>
+   <authorinitials>kristina</authorinitials>
+   <revremark>Changed second option to storeUpload</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-24</date>
+   <authorinitials>nikic</authorinitials>
+   <revremark>Some more changes for 5.4s E_ALL with E_STRICT in 
docs</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-23</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>There is no such thing anymore (and hasn't for years)</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-23</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>link these, like all other ini options</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-22</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>getinneriterator() can return traversable (doc 
#55480)</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-22</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>iteratoriterator method return types (doc #55480)</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-21</date>
+   <authorinitials>lytboris</authorinitials>
+   <revremark>fixing documentation per bug #53342</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-20</date>
+   <authorinitials>takagi</authorinitials>
+   <revremark>fix build.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-20</date>
+   <authorinitials>kalle</authorinitials>
+   <revremark>Make migration54 accessable -- Added a warning to the top of the 
page letting viewers know that this is still a WIP</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-20</date>
+   <authorinitials>lytboris</authorinitials>
+   <revremark>document FR #55312, #42918</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-19</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>examples ws</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-19</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Ignore entities.*.xml</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-19</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>fix xi:include to point to mongopool methods</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-19</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>PHP4/PHP5 =&gt; PHP 4 / PHP 5</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-19</date>
+   <authorinitials>shein</authorinitials>
+   <revremark>Standartized description of iconv-str(r)pos 
functions.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-19</date>
+   <authorinitials>shein</authorinitials>
+   <revremark>WS</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-18</date>
+   <authorinitials>kristina</authorinitials>
+   <revremark>added MongoPool functions</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-18</date>
+   <authorinitials>johannes</authorinitials>
+   <revremark>nitpicking: PHP 5, not PHP5</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-18</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>getrandmax returns 2^15 - 1, not 2 ^ 15 on Windows (and maybe 
others).
+    Fix bug #55446</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-18</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Ignore entities.*.xml</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-18</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>singleton is bad example for traits</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-18</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>fix traits visibility example</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-17</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>add umask() to seealso as suggested in bug#55302</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-17</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Document mysql[i].allow_local_infile, see bug#55404</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-17</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Fixed bug#55386 missing return value</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-17</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Sort the changelog properly, kill bogus warning and wrong error 
return value. fixes bug#55426</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-17</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Fixed bug#55429 (Description of this function is incorrect and 
awkwardly written)</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-17</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>blah. fix build</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-17</date>
+   <authorinitials>bjori</authorinitials>
+   <revremark>Add a link explaining what UCA is, see bug#55435</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>kristina</authorinitials>
+   <revremark>added MongoLog class</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>kristina</authorinitials>
+   <revremark>added more examples for cursor exceptions</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>cweiske</authorinitials>
+   <revremark>- Fix default mode for php and phps files
+    - Talk about adding an empty array instead of defining one 
yourself</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Linking magic methods.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Image is a jpg, not a renamed png.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Standardise on single style of quotes for XML tag.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Amended example to show the value returned by the 
imap_utf7_encode() call.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Ignore entities.*.xml</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Link serialize() and unserialize() to __sleep() and 
__wakeup().</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Added complete svn:keyword list</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-16</date>
+   <authorinitials>shein</authorinitials>
+   <revremark>Fixed WS.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-15</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Created migration guide to 5.4. Lots of placeholders and 
examples, but could be restructured if more appropriate headings 
needed.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-15</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>E_ALL will contain E_STRICT in PHP 5.4.x</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-15</date>
+   <authorinitials>nikic</authorinitials>
+   <revremark>Add substr_compare in See Also sections of 
strn?(case)?cmp</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-14</date>
+   <authorinitials>colder</authorinitials>
+   <revremark>Some mysql functions work differently with respect to the link 
id, mysql_close does not try to open one if none is found. There are probably 
other such cases</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-14</date>
+   <authorinitials>nikic</authorinitials>
+   <revremark>Fix doc bug #55381 "Incorrect spelling"</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-14</date>
+   <authorinitials>vrana</authorinitials>
+   <revremark>Link http_response_code and headers_list</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-14</date>
+   <authorinitials>vrana</authorinitials>
+   <revremark>No note in changelog</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-12</date>
+   <authorinitials>vrana</authorinitials>
+   <revremark>Remove unused file</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-12</date>
+   <authorinitials>vrana</authorinitials>
+   <revremark>Link</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-12</date>
+   <authorinitials>vrana</authorinitials>
+   <revremark>Suhosin extension</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-12</date>
+   <authorinitials>vrana</authorinitials>
+   <revremark>Whitespace</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-12</date>
+   <authorinitials>vrana</authorinitials>
+   <revremark>History in changelog</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-11</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>fix example (mysqli::connect_* are properties not methods, doc 
#55405)</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-11</date>
+   <authorinitials>shein</authorinitials>
+   <revremark>Fixed description of returned value on error.</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-10</date>
+   <authorinitials>cweiske</authorinitials>
+   <revremark>fix example description</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-09</date>
+   <authorinitials>laruence</authorinitials>
+   <revremark>Deleted no use files</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-09</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Remove entities.functions.xml</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-09</date>
+   <authorinitials>salathe</authorinitials>
+   <revremark>correct changelog order</revremark>
+  </revision>
+
+  <revision>
+   <date>2011-08-08</date>
+   <authorinitials>rquadling</authorinitials>
+   <revremark>Ignore entities.*.xml 
sgml-default-dtd-file:"~/.phpdoc/manual.ced"</revremark>
+  </revision>
+
+ </revhistory>
+
+</appendix>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+indent-tabs-mode:nil
+sgml-parent-document:nil
+sgml-default-dtd-file:"~/.phpdoc/manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->
+
+
Index: phpdoc/en/trunk/bookinfo.xml
===================================================================
--- phpdoc/en/trunk/bookinfo.xml        (revision 315861)
+++ phpdoc/en/trunk/bookinfo.xml        (working copy)
@@ -11,6 +11,13 @@
    <holder>the PHP Documentation Group</holder>
   </copyright>
 
+  <printhistory>
+   <para>
+    For a list of recent updates to the manual, see the
+    <link linkend="manual-changelog">changelog</link>.
+   </para>
+  </printhistory>
+
   <legalnotice xml:id="copyright" xmlns:xlink="http://www.w3.org/1999/xlink";>
    <title>Copyright</title>
    <simpara>
Index: phpdoc/doc-base/trunk/manual.xml.in
===================================================================
--- phpdoc/doc-base/trunk/manual.xml.in (revision 315874)
+++ phpdoc/doc-base/trunk/manual.xml.in (working copy)
@@ -44,6 +44,7 @@
  <book xml:id="manual">
   <title>&PHPManual;</title>
   &preface;
+  &manual-changelog;
  </book>
 
  <book xml:id="getting-started">
Index: phd/trunk/phpdotnet/phd/Package/Generic/XHTML.php
===================================================================
--- phd/trunk/phpdotnet/phd/Package/Generic/XHTML.php   (revision 315861)
+++ phd/trunk/phpdotnet/phd/Package/Generic/XHTML.php   (working copy)
@@ -16,6 +16,7 @@
             'authorgroup'       => 'format_authorgroup_author',
         ),
         'authorgroup'           => 'div',
+        'authorinitials'        => 'format_entry',
         'appendix'              => 'format_container_chunk_top',
         'application'           => 'span',
         'blockquote'            => 'blockquote',
@@ -32,7 +33,10 @@
         'co'                    => 'format_co',
         'colophon'              => 'format_chunk',
         'copyright'             => 'format_copyright',
-        'date'                  => 'p',
+        'date'                  => array(
+            /* DEFAULT */          'p',
+           'revision'           => 'format_entry', 
+        ),
         'editor'                => 'format_editor',
         'edition'               => 'format_suppressed_tags',
         'email'                 => 'format_suppressed_tags',
@@ -182,6 +186,7 @@
         'personblurb'           => 'format_div',
         'phrase'                => 'span',
         'preface'               => 'format_chunk',
+        'printhistory'          => 'format_div',
         'primaryie'             => 'format_suppressed_tags',
         'procedure'             => 'format_procedure',
         'productname'           => 'span',
@@ -206,6 +211,9 @@
         'refnamediv'            => 'div',
         'releaseinfo'           => 'div',
         'replaceable'           => 'span',
+        'revhistory'            => 'format_table',
+        'revision'              => 'format_row',
+        'revremark'             => 'format_entry',
         'row'                   => 'format_row',
         'screen'                => 'format_screen',
         'screenshot'            => 'format_div',
@@ -1379,6 +1387,8 @@
     public function format_table($open, $name, $attrs, $props) {
         if ($open) {
             $this->cchunk["table"] = true;
+            // Initialize an empty tgroup in case we never process such element
+            Format::tgroup(array());
             $idstr = '';
             if (isset($attrs[Reader::XMLNS_XML]["id"])) {
                $idstr = ' id="' . $attrs[Reader::XMLNS_XML]["id"] . '"';
@@ -1485,7 +1495,7 @@
             return '<td class="empty">&nbsp;</td>';
         }
         if ($open) {
-            $dbattrs = Format::getColspec($attrs[Reader::XMLNS_DOCBOOK]);
+            $dbattrs = 
(array)Format::getColspec($attrs[Reader::XMLNS_DOCBOOK]);
 
             $retval = "";
             if (isset($dbattrs["colname"])) {

Reply via email to