Matthew Brown
1d3e66c798
Fix #982 - treat intersection types of traversables as first-order citizens
2018-09-09 20:10:50 -04:00
Matthew Brown
80cd77832b
Fix #980 - allow literal int types to be coerced from mixed
2018-09-09 13:01:16 -04:00
Matthew Brown
2c3244e93b
Fix #981 - allow interfaces to be equal
2018-09-09 12:20:49 -04:00
Matthew Brown
53e265e963
Fix #984 - allow magic methods to be invoked on $this->xxx
2018-09-09 11:45:52 -04:00
Matthew Brown
046025576e
Fix issue merging class constants and inherited interface ones
2018-09-09 11:18:20 -04:00
Matt Brown
bafd3cde1f
Fix #983 - allow more than two types to be intersected
2018-09-07 11:09:07 -04:00
Matt Brown
4d676afaef
Fix #985 - strip null from object type where possible
2018-09-07 11:01:10 -04:00
Matt Brown
6e5a9bf076
Fix #986 - use better return type for array_slice
2018-09-07 10:53:56 -04:00
Matthew Brown
44c742c849
Fix #976 - make sure misplaced { doesn’t halt execution
2018-09-06 00:41:07 -04:00
Matthew Brown
3e920b1227
Fix unexpected method with return type
2018-09-05 22:40:52 -04:00
Matthew Brown
e6d1a44a59
Fix #974 - fix handling of brackets
2018-09-05 22:36:32 -04:00
Matthew Brown
84459286ac
Fix #973 - allow types to reference other new types in a given docblock
2018-09-04 22:27:55 -04:00
Matthew Brown
7c274431f0
Fix #975 - don’t check things at all when there’s a duplicate class
2018-09-04 21:22:05 -04:00
Matt Brown
add7c14b44
Fix #965 - invalidate cache when changing plugins
2018-09-04 15:28:03 -04:00
Matt Brown
b97972ebb3
Fix Psalm-found issues
2018-09-04 14:37:33 -04:00
Matt Brown
cbfebb7a69
Fix #971 - be more robust in face of duplicate classes
2018-09-04 14:34:14 -04:00
Matt Brown
5d6fb4efdf
Copy inferred type when suppressing errors
2018-09-04 13:57:05 -04:00
Matt Brown
34fe935eb6
Fix sort test
2018-09-04 13:30:17 -04:00
Matt Brown
681b5fb4a5
Fix #970 - improve handling of yield from statements
2018-09-04 13:29:35 -04:00
Matt Brown
e1bc9c65fc
Add ksort to list of no-op by ref functions (vis-a-vis their argument shape
2018-09-04 13:14:44 -04:00
Matthew Brown
84d7504036
Fix #834 - warn about __toString in array offset
2018-08-31 20:24:50 -04:00
Matthew Brown
d5b0d5a996
Fix #964 - warn about imposible offsets
2018-08-31 20:02:36 -04:00
Matthew Brown
3e69a333c9
Prevent fatal error with function_exists after autoloading
2018-08-29 20:54:48 -04:00
Matt Brown
7dd3273a62
Fix #959 - allow nullable followed by parentheses
2018-08-29 16:03:16 -04:00
Matt Brown
17ea48eda4
Add ability to pretend that a file has declare(strict_types=1)
2018-08-29 15:10:56 -04:00
Matt Brown
956a7c749b
Improve handling of array_search and strstr, and restrict ini_set types
2018-08-29 13:58:07 -04:00
Matt Brown
f844f86a6c
Improve type coercion checks in strict mode
2018-08-28 17:42:39 -04:00
Matt Brown
1037485a60
Convert InvalidScalarArgument to InvalidArgument when declare(strict_types=1) is set
2018-08-28 12:37:25 -04:00
Michael Joseph
ba87eb069c
README Typo: missing word ( #956 )
2018-08-25 11:30:31 -04:00
Matt Brown
2599d8bd62
Allow some folders to be excluded from type stats collection
2018-08-24 17:46:13 -04:00
Matt Brown
caf65ca8a9
Fix #957 - allow assertions on $_GET, $_POST, $_SERVER etc
2018-08-24 16:48:14 -04:00
Matt Brown
4ef2aafdd8
Fix #955 - always check third argument of array_splice
2018-08-24 16:12:07 -04:00
Matt Brown
0691763803
Fix issue reconciling class strings
2018-08-23 11:43:53 -04:00
Matthew Brown
867ebd4441
Fix #953 - support spaces either side of |
2018-08-22 22:53:44 -04:00
Matt Brown
ebc65baa91
Fix issues with coerced class-string
2018-08-21 17:59:06 -04:00
Matt Brown
91100edcc9
Fix issue mixing class strings and class string constants
2018-08-21 14:47:28 -04:00
Matt Brown
699a34fc9d
Fix #952 - improve checks for string array offsets
2018-08-21 11:40:29 -04:00
Matthew Brown
bf79169a1d
Fix #914 - check for correct character when setting calculated field
2018-08-21 00:43:45 -04:00
Matthew Brown
4ad3522448
Fix #918 - improve handling of associative array offsets
2018-08-21 00:28:39 -04:00
Matthew Brown
36e2b1dd67
Fix #925 - set correct flag when coercing class-like string to specific
2018-08-20 22:25:10 -04:00
Matthew Brown
8814dff3c1
Fix #947 - interpret type hints of unpacked args
2018-08-20 22:11:01 -04:00
Pieter De Schepper
14e336e69a
Fix for not suppressing MethodSignatureMismatch and InvalidReturnType ( #939 )
...
* Fix for not suppressing MethodSignatureMismatch
If you have an inherited class that overrides a method with a different return type, you can now suppress it with
@psalm-suppress MethodSignatureMismatch
* Fix for non-suppressable InvalidReturnType
2018-08-20 21:37:21 -04:00
François Kooman
53ddb893e2
various DateTime/DateInterval argument type fixes ( #949 )
2018-08-18 16:18:55 -04:00
Matt Brown
070e7903df
Allow suppression of TooManyArguments by function/method id
2018-08-16 16:49:33 -04:00
Bruce Weirdan
3b3863f3a8
Scan entire file/dir list at once ( #944 )
...
fixes vimeo/psalm#943
2018-08-15 11:57:40 -04:00
Matt Brown
366f625c83
Improve handling of coerced-to-array strings in array_splice
2018-08-14 11:51:17 -04:00
Matt Brown
cb63f4f70f
Add support for checking DeprecatedTrait and DeprecatedConstant
2018-08-10 13:25:25 -04:00
Matthew Brown
2fee699d25
Fix #908 - dont’t emit UnresolvableInclude after file_exists check
2018-08-09 23:29:30 -04:00
Matthew Brown
a32273b2b8
Allow use of Psalm without composer
...
Fixes #935
2018-08-09 00:03:32 -04:00
Matthew Brown
abc19d7136
Fix #915 - never care about falsable/nullable issues when matching functions from callmap
2018-08-08 23:28:30 -04:00