phan v3.2.4 Release Notes

Release Date: 2020-11-13 // over 3 years ago
  • 🚀 The Phan 3.x release line uses php-ast's AST version 70 and supports the analysis of all PHP 8.0 syntax except attributes (when run with PHP 8).
    🚀 The planned 4.x release line will use AST version 80 and require php-ast 1.0.10+ in order to parse/analyze PHP 8.0's #[] attributes

    🆕 New features (Analysis):

    • 👍 Partially support self<A> and static<B> in phpdoc types. (#4226)
      👍 This support is incomplete and may run into issues with inheritance.

    🐛 Bug fixes:

    • Properly infer the literal string value of __FUNCTION__ for global functions in namespaces (#4231)
    • 🛠 Fix false positive PhanPossiblyInfiniteLoop for do {} while (false); that is unchangeably false (#4236)
    • Infer that array_shift and array_pop return null when the passed in array could be empty, not false. (#4239)
    • 🖐 Handle PhpToken::getAll() getting renamed to PhpToken::tokenize() in PHP 8.0.0RC4. (#4189)