All Versions
33
Latest Version
Avg Release Cycle
145 days
Latest Release
195 days ago

Changelog History
Page 4

  • v7.0 Changes

    July 02, 2016

    πŸ‘€ See all related issues and PRs in the [7.0 milestone].

    βž• Added

    • βœ… :zap: Ability to specify a range of PHP versions against which to test your code base for compatibility, i.e. --runtime-set testVersion 5.0-5.4 will now test your code for compatibility with PHP 5.0 up to PHP 5.4. #99
    • πŸ›  :star2: New NewFunctionArrayDereferencing sniff to detect function array dereferencing as introduced in PHP 5.4. Fixes #52.
    • πŸ›  :star2: New ShortArray sniff to detect short array syntax as introduced in PHP 5.4. #97. Fixes #47.
    • πŸ›  :star2: New TernaryOperators sniff to detect ternaries without the middle part (elvis operator) as introduced in PHP 5.3. #101, #103. Fixes #49.
    • :star2: New ConstantArraysUsingDefine sniff to detect constants declared using define() being assigned an array value which was not allowed prior to PHP 7.0. #110
    • πŸ’… :star2: New DeprecatedPHP4StyleConstructors sniff to detect PHP 4 style class constructor methods which are deprecated as of PHP 7. #109.
    • 🚚 :star2: New ForbiddenEmptyListAssignment sniff to detect empty list() assignments which have been removed in PHP 7.0. #110
    • :star2: New ForbiddenFunctionParametersWithSameName sniff to detect functions declared with multiple same-named parameters which is no longer accepted since PHP 7.0. #110
    • :star2: New ForbiddenGlobalVariableVariable sniff to detect variable variables being made global which is not allowed since PHP 7.0. #110
    • :star2: New ForbiddenNegativeBitshift sniff to detect bitwise shifts by negative number which will throw an ArithmeticError in PHP 7.0. #110
    • 0️⃣ :star2: New ForbiddenSwitchWithMultipleDefaultBlocks sniff to detect switch statements with multiple default blocks which is not allowed since PHP 7.0. #110
    • :star2: New NewAnonymousClasses sniff to detect anonymous classes as introduced in PHP 7.0. #110
    • πŸ›  :star2: New NewClosure sniff to detect anonymous functions as introduced in PHP 5.3. Fixes #35
    • πŸ— :star2: New NewFunctionParameters sniff to detect use of new parameters in build-in PHP functions. Initially only sniffing for the new PHP 7.0 function parameters and the new PHP 5.3+ before_needle parameter for the strstr() function. #110, #112. Fixes #27.
    • :star2: New NewGroupUseDeclarations sniff to detect group use declarations as introduced in PHP 7.0. #110
    • :star2: New NewScalarReturnTypeDeclarations sniff to detect scalar return type hints as introduced in PHP 7.0. #110
    • :star2: New NewScalarTypeDeclarations sniff to detect scalar function parameter type hints as introduced in PHP 7.0. #110
    • πŸ— :star2: New RemovedFunctionParameters sniff to detect use of removed parameters in build-in PHP functions. Initially only sniffing for the function parameters removed in PHP 7.0. #110
    • :star2: New RemovedGlobalVariables sniff to detect the PHP 7.0 removed $HTTP_RAW_POST_DATA superglobal. #110
    • πŸ—„ :star: DeprecatedFunctions sniff: detection of the PHP 5.4 deprecated OCI8 functions. #93
    • :star: ForbiddenNamesAsInvokedFunctions sniff: recognize PHP 5.5 finally as a reserved keywords when invoked as a function. #110
    • :star: NewKeywords sniff: detection of the use of the PHP 5.1+ __halt_compiler keyword. Fixes #50.
    • πŸ›  :star: NewKeywords sniff: detection of the PHP 5.3+ nowdoc syntax. Fixes #48.
    • πŸ›  :star: NewKeywords sniff: detection of the use of the const keyword outside of a class for PHP < 5.3. Fixes #50.
    • 🚚 :star: DeprecatedFunctions sniff: recognize PHP 7.0 deprecated and removed functions. #110
    • 🚚 :star: DeprecatedIniDirectives sniff: recognize PHP 7.0 removed ini directives. #110
    • :star: ForbiddenNamesAsInvokedFunctions sniff: recognize new PHP 7.0 reserved keywords when invoked as functions. #110
    • :star: ForbiddenNames sniff: recognize new PHP 7.0 reserved keywords. #110
    • :star: NewFunctions sniff: recognize new functions as introduced in PHP 7.0. #110
    • :star: NewLanguageConstructs sniff: recognize new PHP 7.0 <=> "spaceship" and ?? null coalescing operators. #110
    • 🚚 :star: RemovedExtensions sniff: recognize PHP 7.0 removed ereg, mssql, mysql and sybase_ct extensions. #110
    • βœ… :umbrella: Additional unit tests for the NewLanguageConstructs sniff. #110
    • βœ… :books: Readme: New section containing information about the use of the testVersion config variable.
    • :books: Readme: Sponsor credits.

    πŸ”„ Changed

    • 🚚 :pushpin: The DeprecatedIniDirectives sniff used to always throw an warning. Now it will throw an error when a removed ini directive is used. #110.
    • βœ… :pushpin: The DeprecatedNewReference sniff will now throw an error when the testVersion includes PHP 7.0 or higher. #110
    • πŸ‘ :pushpin: The ForbiddenNames sniff now supports detection of reserved keywords when used in combination with PHP 7 anonymous classes. #108, #110.
    • βœ… :pushpin: The PregReplaceEModifier sniff will now throw an error when the testVersion includes PHP 7.0 or higher. #110
    • πŸ›  :pencil2: NewKeywords sniff: clarified the error message text for the use keyword. Fixes #46.
    • πŸ”¨ :recycle: Minor refactor of the testVersion related utility functions. #98
    • πŸ›  :wrench: Add autoload to the composer.json file. #96 Fixes #67.
    • ⚑️ :wrench: Minor other updates to the composer.json file. #75
    • :wrench: Improved creation of the code coverage reports needed by coveralls via Travis.
    • βœ… :green_heart: The sniffs are now also tested against PHP 7.0 for consistent results.

    πŸ›  Fixed

    • πŸ›  :bug: The ForbiddenCallTimePassByReference sniff was throwing Undefined index notices when used in combination with PHPCS 2.2.0. #100. Fixes #42.
    • πŸ›  :bug: The ForbiddenNamesAsInvokedFunctions sniff would incorrectly throw an error if the throw keyword was used with parenthesis. Fixes #118.
    • :bug: The PregReplaceEModifier sniff incorrectly identified e's in the pattern as the e modifier when using {} bracket delimiters for the regex. #94
    • 🚚 :bug: The RemovedExtensions sniff was throwing an error instead of a warning for deprecated, but not (yet) removed extensions. Fixes #62.

    Credits

    Thanks go out to AlexMiroshnikov, [Chris Abernethy], [dgudgeon], [djaenecke], [Eugene Maslovich], [Ken Guest], Koen Eelen, [Komarov Alexey], [Mark Clements] and [Remko van Bezooijen] for their contributions to this version. :clap:

  • v5.6 Changes

    September 14, 2015

    πŸ‘€ See all related issues and PRs in the [5.6 milestone].

    βž• Added

    • :star2: New: NewLanguageConstructs sniff. The initial version of this sniff checks for the PHP 5.6 ** power operator and the **= power assignment operator. #87. Fixes #60.
    • :star2: New: ParameterShadowSuperGlobals sniff which covers the PHP 5.4 change Parameter names that shadow super globals now cause a fatal error.`. #74
    • πŸ›  :star2: New: PregReplaceEModifier sniff which detects usage of the e modifier in literal regular expressions used with preg_replace(). The e modifier will not (yet) be detected when the regex passed is a variable or constant. #81, #84. Fixes #71, #83.
    • πŸ—„ :star: DeprecatedIniDirectives sniff: PHP 5.6 deprecated ini directives.
    • :star: NewKeywords sniff: detection of the goto keyword introduced in PHP 5.3 and the callable keyword introduced in PHP 5.4. #57
    • βœ… :recycle: PHPCompatibility_Sniff base class initially containing the supportsAbove() and supportsBelow() utility methods. (Nearly) All sniffs now extend this base class and use these methods to determine whether or not violations should be reported for a set testVersion. #77
    • :books: Readme: Composer installation instructions. #32, #61
    • :wrench: .gitignore to ignore vendor and IDE related directories. #78
    • :green_heart: Code coverage checking via coveralls.

    πŸ”„ Changed

    • :twisted_rightwards_arrows: The check for the \ namespace separator has been moved from the NewKeywords sniff to the NewLanguageConstructs sniff. #88
    • πŸ—„ :pencil2: DeprecatedIniDirectives sniff: minor change in the sniff error message text.
    • πŸ—„ :pencil2: DeprecatedFunctions sniff: minor change in the sniff error message text.
    • ⚑️ :wrench: Minor updates to the composer.json file. #31, 34, #70
    • πŸ”§ :wrench: Tests: The unit tests can now be run without configuration.
    • βœ… :wrench: Tests: Skipped unit tests will now be annotated as such. #85
    • βœ… :green_heart: The sniffs are now also tested against PHP 5.6 for consistent results.
    • βœ… :green_heart: The sniffs are now also tested against PHPCS 2.0+.
    • βœ… :green_heart: The sniffs are now tested using the new container-based infrastructure in Travis CI. #37

    πŸ›  Fixed

    • πŸ›  :bug: The ForbiddenCallTimePassByReference sniff was throwing false positives when a bitwise and & was used in combination with class constants and class properties within function calls. #44. Fixes #39.
    • :bug: The ForbiddenNamesAsInvokedFunctions sniff was throwing false positives in certain cases when a comment separated a try from the catch block. #29
    • :bug: The ForbiddenNamesAsInvokedFunctions sniff was incorrectly reporting instanceof as being introduced in PHP 5.4 while it has been around since PHP 5.0. #80
    • :white_check_mark: Compatibility with PHPCS 2.0 - 2.3. #63, #65

    Credits

    Thanks go out to Daniel JΓ€necke, [Declan Kelly], [Dominic], [Jaap van Otterdijk], [Marin Crnkovic], [Mark Clements], [Nick Pack], [Oliver Klee], [Rowan Collins] and [Sam Van der Borght] for their contributions to this version. :clap:

  • v5.5 Changes

    April 04, 2014

    πŸš€ First tagged release.

    πŸ‘€ See all related issues and PRs in the 5.5 milestone.

    πŸš€ [Unreleased]: https://github.com/PHPCompatibility/PHPCompatibility/compare/master...HEAD