PHPCheckstyle Code
Brought to you by:
hkodungallur,
tchule
#summary Project History #labels Featured == Version 0.14.2 == * Added a summary output on the command line (thanks to jarrettchisholm). * New check : Detect forbidden keywords (thanks to jarrettchisholm). * New check : Detect forbidden regular expressions like IP address, etc. (thanks to jarrettchisholm). * New check : Detect variable variable. == Version 0.14.1 == * Improved performances A LOT ! * Better checking of ignored files/directories * Added T_FINALLY token to the parser * Better messages for logical operators && and || * Outsourced the error messages * Added French translation * New check : NPath complexity * New check : Prefered quotes style == Version 0.14.0 == * PSR-0 Compliance (thanks to James Brooks). * new Array Reporter (thanks to James Brooks). * Allow an array of configuration values to be passed through, rather than XML (thanks to James Brooks). * new Check : "mandatoryHeader" == Version 0.13.2 == * Change in the default configurations : White spaces are required before and after the concatenation operator ".". NOTE : This may generate lots of new warnings. * Issue 77: Exclude files/directories option from the web launcher. == Version 0.13.1 == * Issue 71: False positive : close() * Issue 72: Allow the config file to be in any directory * Issue 73: False positive : delete() * Issue 74: Allow multiple src directories/files in the command line. == Version 0.13.0 == * Issue 70: Simplification of the "strictCompare" rule. When active this rule will be checked everywhere. This may generate lots of warnings. == Version 0.12.5 == * Issue 69: PHP tag should be at the beginning of the line == Version 0.12.4 == * Issue 59: Enhancement: Add allowed exceptions to docBlocks section of configuration * Issue 63: Catch parsing exceptions and other PHP errors * Issue 65: Add composer.json file * Issue 66: block closure '}' detected in a string == Version 0.12.3 == * Issue 52: Config for PHP frameworks * Issue 54: detect empty files == Version 0.12.2 == * Issue 53: else/ elseif without curly braces (thanks to Maximilian Pachl) * Added a check of the curly braces after a "else" statement == Version 0.12.1 == * Issue 50 : --exclude flag is not honoured * No space expected after '=' when used in assignation by reference == Version 0.12.0 == * New reporter : xml_console (for use with Netbeans plugin : http://sourceforge.net/projects/phpmdnb/), thanks to Jens Radtke * Issue 47 : False docBlock error when using empty return in a method * Added the version number in the run.php file == Version 0.11.0 == * Issue 1 : Refactoring of the code * Issue 43: False positive for "The function throws an exception" * Issue 41: False positive : The statement 'while' must contain its code within a {} block. * Issue 24: Line length checking of non-PHP code should be toggleable in a config option. * Added Zend Framework style configuration file == Version 0.10.6 == * Issue 40: Propose replacement for PHP aliases * Now generates absolute file path in the reports (allow Jenkins to display the source code) == Version 0.10.5 == * Issue 39: Error on closing tag for space-based indentation checks * Issue 38: False positive for : The function XXX must have a docblock comment == Version 0.10.4 == * Issue 37: Web interface (currently very limited) == Version 0.10.3 == * issue 25 : New Rule : Use of "==" in strpos * Bug correction: Not correctly counting the end of a stack item after a "ELSE IF" == Version 0.10.2 == * issue 27 : Unused code is wrongly detected * issue 26 : Empty lines in comments will corrupt line numbering * issue 25 : Error: Notice: Trying to get property of non-object * issue 23 : Wrong indentation level for curly braces on new line * Embedding of CSS inside HTML Header * Fix for null pointer exceptions when run against newer code == Version 0.10.1 == * Fixed Rule encapsedVariablesInsideString : False positive when using heredoc * Fixed Rule needBraces : False positive for do/while == Version 0.10.0 == * Added support for interfaces * Improved checking of variables by scope * Rewrote the checkLargeLine() function * Added rudimentary progress reporting, invoked with the parameter --progress * Edited Style errors for clarity * Included regex in the error report for appropriate types * Errors are now described in much greater detail and more consistent language * Removed 'old : ' and 'new : ' prefixes from constructor name hints * New output type - html console * Removed "controlStructNeedCurly" rule, duplicate with "needBraces" rule * Completed the test cases * The tokenizer now returns T_TAB separately from T_WHITESPACE _Thanks a lot to Justin Creasey and Adam King_ == Version 0.9.8 == * Issue 3: Check for unreachable code == Version 0.9.7 == * Deprecation of long $HTTP VARS predefined variables * Configuration of system variables lists * Issue 10: Don't blindly remove first 2 chars of file path == Version 0.9.6 == * Corrected the inner assignement rule (wasn't detecting the end of a control statement if no brackets). * Corrected the file exclusion list. * Corrected a bug with nextToken at the end of a file. * Added the possibility to add exceptions to the checkVariableNaming rule == Version 0.9.5 == * Corrected a bug with @SuppressWarnings on a class. == Version 0.9.4 == * Added __invoke and __callStatic to the special functions. == Version 0.9.3 == * Refactoring of the indentation check (thanks to Charles Marion). The "noTabs" rule is replaced by the "indentation" rule. * Reactivation of the "noSpaceAfterControlStmt" rule. * Correction of a bug with multiple output files. * Added a rule for the naming of protected functions. == Version 0.9.2 == * Multiple output files (separated by a comma in the --format command line parameter) == Version 0.9.1 == * Possibility to scan multiple source directories (separated by a comma in the --src command line parameter) == Version 0.9 == * Dependency on lib_xsl removed * Documentation updated to link to the new project home (http://code.google.com/p/phpcheckstyle/) * HTML Report validated with W3C validator, HTML characters escaped * Possibility to suppress some warnings using annotations before a class or a function in the code (@SuppressWarnings) * New logo == Version 0.8.11 == * Refactoring : Added the current stack of instruction to provide contextual information * New test : unusedCode * New test : deprecated functions == Version 0.8.10 == * Corrected JavaNCSS count of packages * New test : functionInsideLoop == Version 0.8.9== * Corrected LevelOfNesting calculation * New test : oneClassPerFile == Version 0.8.8 == * New test : variableNaming * Added the possibility to configure the regular expressions for the naming rules * A taste of it's own dog food == Version 0.8.7 == * New test : checkUnusedVariables * New test : checkUnusedFunctionParameters == Version 0.8.6 == * Correction in the controlStructOpenCurly check. == Version 0.8.5 == * New test : empty statement {{{ ;; }}} * New test : inner assignment * New test : unused private functions == Version 0.8.4 == * Refactored the whiteSpaceBore / noSpaceBefore / whiteSpaceAfter / noSpaceAfter methods. * Refactored peekNextValidToken and peekPrvsValidToken to avoid using call by reference * New test : function length * New test : empty block {{{ if ($a) {} }}} * New test : avoid heredoc * New test : excessive function parameters * New test : need braces * New tests : switch have a default and default is at the end * New test : switch case should have a break == Version 0.8.3 == * Added some tests on the docbloc (@param and @return) * Added a test on unary operators * Corrected a bug in the detection of the end of a function == Version 0.8.2 == * Added new test (Use boolean operators instead of logical operators) == Version 0.8.1 == * Corrected a bug with NEW_LINE character inside a constant string == Version 0.8 == * Replaced the token_get_all() function by token_get_all_nl() found here : http://php.net/manual/fr/function.token-get-all.php This function returns the new line caracters as a token. This solve some problems and impact a lot of code. * Added the possibility to generate a report on the number of lines of code compatible with the JavaNCSS format (http://kclee.de/clemens/java/javancss/) * Added new tests (Extract TODOs, Avoid passing references) * Some refactoring == Version 0.7.1 == * Added new tests (Cyclomatic Complexity, ...) == Version 0.7 == * All tests are now configurable * Included some propositions from the forum * Added the possibility to define a severity level for each test rule * Ignoring the .svn repositories * Changed the XML outpout in order to be compatible with the checkstyle format (http://checkstyle.sourceforge.net/) == Version 0.6.1 == * Bugs Fixes * HTML Ouput changes == Version 0.6 == This is the very first release of PHPCheckstyle (hosted on Spike source). It is an alpha release.