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

Doc Bug #18196 PEAR MultiLineCondition.SpaceBeforeOpenBrace not consistent with newline chars
Submitted: 2011-01-16 17:31 UTC
From: seikilos Assigned: squiz
Status: Closed Package: PHP_CodeSniffer (version 1.3.0RC1)
PHP Version: 5.3.1 OS:
Roadmaps: (Not assigned)    
Subscription  


 [2011-01-16 17:31 UTC] seikilos (Samuel Nolastname)
Description: ------------ Here is a sample code which generates an error I am not able to understand (even by looking at the sniff code) Saple Code: http://pastebin.com/vGm7Wyf2 Message: There must be a single space between the closing parenthesis and the opening brace of a multi-line IF statement; found 2 spaces. It points here to the very last closing bracket in line 3. What does the message tell me? I see no 2 spaces somewhere near this.

Comments

 [2011-01-17 04:16 UTC] squiz (Greg Sherwood)
-Status: Open +Status: Feedback -Assigned To: +Assigned To: squiz
I cannot replicate that error message with your sample code. Maybe try attaching a file to this report that I can use to produce the error.
 [2011-01-20 01:28 UTC] seikilos (Samuel Nolastname)
-Package Version: 1.3.0RC2 +Package Version: 1.3.0RC1
I've been trying to reproduce it but am not able. The server performs an svn checkout and then analyzes a small file resulting in two of those weird errors. If I manually replace this file with it self by uploading via scp the test does not detect any errors. After an svn clean checkout they are back in action. I suspected some whitespace issues but I compared my local file with the file on server on hex level and they are identical. I ran sha256 checksum on both file, same hashes. I've got 77 errors of those and have no idea how the heck to proceed. Can phpcs be turned in some more verbose state to output the issue location as string
 [2011-01-20 01:39 UTC] seikilos (Samuel Nolastname)
I could reproduce it. Codesniffer seems to have issues with dos line encoding. I did a manual dos2unix on a file and it worked. Is there a patch possible to convert all files prior to scanning to unix newlines? I develop on a windows maschine and other users on windows may have issues with unix line endings on some editors
 [2011-01-20 04:26 UTC] squiz (Greg Sherwood)
PHP_CodeSniffer handles DOS newlines just fine. The sniff itself didn't have newline detection in it for this particular message, so the error message only appeared (in this case) when the newline was two chars long (like /r/n). I've changed the sniff to detect that there is a newline after the brace and present an error message that says this. This works for all newline chars phpcs detects (/n, /r, /r/n).
 [2011-01-20 04:27 UTC] squiz (Greg Sherwood)
-Summary: PEAR.ControlStructures.MultiLineCondition.SpaceBeforeOpenBrace - dont get it.. +Summary: PEAR SpaceBeforeOpenBrace is not consistent with different newline chars
 [2011-01-20 04:28 UTC] squiz (Greg Sherwood)
-Summary: PEAR SpaceBeforeOpenBrace is not consistent with different newline chars +Summary: PEAR MultiLineCondition.SpaceBeforeOpenBrace not consistent with newline chars
 [2011-01-20 04:30 UTC] squiz (Greg Sherwood)
-Status: Feedback +Status: Closed
This bug has been fixed in SVN. If this was a documentation problem, the fix will appear on pear.php.net by the end of next Sunday (CET). If this was a problem with the pear.php.net website, the change should be live shortly. Otherwise, the fix will appear in the package's next release. Thank you for the report and for helping us make PEAR better.
 [2011-07-07 14:25 UTC] arzala (Anirudhsinh Zala)
I have found that this bug has reappeared in latest stable version. Today I installed 1.3.0 stable and ran PEAR coding standard for code mentioned in this report and found same error.
 [2011-07-07 17:00 UTC] arzala (Anirudhsinh Zala)
Sorry, it seems that it was my filesystem issue. Bug is not there anymore.