<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://wiki.php.net/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://wiki.php.net/feed.php">
        <title>PHP Wiki doc:articles</title>
        <description></description>
        <link>http://wiki.php.net/</link>
        <image rdf:resource="http://wiki.php.net/lib/images/favicon.ico" />
       <dc:date>2009-11-25T06:21:49+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://wiki.php.net/doc/articles/newtranslation?rev=1211955005&amp;do=diff"/>
                <rdf:li rdf:resource="http://wiki.php.net/doc/articles/nomenclature?rev=1205207028&amp;do=diff"/>
                <rdf:li rdf:resource="http://wiki.php.net/doc/articles/updating-markup?rev=1237914216&amp;do=diff"/>
                <rdf:li rdf:resource="http://wiki.php.net/doc/articles/whitespace?rev=1205113681&amp;do=diff"/>
                <rdf:li rdf:resource="http://wiki.php.net/doc/articles/writing-tests?rev=1207868304&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://wiki.php.net/lib/images/favicon.ico">
        <title>PHP Wiki</title>
        <link>http://wiki.php.net/</link>
        <url>http://wiki.php.net/lib/images/favicon.ico</url>
    </image>
    <item rdf:about="http://wiki.php.net/doc/articles/newtranslation?rev=1211955005&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2008-05-28T06:10:05+00:00</dc:date>
        <title>doc:articles:newtranslation</title>
        <link>http://wiki.php.net/doc/articles/newtranslation?rev=1211955005&amp;do=diff</link>
        <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;1210467011&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;current&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 8:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 8:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Update CVSROOT/modules&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Update CVSROOT/modules&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Update CVSROOT/loginfo&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Update CVSROOT/loginfo&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&amp;nbsp; * Update CVSROOT/avail (in a couple places)&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Add {lang} to docweb for revcheck&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Add {lang} to docweb for revcheck&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Add {lang} to phpweb/includes/languages.inc as INACTIVE&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Add {lang} to phpweb/includes/languages.inc as INACTIVE&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Add the new {lang} mailing list to our super secret gmail doc account (user php.doc.lists)&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Add the new {lang} mailing list to our super secret gmail doc account (user php.doc.lists)&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
    </item>
    <item rdf:about="http://wiki.php.net/doc/articles/nomenclature?rev=1205207028&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2008-03-11T03:43:48+00:00</dc:date>
        <title>doc:articles:nomenclature</title>
        <link>http://wiki.php.net/doc/articles/nomenclature?rev=1205207028&amp;do=diff</link>
        <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;1205111489&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;current&lt;/th&gt;&lt;/tr&gt;&lt;/table&gt;</description>
    </item>
    <item rdf:about="http://wiki.php.net/doc/articles/updating-markup?rev=1237914216&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-03-24T17:03:36+00:00</dc:date>
        <title>doc:articles:updating-markup</title>
        <link>http://wiki.php.net/doc/articles/updating-markup?rev=1237914216&amp;do=diff</link>
        <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;1234824133&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;current&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 1:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;Updating PHP docs to the new markup&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;==== &lt;/strong&gt;Updating PHP docs to the new markup &lt;strong&gt;====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Several PHP extensions have documentation for OO-style APIs which is written as if the documentation was a procedural API. A good example of this was ext/soap, but also ext/rar seems to be using the old markup too. So, I'm going to take this as my example. If you go to http://php.net/rar, and look over the methods of the Rar class, you can see they're documented just the same as the functions rar_close(), rar_entry_get(), etc. This isn't handy and makes the search less useful. There is a new variant of the DocBook markup which makes more sense for OO APIs, and it should be converted. This is basically a copy and paste job.&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Several PHP extensions have documentation for OO-style APIs which is written as if the documentation was a procedural API. A good example of this was ext/soap, but also ext/rar seems to be using the old markup too. So, I'm going to take this as my example. If you go to http://php.net/rar, and look over the methods of the Rar class, you can see they're documented just the same as the functions rar_close(), rar_entry_get(), etc. This isn't handy and makes the search less useful. There is a new variant of the DocBook markup which makes more sense for OO APIs, and it should be converted. This is basically a copy and paste job.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 39:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 39:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;TODO: Describe fixing user notes.&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;TODO: Describe fixing user notes.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;TODO: Describe how to deal with old CVS history... links to old files should be in the commit message at least.&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
    </item>
    <item rdf:about="http://wiki.php.net/doc/articles/whitespace?rev=1205113681&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2008-03-10T01:48:01+00:00</dc:date>
        <title>doc:articles:whitespace</title>
        <link>http://wiki.php.net/doc/articles/whitespace?rev=1205113681&amp;do=diff</link>
        <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;current&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 1:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;====== Why we care about whitespace ======&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;I just wanted to post a little reminder about why we care so much about whitespace. Over the years this topic has come up in many forms, usually via a whitespace unfriendly commit that is immediately followed by a fellow team members complaint. And soon after, a fix is made. There are reasons we as a group (especially all past and present editors) have been strict and anal about this topic and here's why:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;==== Consistent look to the documentation ====&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;All the documentation ends up looking the same within all editors. The indention here is one space, no tabs, and only PHP code itself is four spaces as per our coding standards. This is a beautiful and consistent feature of the PHP manual sources.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;==== Pretty diffs ====&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;Peer review is critical to the success of any Open Source project, including the PHP Manual. Fellow members of the team follow and read the commits so a diff should focus on changed content and not mix in whitespace manipulations. If something doesn't fit or look right, our eyes focus on it... this wastes time. Translators also rely on pretty diffs.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;==== Diff === Artistic Masterpiece ====&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;Each diff can be seen as a piece of art. Look it over... is this something you might send your lover? Professor? Potential employer? Remember that every commit we make goes on record forever and represents the author. Making them pretty and useful means we will be pretty and useful, both individually and as a group.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;==== A Diff should be perfect ====&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;Sometimes we want to quickly commit something and if needed update it again later. This is no good and instead we should wait until later before making the commit. There is no need to spam the mailing list with &amp;quot;I didn't have time and was going to fix it later&amp;quot; commits... there is no rush, the manual has existed for 10 years without the information and can wait another hour/day... simply save the file and attend to it later. The perfect diff meets all of the above descriptions.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;====== How to create pretty whitespace =====&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;Unified diffs make this easy. Before any commit is made, the author should look over a diff of the edited file(s). This allows said author to find errors (like typos) as well as accidental whitespace changes. After making another change, check it again. Once the diff is as intended then commit it (after make test of course!) and move on.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;I hope this helps explain why we are so strict about whitespace.&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
    </item>
    <item rdf:about="http://wiki.php.net/doc/articles/writing-tests?rev=1207868304&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2008-04-10T22:58:24+00:00</dc:date>
        <title>doc:articles:writing-tests</title>
        <link>http://wiki.php.net/doc/articles/writing-tests?rev=1207868304&amp;do=diff</link>
        <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;1207866469&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;current&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 1:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Part of an upcoming php.net article titled &amp;quot;How can you help PHP.NET today?&amp;quot; with this part focusing on writing tests. It's essentially in a FAQ format:&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Part of an upcoming php.net article titled &amp;quot;How can you help PHP.NET today?&amp;quot; with this part focusing on writing tests. It's essentially in a FAQ format:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;Why should I write a test?&lt;strong&gt; &lt;/strong&gt;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;Why should I write a test? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Code coverage is important for the success of any project including PHP. When code coverage reaches 100%, it'll mean that every piece of code within the PHP sources will be executed while running the tests. This helps determine if behaviour changes so essentially it helps prevent bugs from being introduced into PHP.&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Code coverage is important for the success of any project including PHP. When code coverage reaches 100%, it'll mean that every piece of code within the PHP sources will be executed while running the tests. This helps determine if behaviour changes so essentially it helps prevent bugs from being introduced into PHP.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;What kind of setup do I need to write good tests?&lt;strong&gt; &lt;/strong&gt;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;What kind of setup do I need to write good tests? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;gcc &amp;gt;= 3.4 with gcov.&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;gcc &amp;gt;= 3.4 with gcov.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Your local setup should also include lcov that is available here:&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Your local setup should also include lcov that is available here:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 23:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 21:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;In summary: Install lcov, compile PHP with --enable-gcov, and now you're ready.&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;In summary: Install lcov, compile PHP with --enable-gcov, and now you're ready.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;How do I find what needs a test?&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;How do I find what needs a test? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Go to gcov.php.net&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Go to gcov.php.net&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Choose a branch, then 'coverage'&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Choose a branch, then 'coverage'&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Will go into some detail on what it means&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Will go into some detail on what it means&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;How do I create a test?&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;How do I create a test? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Go to http://qa.php.net/...&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Go to http://qa.php.net/...&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;Do you have a good example of a test and what it covers?&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;Do you have a good example of a test and what it covers? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Yes...&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Yes...&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;How do I cover uncovered code?&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;How do I cover uncovered code? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Locate a file with a percentage &amp;lt; 100%&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Locate a file with a percentage &amp;lt; 100%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Use the legend to determine uncovered code&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Use the legend to determine uncovered code&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Write code that will execute it&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * Write code that will execute it&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&amp;nbsp; * &lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;How do I determine if the desired code gets executed?&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;How do I determine if the desired code gets executed? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * make lcov&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * make lcov&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * view lcov_html/index.html&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; * view lcov_html/index.html&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 48:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Line 45:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; &amp;nbsp; * Note: The TESTS var is to speed-up the process, as it will only run the specific test(s)&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;nbsp; &amp;nbsp; * Note: The TESTS var is to speed-up the process, as it will only run the specific test(s)&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;How and where do I submit my test?&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;How and where do I submit my test? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;You can submit tests to the development mailing list @ internals@lists.php.net&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;You can submit tests to the development mailing list @ internals@lists.php.net&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;What is open-box and black-box testing and why do I care?&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;What is open-box and black-box testing and why do I care? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;Do I need valgrind? When and why might I use it?&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;Do I need valgrind? When and why might I use it? &lt;strong&gt;=====&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Short answer: You don't.&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Short answer: You don't.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Long answer: valgrind can be used to detect if some test triggers a memory-related bug in PHP. Although running the test suite with valgrind is a plus, but it takes ages. You can submit tests without running valgrind, because the http://gcov.php.net project will do that for you.&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Long answer: valgrind can be used to detect if some test triggers a memory-related bug in PHP. Although running the test suite with valgrind is a plus, but it takes ages. You can submit tests without running valgrind, because the http://gcov.php.net project will do that for you.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;* &lt;/strong&gt;How do I install lcov on Linux, Mac, and/or Windows? What part of the package do I need? &lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;===== &lt;/strong&gt;How do I install lcov on Linux, Mac, and/or Windows? What part of the package do I need? &lt;strong&gt;=====&lt;/strong&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong&gt;Just &lt;/strong&gt;untar it and run make install.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong&gt;just &lt;/strong&gt;untar it and run make install.&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
    </item>
</rdf:RDF>
