1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-21 05:45:10 +01:00
Commit Graph

6895 Commits

Author SHA1 Message Date
Matthew Brown
569d82641d Ignore PossiblyNullReference on synthetic method calls 2019-05-24 14:09:01 -04:00
Matthew Brown
7a48225184 Fix leaky template type 2019-05-24 13:35:14 -04:00
Matthew Brown
3e2b7163ca Fix #1674 - treat intersections more equally regardless of order 2019-05-24 12:48:37 -04:00
Matthew Brown
a43e4d879b Remove unnecessary option 2019-05-24 10:26:10 -04:00
Matthew Brown
9e3724bb0c Prevent class-string<T> from assigning unknown type to mixed
Fixes #1672
2019-05-24 10:20:37 -04:00
Erik Booij
a1a9555f93 Write Psalm version to baseline 2019-05-24 09:58:30 -04:00
Matthew Brown
13b9e133e4 Fix Psalm errors 2019-05-24 02:15:35 -04:00
Matthew Brown
c80f9d8ecd Add class-based support for key-of
Ref #762
2019-05-24 02:12:58 -04:00
Matthew Brown
574545e149 Add initial support for key-of<T>
Ref #762
2019-05-23 23:53:48 -04:00
Matthew Brown
a18a564ad9 Add parser support for key-of and indexed access 2019-05-23 23:52:48 -04:00
Matthew Brown
11509cdc10 Remove ignored symlink 2019-05-23 22:31:54 -04:00
Brown
3fcadb8f4c Prevent redundant addType 2019-05-23 18:09:53 -04:00
Brown
56daa390fc Allow array access on @template T as array
Ref #1607
2019-05-23 18:06:22 -04:00
Brown
01dcf8f631 Fix erroneous update of existing variables 2019-05-23 18:04:12 -04:00
Ilija Tovilo
5d51680e65 Remove useless echo from tests 2019-05-23 14:32:07 -04:00
Brown
1c30270d89 Remove 7.4 syntax 2019-05-23 13:55:55 -04:00
Brown
888776cebd Fix duplicate test 2019-05-23 13:10:23 -04:00
Brown
6ce5fefa4b Fix #1664 - allow templated __get params 2019-05-23 12:59:09 -04:00
Brown
758c7e22ff Fix bad signature in ClassLoadOrderTest 2019-05-23 12:54:23 -04:00
Brown
ded8c53d6e Consolidate tests 2019-05-23 12:53:46 -04:00
Brown
5718d73f1a Ignore symlinktest 2019-05-23 11:36:20 -04:00
Brown
c64a654ece Fix #1666 - complain about properties in interfaces 2019-05-23 10:21:56 -04:00
Brown
83fe545c94 Fix docblock 2019-05-22 18:09:36 -04:00
Brown
f728d797cf Fix #1665 - allow -if-true & -if-false assertions on static methods 2019-05-22 17:49:38 -04:00
Matthew Brown
7601921ecf
Add a word 2019-05-21 23:06:50 -04:00
Brown
29c869ed67 Ignore nullable issues on just-coerced types 2019-05-21 12:59:06 -04:00
Brown
034ea725e8 Coerce generic types from empty 2019-05-21 12:12:13 -04:00
Matthew Brown
ec2ee04fe8 Allow coercion from empty to array param 2019-05-21 12:12:13 -04:00
Brown
4ecf370900 Coerce mixed values when passed as arguments 2019-05-21 11:51:41 -04:00
Matthew Brown
a1eb191f57 Remove TSqlSelectString and related dependency 2019-05-20 23:14:41 -04:00
Matthew Brown
ea930b8875 Fix interface_exists after class_exists check 2019-05-20 20:57:59 -04:00
Brown
8c653b0312 Improve dead code detection a little more 2019-05-20 18:25:11 -04:00
Brown
7708e1c489 Bump PHPUnit version 2019-05-20 13:58:14 -04:00
Brown
2637156f45 Properly fix #1128 with additional check 2019-05-20 12:01:18 -04:00
Brown
83a2122f8c Fix #1464 and fix #1128 - reduce try/catch UnusedVariable false positives 2019-05-20 11:54:21 -04:00
Matthew Brown
1e853800a3 Fix #1657 - allow interface_exists to generate class-string assertion 2019-05-19 15:56:04 -04:00
Brown
4035823d51 Fix #1652 - allow totally-templated intersections 2019-05-17 15:40:52 -04:00
Brown
963d5bb901 Fix #1656 - allow chained call completion 2019-05-17 12:38:29 -04:00
Brown
a1c9ad501b Fix #1654 - understand templated completions 2019-05-17 12:11:27 -04:00
Josh Di Fabio
92ef851b9c LanguageServer: Handle late completion requests
Currently, Psalm Language Server is only able to handle completion
requests where the gap between a recent known type and the current
cursor position is exactly '->' or '::'. However, VS code often doesn't
send a completion request until an additional, third character has
been typed. This change allows Psalm to successfully serve
completion requests where an additional character has been typed.
2019-05-17 11:28:20 -04:00
Josh Di Fabio
d37cddea27 FileProvider: Consider file open if temp changes
The VS Code LSP client does not always send didOpen messages when a file
is being edited. This causes code completion requests to fail because the
completion request refers to files which are not 'open' according to
FileProvider.

This commit changes FileProvider so that a file is considered 'open' if it is
being modified, even if no didOpen message was received from the LSP
client.
2019-05-17 11:27:45 -04:00
Brown
0f3385ce95 Use sebastian/diff 2019-05-17 11:26:44 -04:00
Brown
ebe97c871e Make tests much faster 2019-05-17 11:22:34 -04:00
Matthew Brown
0d2fc4e774
Bump minimum PHPUnit version 2019-05-16 19:05:27 -04:00
Brown
0bd4dbcbc4 Bump to PHP 7.1
Fixes #1650
2019-05-16 18:36:36 -04:00
Brown
9a93525d33 Emit undefined docblock class error where appropriate on property fetcthes 2019-05-16 15:07:07 -04:00
Matthew Brown
ee3dfba8ab
Add documentation for all 19 hooks
Fixes #1582
2019-05-16 14:32:44 -04:00
Matthew Brown
e75ee77938
Added default name 2019-05-16 14:17:40 -04:00
Brown
66bbe5bb74 Allow space in intersection type
Ref #1645
2019-05-16 13:52:58 -04:00
Brown
6b04503cc4 Fix #1646 - reload functions from cache when not already stubbed 2019-05-16 13:32:31 -04:00