Psalm v3.17.0 Release Notes
Release Date: 2020-10-12 // over 3 years ago-
๐ Features
- ๐ง @mr-feek added support for configurable universal objects (#3948)
- ๐ Improved error messages and reporting for
ParadoxicalCondition
(example) โ thanks to @dkarlovi, @jbafford and @ro0NL for their input
๐ Bugfixes
๐ Fixed XML generation
๐ 3.16 broke XML output, this is now fixed (#4252).
๐ Other bugfixes
- ๐ @DanielBadura added a stub for
random_int
, providing better inference (#4199) - Improved signatures for
preg_match_all
(#4202) and @orklah helped improvepreg_split
- Treat
func_num_args
as pure (#4215) - ๐ Fix
__invoke
declaration crash (#4210) - ๐ Allow hinting arrow function return types (#4209)
- โ Add checks for
if ((bool) $foo)
(#4206) - ๐ Fix crash with some class-string property assignments (#4198)
- ๐ @aheart fixed bugs with JUnit generation (#4234)
- @danog added a bunch of stubs for
Spl*
classes (#4255) - ๐
allowMissingFiles
was fixed by @ddeboer (#4259) - prevent crash after analysing file that defines a class twice (#4264)
- prevent an infinite loop when analysing a closure unioned with invokable class (#4266)
- @marcosh added more stubs for array functions (#4271)
- prevent crash when annotating the intersection of arrays (#4287)
- ๐ Fix reported property id for multiple
MissingConstructor
issues on a single class (#4297) - Prevent crash when trying to negate a
positive-numeric
assertion (#4306) - ๐ Fix return types for a few callmap-provided functions (#4309)
- Prevent a class name validation check on a string argument to a
class-string|Foo
union (#4310)
๐ Also thanks to @orklah for many linting PRs, and to @weirdan for very good triaging