New features(CLI):
- Add heuristics to
tool/phoogle
to better handleobject
, and to include functions with nullable params in the results of searches for all functions. (#3014)
New features(Analysis):
- Emit
PhanCompatibleImplodeOrder
when the glue string is passed as the second instead of the first argument (#2089) - Emit
PhanCompatibleDimAlternativeSyntax
when using array and string array access syntax with curly braces
when using the polyfill parser or php 7.4+. (#2989) - Emit
PhanCompatibleUnparenthesizedTernary
for expressions such asa ? b : c ? d : e
. (#2989)
(when using the polyfill parser or php 7.4+) - Emit
PhanConstructAccessSignatureMismatch
when a constructor is less visible than the parent class's constructor
and the target php version is 7.1 or older. (#1405)
Plugins:
- Make
EmptyStatementListPlugin
checkif
statements with negated conditions (those were previously skipped because they were simplified).
Bug fixes:
- Fix a crash analyzing a dynamic property by reference (introduced in 2.2.7) (#3020)