github vimeo/psalm 7.0.3

latest release: 6.20.9
4 hours ago

What's Changed

Fixes

  • Fix: issues found while scanning are lost with a warm cache by @alies-dev in #13156
  • fix(types): an array key that may be mixed is array-key by @jirkace in #13176
  • Fix implicit native __toString overrides and safeguard callmap generation by @orklah in #13235
  • Fix LSP lookup of builtin functions in files not analyzed in-process by @M393 in #13237
  • [6.x] Infer return types for array_first and array_last (PHP 8.5) by @alies-dev in #12157
  • [6.x] Infer the key parameter of array_find/array_any/array_all callbacks by @alies-dev in #13245
  • [6.x] Infer the exact element removed by array_pop/array_shift by @alies-dev in #13246
  • fix(algebra): keep every orred clause of a variable when reconciling by @jirkace in #13114
  • fix(types): an inherited docblock identical to the native return type keeps static of the called class by @jirkace in #12968
  • fix(templates): check a method call against every type of a union template bound by @jirkace in #13106

Docs

Internal changes

  • Add guzzle/promises to the perf corpus by @alies-dev in #12984
  • Push the docker image to ghcr.io/psalm/psalm by @danog in #13044
  • [6.x] Push the files composer build regenerates instead of failing by @danog in #13147
  • Perf: stop parsing the same vendor files again and again (10–55% less CPU on projects extending vendor classes) by @alies-dev in #13234
  • Social medial: announce on X and Mastodon only the releases worth a post by @alies-dev in #13241
  • Merge 6.x into master by @alies-dev in #13243
  • Merge 6.x into master by @alies-dev in #13247

Full Changelog: 7.0.2...7.0.3

Don't miss a new psalm release

NewReleases is sending notifications on new releases.