phan v3.0.0 Release Notes
Release Date: 2020-05-09 // almost 4 years ago-
🚀 The Phan 3.x releases support analysis of php 7.0-7.4, and can be executed with php 7.2+.
🚀 Use the older Phan 2.x releases if you need to continue to execute Phan with php 7.1.
🚀 Use the older Phan 1.x releases if you need to execute Phan with php 7.0.Backwards incompatible changes:
- 🔒 Drop PHP 7.1 support. PHP 7.1 reached its end of life for security support in December 2019.
🚀 Many of Phan's dependencies no longer publish releases supporting php 7.1,
which will likely become a problem running Phan with future 8.x versions
🚀 (e.g. in the published phar releases). - ⬇️ Drop PluginV2 support (which was deprecated in Phan 2) in favor of PluginV3.
- ✂ Remove deprecated classes and helper methods.
🆕 New features(CLI, Config):
- Support
PHAN_COLOR_PROGRESS_BAR
as an environment variable to set the color of the progress bar.
👀 Ansi color names (e.g.light_blue
) or color codes (e.g.94
) can be used. (See src/Phan/Output/Colorizing.php)
🆕 New features(Analysis):
- Infer that
foreach
keys and values of possibly empty iterables are possibly undefined after the end of a loop. (#3898) - 👍 Allow using the polyfill parser to parse internal stubs. (#3902)
👍 (To support newer syntax such as union types, trailing commas in parameter lists, etc.)
🐛 Bug fixes
- 🛠 Fix handling of windows path separators in
phan_client
(from 2.7.3-dev) - 🛠 Fix a crash when emitting
PhanCompatibleAnyReturnTypePHP56
orPhanCompatibleScalarTypePHP56
for methods with no parameters. (from 2.7.3-dev)
- 🔒 Drop PHP 7.1 support. PHP 7.1 reached its end of life for security support in December 2019.