Skip to content

Add language server signature help

Choose a tag to compare

@muglug muglug released this 09 Jul 04:23

Features

  • Language server - class autocompletion now adds uses automatically (#1822)
  • Language server - @iluuu1994 added support for signature help, which shows you the expected function/method argument types as you're adding/updating those calls (#1862)
  • Language server - go to definition now works for variables too, showing where they were first defined (#1888)
  • added support for unions in @psalm-assert annotations (#1897, #1911)
  • allow resolving directories from the config location (opt-in) - thanks @bdsl! (#1910)
  • @psalm-assert-if-true can now make assertions on $this (#1915)

Bugfixes

  • allow spread operators for inferred property types (#1873)
  • reduce memory leaks
  • improve display of iterable<TKey, TValue> types (#1875)
  • allow any bool input for microtime (#1876)
  • Better signature for ImagickDraw methods - thanks @Daeroni - and for cal_from_jd - thanks @vadim2991
  • class_alias statements are no longer taken into account when inside a class_exists(Nonexistant::class) conditional (#1891)
  • dead code detection - improved after @TysonAndre reported some dead code in Psalm's own codebase (#1899, #1900, #1901)
  • template traits when they're included in classes that extend another template (#1902)
  • inherit templates from parent interfaces (#1903)
  • allow empty array to be coerced to a mixed one when templated (#1886)
  • allow comparisons to templated class strings (#1885)
  • no memoization of magic properties after calling the magic set method (#1869)
  • closures can now contain @var docblocks with references to templates (#1865)
  • exit explicitly when composer.json is invalid (#1907)
  • populate the scope appropriately with catch variables if the try block always leaves (#1909)