Skip to content

7.1.0

Latest

Choose a tag to compare

@github-actions github-actions released this 08 Nov 02:28

What's Changed

Features

  • fix(parser): allow a trailing comma in array and list shapes by @jirkace in #13228

Fixes

  • ✨ [#11509] Fix regression about iterables, list and conditional types by @andrew-demb in #11558
  • test(psalter): pin a constructor inherited from another file with MissingThrowsDocblock by @jirkace in #13346
  • feat(stubs): substr of a non-empty-string from its start is non-empty by @jirkace in #12921
  • fix(properties): the self of a trait property signature is the using class by @jirkace in #12919
  • fix(isset): a variable not set by the isset branch stays possibly undefined after the if by @jirkace in #13046
  • fix(unused): a call on the left of ?? is used by the coalesce by @jirkace in #13231
  • fix(call): give the callback of usort() and its siblings the element type of the array by @jirkace in #13347
  • fix(call): keep the narrowed type of an unchanged argument in strict_types by @jirkace in #13341
  • fix(parser): accept a name after the = or ... of a callable param by @jirkace in #13226
  • fix(types): a literal string id does not use the C escapes \a and \b by @jirkace in #13209
  • fix(loop): report break/continue levels exceeding the enclosing structures by @jirkace in #13210
  • fix(foreach): drop the invalid-iteration null of an Iterator's current() and key() by @jirkace in #13218
  • fix(interface): report an undefined interface in an interface's extends list by @jirkace in #13212
  • fix(inheritance): compare constructors that override an abstract constructor by @jirkace in #13211
  • fix(docblock): report the class issues of a @var type at the docblock by @jirkace in #13182
  • fix(return): report a void|never docblock return type that can only return implicitly by @jirkace in #13169
  • fix(strings): keep the literals of a union in an interpolated string by @jirkace in #13130
  • fix(try): a catch whose every path leaves does not make the variables of the try possibly undefined by @jirkace in #13183
  • fix(unused): report the unused result of a pure static method call by @jirkace in #13197
  • fix(properties): a redeclared protected property is accessible from the classes of its first declaration by @jirkace in #13203
  • fix(docblock): a tag of a single-line docblock has no trailing blank by @jirkace in #13193
  • Handle missing parents when checking inherited constants by @orklah in #13414
  • fix(params): honour @psalm-suppress InvalidParamDefault by @jirkace in #13172
  • fix(callable): resolve [object, 'method'] callables to inherited and trait methods by @jirkace in #13214
  • fix(docblock): allow a trailing comma in a generic type by @jirkace in #13208
  • fix(stubs): FFI::memcmp prefers references but also accepts values by @jirkace in #13173
  • [6.x] Fix crash when a closure unsets a by-reference captured variable (backport) by @alies-dev in #12058
  • [6.x] Fix type variables bounded by another type variable (backport) by @alies-dev in #12059
  • Fix: don't report plugin-appended class and method suppressions as unused by @alies-dev in #12033

Internal changes

  • Accept negative integer keys in the composer build patch check by @danog in #13406
  • Fix 6.x CI: retry transient stub build failures, update array_first test by @danog in #13407
  • Merge 6.x into master by @alies-dev in #13438

Full Changelog: 7.0.5...7.1.0