github PHPCompatibility/PHPCompatibility 5.6
PHP 5.6 release

latest releases: 9.3.5, 9.3.4, 9.3.3...
8 years ago

See all related issues and PRs in the 5.6 milestone.

Added

  • 🌟 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.
  • 🌟 New: ParameterShadowSuperGlobals sniff which covers the PHP 5.4 change Parameter names that shadow super globals now cause a fatal error.`. #74
  • 🌟 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.
  • DeprecatedIniDirectives sniff: PHP 5.6 deprecated ini directives.
  • NewKeywords sniff: detection of the goto keyword introduced in PHP 5.3 and the callable keyword introduced in PHP 5.4. #57
  • ♻️ 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
  • 📚 Readme: Composer installation instructions. #32, #61
  • 🔧 .gitignore to ignore vendor and IDE related directories. #78
  • 💚 Code coverage checking via coveralls.

Changed

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

Fixed

  • 🐛 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.
  • 🐛 The ForbiddenNamesAsInvokedFunctions sniff was throwing false positives in certain cases when a comment separated a try from the catch block. #29
  • 🐛 The ForbiddenNamesAsInvokedFunctions sniff was incorrectly reporting instanceof as being introduced in PHP 5.4 while it has been around since PHP 5.0. #80
  • ✅ Compatibility with PHPCS 2.0 - 2.3. #63, #65

Credits

Thanks go out to Daniel Janecke, 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. 👏

Don't miss a new PHPCompatibility release

NewReleases is sending notifications on new releases.