1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-16 19:36:59 +01:00
Commit Graph

98 Commits

Author SHA1 Message Date
Matthew Brown
c9a2ca9321 Allow output of get_parent_class to be used in new without check 2018-08-02 13:43:13 -05:00
Tyson Andre
06abf52d94 Fix typos detected by misspell (#924)
Both of initiali[sz]e were used, z was more common.
2018-08-02 00:40:51 -04:00
Matthew Brown
c97329da06 Fix #903 - make sure parent::foo is executed in context of method’s class
and not immediate parent
2018-07-21 20:01:58 -04:00
Matthew Brown
2af7ea05da Fix #897 - understand static class comparisons in is_a 2018-07-17 22:50:30 -04:00
Matthew Brown
0fa7cbeb02 Fix #895 - check __call magic method args 2018-07-16 22:48:53 -04:00
Matt Brown
92aa3f8117 Fix dumb regression 2018-07-16 16:07:18 -04:00
Matt Brown
b80440f1e3 Fix #893 - improve error message for missing intersection type method 2018-07-16 11:52:38 -04:00
Matthew Brown
91f7cdf134 Fix #890 - improve reporting site for some method issues 2018-07-13 18:47:21 -04:00
Matt Brown
7713c7a8d6 Use continue 2 in place of continue 2018-07-12 18:04:05 -04:00
Matt Brown
8b3fa21b41 Fix #884 - don’t error on static calls that aren’t user defined 2018-07-11 12:05:50 -04:00
Matt Brown
42e1090647 Add support for static method call assertions 2018-07-11 11:32:12 -04:00
Matt Brown
661803a020 Fix #883 - add @psalm-assert-if-true support to methods 2018-07-11 11:22:07 -04:00
Matthew Brown
8a4d7e12bd Fix issues found by scanning PHPCS 2018-07-05 23:02:09 -04:00
Matt Brown
b8636eb326 Improve memoisation of chained calls 2018-07-03 12:45:29 -04:00
Matthew Brown
685ae67435 Fix #839 - check args for __call methods 2018-06-26 23:11:16 -04:00
Matthew Brown
5867ef45ff Check method args even if the methods themselves cannot be checked 2018-06-25 19:38:15 -04:00
Matthew Brown
e3ae1bf26f Fix #15 - check for uncaught throws if config flag is set 2018-06-22 01:13:49 -04:00
Matt Brown
e10b2c0fd4 Fix #805 - allow dead code detection from methods just called internally 2018-06-19 16:14:51 -04:00
Matt Brown
75e2be8aec Fix #825 - ignore falsable issues on builtin *methods* 2018-06-18 10:07:05 -04:00
Matthew Brown
a2b1838e23 Fix #803 - trait methods are evaluated correctly now 2018-06-08 20:06:05 -04:00
Matthew Brown
ea4dc9f2b8 Improve simplexml function inference 2018-06-05 23:42:02 -04:00
Matthew Brown
b5cb2b34a2 Fix #380 - don’t complain about legitimate (if archaic) self calls 2018-06-03 19:11:07 -04:00
Matthew Brown
ee9fef050a Add support for function checking plugins 2018-05-31 22:00:11 -04:00
Matthew Brown
258e862c92 Only assign global vars to mixed if they don’t already exist 2018-05-31 09:02:57 -04:00
Matthew Brown
6b8e019a07 Bleed global variables declared in functions into main context 2018-05-30 22:09:46 -04:00
Matt Brown
549e90eca4 Treat required files the same as the files that require them, reporting-wise 2018-05-30 16:19:18 -04:00
Matthew Brown
d98261507f Fix #769 - add @psalm-assert and @psalm-assert-if-true annotation support 2018-05-28 20:07:42 +01:00
Matt Brown
aebbd473d9 Fix issues reconciling class-string params to actual types 2018-05-21 12:40:39 -04:00
Matthew Brown
cdcba6152d Add ability to infer return type for method calls 2018-05-20 12:47:26 -04:00
Matthew Brown
5bd9ba6207 Make TClassString inherit from TLiteralString 2018-05-20 00:27:53 -04:00
Matthew Brown
759516d01f Fall back to $method_id if no defining method id found 2018-05-12 13:19:19 -04:00
Matthew Brown
4fe5ac87b6 Fix #712 - rewrite switch statement fallthroughs to understand logic better 2018-05-12 12:55:24 -04:00
Matthew Brown
56a1f744a0 Fix #734 - allow DOMDocument::appendChild to mirror its first arg 2018-05-12 00:28:21 -04:00
Matthew Brown
a33d52d935 Add support for referencedProperty error restrictions 2018-05-11 00:07:41 -04:00
Matthew Brown
318220a1bf Fix #728 - remove statement return type when re-analysing 2018-05-09 09:30:23 -04:00
Matthew Brown
2c0dd36035 Fix get type return types 2018-05-08 22:01:05 -04:00
Matthew Brown
e50ef8bf03 Support __invoke return types 2018-05-08 19:49:25 -04:00
Matt Brown
6e259bed03 Always evaluate closures, even when passed as mixed call args 2018-05-08 18:11:10 -04:00
Matt Brown
bc17d23788 Fix mixed empty checks 2018-05-08 16:34:08 -04:00
Matthew Brown
61aeea6375 Fix whole bunches of things 2018-05-07 01:26:06 -04:00
Matthew Brown
21261172a8 Fix #713 - support offsets of known array types 2018-05-05 17:30:18 -04:00
Matthew Brown
1a4ddc7cdd
Support value types (#707)
* Add first idea

* Add initial count experiments

* Remove false positives

* Fix getId to support changes in conditionals

* Add better tests

* Strip types when not exists

* Fix array offsets

* More fixes

* Add class constant value types

* Clone constants everywhere

* Don’t complain unnecessarily

* Be more lenient with possibly invalid __sets

* Fix mixed issues

* Fix bug concerning orred string equality

* Remove unnecessary casts
2018-05-03 13:56:30 -04:00
Matthew Brown
99da371ac4 Move memoisation after callmap branch 2018-04-28 13:49:27 -04:00
Matthew Brown
da6209276f Allow ability to memoize empty method calls based on config 2018-04-28 13:05:43 -04:00
Matthew Brown
2fabdf3353 Fix #314 - add a way to indicate @method list is comprehensive 2018-04-22 00:40:30 -04:00
Matthew Brown
1c7568e612 Fix #642 - allow @method to override existing methods
behind usePhpDocMethodsWithoutMagicCall="true"
2018-04-21 23:08:08 -04:00
Matthew Brown
8b50cdf315 Fix #632 - add support for @method annotations when method can’t be found 2018-04-21 22:44:54 -04:00
Matthew Brown
d02b148820 Fix #633 - support @method for magic __call methods 2018-04-21 22:13:10 -04:00
Matt Brown
8d7c365e5f Fix #679 - improve template param type checks 2018-04-20 10:52:23 -04:00
Matt Brown
6afaf5aae9 Make Psalm compatible with PHP Parser 4 2018-04-17 13:06:02 -04:00