Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 1.5.0a1

Bug #12929 paramete 'ignore' oper mistake
Submitted: 2008-01-18 07:59 UTC
From: raidenxu Assigned: ashnazg
Status: Closed Package: PhpDocumentor (version 1.4.1)
PHP Version: 5.2.3 OS: windows xp sp2
Roadmaps: 1.4.2    

 [2008-01-18 07:59 UTC] raidenxu (Raiden Xu)
Description: ------------ ... directory = D:\DEV\tslite\data\ ... ignore = CVS/ ... Expected result: ---------------- I used PhoDocumentor 1.3 to test this bug, it will not read files in cvs directory Actual result: -------------- ... Reading file D:/DEV/tslite/data/CVS/Entries.Extra -- File not parsed, not a php file ...


 [2008-03-29 19:27 UTC] ashnazg (Chuck Burgess)
Hmmm.... try as I might, I cannot duplicate this. I tested using PhpDocumentor v1.4.1 as well as current CVS (2008-03-29). I tested on Ubuntu Gutsy Linux with PHP 5.2.5, OS X Leopard with PHP 5.2.5, and Windows XP with PHP 5.2.5. I tested against this directory/file structure: - tslite/ ----- blah.php ----- CVS/ --------- Root --------- Root.Extra ----- data/ --------- bloo.php --------- CVS/ ------------- Repository ------------- Repository.Extra Using this INI file: title = PEAR Bug 12929 defaultcategoryname = PhpDocumentor defaultpackagename = BugReports target = ./PHPDOCS directory = ./tslite ignore = CVS/ output = HTML:Smarty:HandS I tested with relative paths in directory/ignore settings, and then with absolute paths. On Windows, I tested with forward slashes in the paths, then with backslashes in the paths. I tested running phpdoc from the parent directory of the top-level tslite/ dir, as well as running it from five directories above tslite/. The last permutation of the runtime test options that I could think of was using the -i commandline arg rather than using INI file settings, but all results were still the same, across all difference OSs. So, the only difference between my tests and this bug report's conditions that I can see is the PHP version (5.2.5 vs 5.2.3). I will see if I can put 5.2.3 on one of my machines. Raiden, is there any possibility you can test this yourself on PHP 5.2.5 to see if the issue exists for you still?
 [2008-03-29 20:51 UTC] ashnazg (Chuck Burgess)
Looking at similar Sourceforge bugs: - Sourceforge #1779257, which I was never able to duplicate either, users that reported the problem were on Windows XP using either PHP 5.2.2 or 5.2.3. - Sourceforge #1780827, where the issue is reported on PHP 5.2.3 on WinXP. - Sourceforge #1851346 says PHP 5.1.6 on on Windows.
 [2008-03-30 17:52 UTC] ashnazg (Chuck Burgess)
Ok, finally some success in duplicating the issue... It seems that normal behavior of PhpDocumentor is to completely ignore any filename that has no file extension... hence my files of "CVS/Root" and "CVS/Repository" were being ignored by plain old normal behavior, and _NOT_ by use of the --ignore option. It did actually occur to me yesterday to consider whether or not a file with an extension would be handled differently that one without ("Root.Extra" vs. "Root"), and I did test this considerably in my Linux testing, but to no avail. It was later in the evening when I made the observation about "Root" and "Repository" always being ignored even when I did not use any --ignore option in my test. Today, I got PHP 5.2.3 installed on WinXP, and did indeed see "--ignore CVS\" failing to make PhpDocumentor skip the "CVS\Root.Extra" and "data\CVS\Repository.Extra" files that are in my test layout. I dropped back to testing with PHP 5.2.5 and see the problem there too. So, the failure of my test scenario all along appear to have been the coincidence of that unknown "one-word filename always gets skipped" behavior colliding with the fact that the only files I was trying to tell PhpDocumentor to skip were those kinds of files. So, I have _finally_ duplicated the issue on WinXP. I can now move forward with testing the two proposed patches given on the Sourceforge bugs. I will resume this effort later today.
 [2008-03-30 21:26 UTC] ashnazg (Chuck Burgess)
Confirmed that the patch given on SF #1779257 does indeed correct this bug on Windows. Also verified it does not affect behavior at all on Linux or OS X via PHP5, and also specifically tested PHP 4.4.8 on OS X.
 [2008-03-30 22:43 UTC] ashnazg (Chuck Burgess)
The patch passes my regression tests across Linux/OSX/WinXP on PHP 5.2.5 and OSX on PHP 4.4.8.
 [2008-03-30 22:49 UTC] ashnazg (Chuck Burgess)
Committed to CVS.