packagist vimeo/psalm 3.9.4
Bugfixes

latest releases: 5.x-dev, dev-master, dev-isTypeContainedByType_flags...
4 years ago

Change in behaviour

  • accessing a not-previously-specified key of an object-like array is now a bug (#2787)
  • any args passed to an unknown method must now be defined beforehand (#2909)

Other bugfixes

  • @Daeroni improved some builtin GD functions (#2851)
  • @JaredCDN prevented a TypeError when generating xml reports (#2856)
  • Psalter: fix MissingParamType replacement when for parameters passed by-reference (#2857)
  • Prevent DuplicateArrayKey warning when unpacking multiple arrays without known key types (#2852)
  • Allow comparison between different templated object-like arrays (#2849)
  • Allow casting templated types (#2848)
  • Allow class constants to contain array offset references for other class constants (#2844)
  • Forbid passing in mutatable class to a mutation-free context (#2805)
  • Allow "5.0" where numeric is expected (#2827)
  • Only warn about deprecated classes where they're used explicitly (#2721)
  • Warn when an immutable class depends on a mutable parent (#2242)
  • Detect error when asserting on result of function call (#1684)
  • Break apart a scalar type into constituent parts where necessary (#1311)
  • Treat echo as impure (#2867)
  • Prevent use of impure __toString (#2866)
  • Prevent keyed arrays from being interpreted as callable (#2871)
  • @ArSn fixed setting memory_limit artificially low when running Psalter (#2873)
  • Allow @method as(string $s) (#2881)
  • Handle templated intersections more equally (#2875)
  • @pilif added a config skipChecksOnUnresolvableIncludes that you can disable to make Psalm more strict when it encounters includes for unknown files (#2817)
  • @jdreesen improved the return type of range(...)
  • Keep track of which argument a given template param was inferred from, to avoid overwriting the inference (#2900)
  • Don't care about method case in the PhpStorm meta scanner (#2890)
  • Rename stubs to prevent issues in PHPStorm (#2879)
  • Trim carriage returns where necessary (#2859)
  • Prevent ternaries from being considered a valid reference (#2910)
  • @leightonthomas supported trailing commas in type aliases (#1799)
  • Prevent contradiction with templated object equality (#2918)
  • Don't emit MissingPropertyType where the property is defined in a third-party lib (#2388)

Don't miss a new psalm release

NewReleases is sending notifications on new releases.