--------------------------------------------------------------------------------
Fedora Update Notification
FEDORA-2020-1c8edbe555
2020-02-29 22:31:35.494885
--------------------------------------------------------------------------------
Name : phan
Product : Fedora 31
Version : 2.5.0
Release : 1.fc31
URL :
https://github.com/phan/phan
Summary : A static analyzer for PHP
Description :
Phan is a static analyzer that looks for common issues and will verify type
compatibility on various operations when type information is available or can
be deduced. Phan does not make any serious attempt to understand flow control
and narrow types based on conditionals.
--------------------------------------------------------------------------------
Update Information:
Feb 20 2020, **Phan 2.5.0** **New Features (CLI):** + Support using
`directory_suppressions` in Phan baseline files in `--load-baseline`. (#3698) +
Improve error message for warnings about Phan being unable to read files in the
analyzed directory. **New Features (Analysis):** + Instead of failing to parse
intersection types in phpdoc entirely, parse them as if they were union types.
(#1629) The annotations `@phan-param`, `@phan-return`, `@phan-var`, etc. can
be used to override the regular phpdoc in the various cases where this behavior
causes problems. **Future** Phan releases will likely about unsupported phpdoc
(e.g. `int&string`) and have actual support for intersection types. + Emit
`PhanUndeclaredConstantOfClass` (severity critical) for undeclared class
constants instead of `PhanUndeclaredConstant` (severity normal) This should
not be confused with `PhanUndeclaredClassConstant`, which already exists and
refers to accessing class constants of classes that don't exist. + Emit the
expression that's an invalid object with issue types such as
`PhanTypeExpectedObject*`, `PhanTypeInvalidInstanceof` (#3717) + Emit
`PhanCompatibleScalarTypePHP56` and `PhanCompatibleAnyReturnTypePHP56` for
function signatures when `target_php_version` is `'5.6'` (#915) (This also
requires that `backward_compatibility_checks` be enabled.) + Use more accurate
line numbers for warnings about function parameters. + When
`assume_real_types_for_internal_functions` is on *and* a function has a non-
empty return type in Reflection, make Phan's known real type signatures
override the real reflection return type information (useful when Phan infers
`list<string>` and Reflection says `array`). Phan previously used the type
from Reflection. + Normalize phpdoc parameter and return types when there is a
corresponding real type in the signature. (#3725) (e.g. convert
`bool|false|null` to `?bool`) **Plugins:** + Add
`SubscribeEmitIssueCapability` to detect or suppress issues immediately before
they are emitted. (#3719) **Bug fixes:** + Don't include issues that weren't
emitted in the file generated by `--save-baseline` (#3719) + Fix incorrect file
location for other definition in `PhanRedefinedClassReference` under some
circumstances. + Fix incorrect issue name: `PhanCompatibleNullableTypePHP71`
should be named `PhanCompatibleObjectTypePHP71` + Fix false positive
`PhanPartialTypeMismatchProperty` when a php 7.4 typed property has a default
expression value (#3725) ---- Feb 13 2020, **Phan 2.4.9** **New Features
(Analysis):** + Infer that `class_exists` implies the first argument is a
class-string, and that `method_exists` implies the first argument is a class-
string or an object. (#2804, #3058). Note that Phan still does not infer that
the class or method actually exists. + Emit `PhanRedefineClass` on **all**
occurrences of a duplicate class, not just the ones after the first occurrence
of the class. (#511) + Emit `PhanRedefineFunction` on **all** occurrences of a
duplicate function/method, not just the ones after the first. + Emit
`PhanRedefinedClassReference` for many types of uses of user-defined classes
that Phan has parsed multiple definitions of. Phan will not warn about
internal classes, because the duplicate definition is probably a polyfill.
(e.g. `new DuplicateClass()`, `DuplicateClass::someMethod()`) **Bug fixes:** +
Fix false positive `PhanParamSuspiciousOrder` for `preg_replace_callback`
(#3680) + Fix false positive `PhanUnanalyzableInheritance` for renamed methods
from traits. (#3695) + Fix false positive `PhanUndeclaredConstant` previously
seen for inherited class constants in some parse orders. (#3706) + Fix uncaught
`TypeError` converting `iterable<T>` to nullable (#3709)
--------------------------------------------------------------------------------
ChangeLog:
* Thu Feb 20 2020 Remi Collet <remi(a)remirepo.net> - 2.5.0-1
- update to 2.5.0
* Fri Feb 14 2020 Remi Collet <remi(a)remirepo.net> - 2.4.9-1
- update to 2.4.9
* Mon Jan 27 2020 Remi Collet <remi(a)remirepo.net> - 2.4.8-1
- update to 2.4.8
* Thu Jan 23 2020 Remi Collet <remi(a)remirepo.net> - 2.4.7-1
- update to 2.4.7
* Thu Jan 2 2020 Remi Collet <remi(a)remirepo.net> - 2.4.6-1
- update to 2.4.6
* Wed Dec 11 2019 Remi Collet <remi(a)remirepo.net> - 2.4.5-1
- update to 2.4.5
- allow Symfony 5
* Mon Nov 25 2019 Remi Collet <remi(a)remirepo.net> - 2.4.4-1
- update to 2.4.4
* Thu Nov 21 2019 Remi Collet <remi(a)remirepo.net> - 2.4.3-1
- update to 2.4.3
- add explicit dependency on netresearch/jsonmapper
* Tue Nov 12 2019 Remi Collet <remi(a)remirepo.net> - 2.4.2-1
- update to 2.4.2
* Mon Nov 4 2019 Remi Collet <remi(a)remirepo.net> - 2.4.1-1
- update to 2.4.1
* Mon Oct 28 2019 Remi Collet <remi(a)remirepo.net> - 2.4.0-1
- update to 2.4.0
* Mon Oct 21 2019 Remi Collet <remi(a)remirepo.net> - 2.3.1-1
- update to 2.3.1
* Mon Oct 14 2019 Remi Collet <remi(a)remirepo.net> - 2.3.0-1
- update to 2.3.0
* Fri Oct 4 2019 Remi Collet <remi(a)remirepo.net> - 2.2.13-1
- update to 2.2.13
- raise dependency on felixfbecker/advanced-json-rpc 3.0.4
--------------------------------------------------------------------------------
This update can be installed with the "dnf" update program. Use
su -c 'dnf upgrade --advisory FEDORA-2020-1c8edbe555' at the command
line. For more information, refer to the dnf documentation available at
http://dnf.readthedocs.io/en/latest/command_ref.html#upgrade-command-label
All packages are signed with the Fedora Project GPG key. More details on the
GPG keys used by the Fedora Project can be found at
https://fedoraproject.org/keys
--------------------------------------------------------------------------------