bugreportuser
|
61e086ac7b
|
Ignore more redundant issues
|
2019-02-18 22:44:26 -05:00 |
|
Matthew Brown
|
f49be31aeb
|
Fix #1332 - use the correct identifier for trait property resolution
|
2019-02-18 16:52:09 -05:00 |
|
Matthew Brown
|
41255b42c6
|
Fix #1325 - allow MissingThrowsDocblock to be suppressed
|
2019-02-18 16:41:06 -05:00 |
|
Matthew Brown
|
75104f4712
|
Fix #1359 - error on bad iterable args
|
2019-02-18 16:35:23 -05:00 |
|
Matthew Brown
|
6b419452af
|
Fix #1337 - don’t crash when examining __call methods in initialisation checks
|
2019-02-18 16:04:27 -05:00 |
|
Matthew Brown
|
81a5a24e15
|
Suppress PossiblyUnusedMethod
|
2019-02-18 15:56:31 -05:00 |
|
Bruce Weirdan
|
e87f500458
|
Added Psalm\Codebase::isTypeContainedByType()
|
2019-02-18 15:56:31 -05:00 |
|
Matthew Brown
|
3fdef1a032
|
Fix #1350 - allow parameterised iterable and unparameterised traversable
|
2019-02-18 13:01:20 -05:00 |
|
Matthew Brown
|
709a5c31da
|
Allow bitwise or ops to change type
Ref #1340
|
2019-02-18 12:53:55 -05:00 |
|
Matthew Brown
|
5aaa68c214
|
Add better error message and also update callmap
|
2019-02-18 12:28:30 -05:00 |
|
Matthew Brown
|
12f1ffca11
|
Fix issue reconciling mixed vars inside loop
|
2019-02-18 11:39:05 -05:00 |
|
ADmad
|
8d54825582
|
Fix signature for datefmt_create().
|
2019-02-18 09:33:08 -05:00 |
|
Bruce Weirdan
|
cb453a8da9
|
Allow suppressing UnusedClass on specific classes
This allows suppressing UnusedClass with either `referencedMethod` or
`@psalm-suppress`
Fixes vimeo/psalm#1353
|
2019-02-18 09:32:09 -05:00 |
|
bugreportuser
|
24cdb6e1d3
|
Fix array_unique stub
|
2019-02-17 21:35:54 -05:00 |
|
Matthew Brown
|
5777e008c0
|
Remove var_dump
|
2019-02-17 13:18:23 -05:00 |
|
Bruce Weirdan
|
8408effe57
|
Dropped unused uses
|
2019-02-17 13:17:45 -05:00 |
|
bugreportuser
|
93bc7c477e
|
Fix mb return types
|
2019-02-17 13:16:55 -05:00 |
|
ADmad
|
7298638dff
|
Fix invalid return type in callmap.
apu_delete() only returns boolean.
http://php.net/manual/en/function.apcu-delete.php
|
2019-02-17 13:15:59 -05:00 |
|
Matthew Brown
|
40a91eab6e
|
Fix #1339 - no crash when using self/static/parent in closure
|
2019-02-17 13:14:59 -05:00 |
|
bugreportuser
|
8edb117451
|
Fix password_hash change between versions
|
2019-02-16 23:57:49 -05:00 |
|
bugreportuser
|
13f182bf9f
|
Revert "fixed password_hash signature"
This reverts commit 32377d6751 .
|
2019-02-16 22:13:05 -05:00 |
|
Matthew Brown
|
a428b34a1a
|
Fix #1338 - ignore redundant issues when collecting initialisations
|
2019-02-16 20:27:42 -05:00 |
|
Matthew Brown
|
356a45a155
|
Improve ergonomics of PHPStorm meta parsing
|
2019-02-16 18:50:25 -05:00 |
|
Matthew Brown
|
2ef82d785f
|
Improve signature of FunctionReturnTypeProvider to omit internal things
|
2019-02-16 15:29:54 -05:00 |
|
Matthew Brown
|
fa362b04cb
|
Fix treatment of '' => '@' mapped value
|
2019-02-16 12:16:34 -05:00 |
|
Matthew Brown
|
0739d017ac
|
Use information from .phpstorm.meta.php files in stubs
|
2019-02-16 11:16:52 -05:00 |
|
Matthew Brown
|
d5420a7708
|
Suppress PossiblyUnusedParam for PHP 7.0
|
2019-02-15 18:50:23 -05:00 |
|
Matthew Brown
|
0c9c8c204c
|
Suppress UndefinedMethod for Php 7.0 Psalm check
|
2019-02-15 18:41:30 -05:00 |
|
Matthew Brown
|
149d7cab1c
|
Add PHP 7.0-compatible closure creation
|
2019-02-15 18:33:29 -05:00 |
|
Matthew Brown
|
d76459e138
|
Move to a PHPStan-like return type provider class model
|
2019-02-15 18:00:40 -05:00 |
|
Matthew Brown
|
0ea22e8d82
|
If we’re checking $_SESSION for existence return an array
Fixes #1335
|
2019-02-15 15:58:36 -05:00 |
|
Brown
|
dca8bf9d36
|
Fix #1329 - improve handling arrays with string offsets
|
2019-02-15 14:42:17 -05:00 |
|
Brown
|
d70e29508f
|
Don’t fatal error when callable class does not exist
|
2019-02-15 12:02:44 -05:00 |
|
Brown
|
0f45d14fea
|
Only collapse Traversable|array when we’re super sure it’s safe
Fixes #1333
|
2019-02-15 11:07:08 -05:00 |
|
Brown
|
27c99aed2f
|
Improve recovery from InvalidScalarArgument issue
|
2019-02-14 16:55:54 -05:00 |
|
Brown
|
9f1dc425d0
|
Reduce repetition in the baseline files
|
2019-02-13 15:10:50 -05:00 |
|
Brown
|
50421b297a
|
Don’t report undefined properties when collecting initialisations
|
2019-02-13 14:04:10 -05:00 |
|
Brown
|
3deea3980d
|
Add checks for unitialized properties
Fixes #1328
|
2019-02-13 13:32:19 -05:00 |
|
Matthew Brown
|
3497ad4765
|
Allow namespaced use of optional callable params
|
2019-02-11 08:41:48 -05:00 |
|
Matthew Brown
|
7fdc226ac5
|
Always remove callable type
|
2019-02-11 01:44:07 -05:00 |
|
Matthew Brown
|
e5360a6faa
|
Check callable types too
|
2019-02-11 01:41:28 -05:00 |
|
Matthew Brown
|
867ea1fa34
|
Fix #1320 - allow iterable comparison
|
2019-02-10 23:51:26 -05:00 |
|
Matthew Brown
|
8fc0b43973
|
Fix typecercion issues
|
2019-02-10 21:13:06 -05:00 |
|
Matthew Brown
|
0ec83a24d4
|
Fix docblocks cc @SignpostMarv
|
2019-02-10 20:57:22 -05:00 |
|
SignpostMarv
|
230821591a
|
amending methods
|
2019-02-10 20:40:32 -05:00 |
|
SignpostMarv
|
60f9d3558c
|
templating for ReflectionClass
|
2019-02-10 20:40:32 -05:00 |
|
Matthew Brown
|
c6b3fc512f
|
Don’t throw exception when ignoring trait absence
|
2019-02-10 16:32:30 -05:00 |
|
Matthew Brown
|
af61e167f4
|
Add callable literal string
Fixes #1315
|
2019-02-10 16:27:37 -05:00 |
|
Matthew Brown
|
9a8f969d5c
|
Fix #1314 - make sure we always know what a closure is if we’re using one
|
2019-02-10 16:23:31 -05:00 |
|
Matthew Brown
|
c58100e3af
|
Fix #1313 - don’t allow mixed function calls
|
2019-02-10 16:15:52 -05:00 |
|
Matthew Brown
|
7a1ff78bb3
|
Fix #1316 - is_iterable should remove arrays from union
|
2019-02-10 15:56:35 -05:00 |
|
Matthew Brown
|
62fb8035bf
|
Fix #1309 - no PropertyNotSetInConstructor warnings for grandchild of class
|
2019-02-10 15:01:10 -05:00 |
|
Matthew Brown
|
6976528c7e
|
Fix #1310 - check template defining class matches
|
2019-02-10 12:02:18 -05:00 |
|
Matthew Brown
|
c765d0e969
|
Fix #1307 - improve generator array type
|
2019-02-09 15:48:15 -05:00 |
|
Matthew Brown
|
83e22a10f8
|
Fix #1299 - vars defined in catches before throw are possibly-defined for finally
|
2019-02-09 15:39:30 -05:00 |
|
Maria Luiza Soares
|
5bd16c686f
|
Show total fixed errors when updating baseline
|
2019-02-09 11:20:48 -05:00 |
|
bugreportuser
|
6c7819b438
|
Allow @psalm-template for classes
|
2019-02-09 11:15:25 -05:00 |
|
Brown
|
c68209b8f3
|
Fix #1300 - add functions mentioned in class file where class is used
|
2019-02-08 17:41:03 -05:00 |
|
Matthew Brown
|
f4518d59e0
|
Fix #1303 - improve handling of class-string<Foo> type arg passed to class-string<T> param
|
2019-02-08 13:34:30 -05:00 |
|
Matthew Brown
|
98644f7a65
|
Allow more-specific template types to override mixed
|
2019-02-08 13:09:36 -05:00 |
|
Matthew Brown
|
6d0e78540a
|
Only move issue once
|
2019-02-07 18:47:50 -05:00 |
|
Matthew Brown
|
0bca8db561
|
Don’t throw exception when property is missing type
|
2019-02-07 18:10:32 -05:00 |
|
Matthew Brown
|
e6f3948f7b
|
Fix #1297 - prevent false positive TypeDoesNotContainType for class const array offset
|
2019-02-07 16:24:31 -05:00 |
|
Matthew Brown
|
ed4ed957c8
|
Use more specific templated argument
|
2019-02-07 15:21:34 -05:00 |
|
Matthew Brown
|
fbe5801345
|
Prevent issues being forgotten when another error crops up
|
2019-02-07 14:06:37 -05:00 |
|
Matthew Brown
|
c383e61805
|
Fix #1296 - array_filter should allow scalar values
|
2019-02-07 13:05:17 -05:00 |
|
Matthew Brown
|
17541b415f
|
Fix #1191 - allow Psalm to check against different versions of PHP
|
2019-02-07 12:25:57 -05:00 |
|
Matthew Brown
|
f8f5ddfb04
|
Add support for string range
|
2019-02-07 10:50:42 -05:00 |
|
SignpostMarv
|
3de4457a45
|
adding type-hinting stub for array_chunk()
|
2019-02-06 16:43:22 -05:00 |
|
Matthew Brown
|
c758678022
|
Fix remaining issues
|
2019-02-06 16:08:41 -05:00 |
|
Matthew Brown
|
e7d73c3ff2
|
Fix generator ref
|
2019-02-06 16:08:41 -05:00 |
|
Aaron Piotrowski
|
e6fcb79392
|
Update ProtocolStreamReader
|
2019-02-06 16:08:41 -05:00 |
|
Matthew Brown
|
7249539fc6
|
Add a few return types and improve formatting
|
2019-02-06 16:08:41 -05:00 |
|
Matthew Brown
|
d18ef9c6e1
|
Add ideal stub return types
|
2019-02-06 16:08:41 -05:00 |
|
Aaron Piotrowski
|
b0d97843ce
|
Update Amp usage
Fixed a few errors and used byte-stream for reading and writing.
|
2019-02-06 16:08:41 -05:00 |
|
Matthew Brown
|
263a4c8cf1
|
Use Amp for handling language server event loop
|
2019-02-06 16:08:41 -05:00 |
|
Matthew Brown
|
dfe45e7d26
|
Fix #1290 - improve handling of more specific template
|
2019-02-06 15:56:40 -05:00 |
|
Matthew Brown
|
d45326759f
|
Fix #1287 - improve handling of templated intersection
|
2019-02-06 12:37:05 -05:00 |
|
Matthew Brown
|
822e840d0c
|
Prevent union in function template as
|
2019-02-05 17:39:11 -05:00 |
|
Matthew Brown
|
899dd16e8f
|
Be more strict about what can be a template as type
|
2019-02-05 17:26:34 -05:00 |
|
Matthew Brown
|
c83afc1af2
|
Fix element type inference for DOMNodeList
|
2019-02-05 13:34:59 -05:00 |
|
Matthew Brown
|
6d5c995458
|
Fix #1282 - allow generic self and static
|
2019-02-05 08:02:06 -05:00 |
|
Matthew Brown
|
6033345694
|
Fix #1281 - improve handling of mixed property array assignment
|
2019-02-05 00:36:57 -05:00 |
|
Brown
|
e8a157f8d7
|
Add missing second arg
|
2019-02-04 18:00:23 -05:00 |
|
Brown
|
27428b8743
|
Allow ArrayAccess::offsetGet to return null
|
2019-02-04 17:27:08 -05:00 |
|
Brown
|
bbf013bfb8
|
Fix #1279 - speed up analysis of large arrays
|
2019-02-04 16:06:14 -05:00 |
|
Matthew Brown
|
ab22634d23
|
Fix #1274 - fix parent:: call to templated method
|
2019-02-04 00:52:31 -05:00 |
|
Matthew Brown
|
f81f325c8e
|
Fix #1275 - improve combination of class-string types
|
2019-02-03 17:32:44 -05:00 |
|
Matthew Brown
|
261c44504e
|
Add more specific return type for #1275
|
2019-02-03 17:26:56 -05:00 |
|
Matthew Brown
|
d665f98fe7
|
Fix issue reconciling class strings
|
2019-02-03 17:25:22 -05:00 |
|
Matthew Brown
|
f06ed8bf84
|
Fix #1273 - don’t change type with unpacked var
|
2019-02-03 16:36:10 -05:00 |
|
Matthew Brown
|
e97d4f85ee
|
Break large CallAnalyzer funtions apart
|
2019-02-03 16:21:37 -05:00 |
|
Matthew Brown
|
194bb31221
|
Fix #204 - allow missing param types to be added with Psalter
|
2019-02-02 14:16:49 -05:00 |
|
Matthew Brown
|
3a01afbe0a
|
Refine inferred type when possible
|
2019-02-02 12:10:52 -05:00 |
|
Matthew Brown
|
db89b3cc3f
|
Add initial support for fixing MissingParamType
|
2019-02-02 11:28:48 -05:00 |
|
Tim van Dijen
|
45d61fc861
|
Set proper return type for ldap methods
|
2019-02-01 14:15:34 -05:00 |
|
Brown
|
533b92e15a
|
Fix #1269 - fill in object type
|
2019-02-01 14:13:21 -05:00 |
|
Brown
|
8b65acf15b
|
Make return type mismatch more clear
|
2019-02-01 10:55:28 -05:00 |
|
Matthew Brown
|
509709d6bc
|
Fix #1267 - flesh out self static property types
|
2019-02-01 08:59:01 -05:00 |
|
Andrii
|
21d383d6c6
|
🐛 #1225 Allow use lead asterisk wildcard in referenceClass
|
2019-02-01 07:59:44 -05:00 |
|
Matthew Brown
|
b8b1106d79
|
Fix #1265 - allow referencedClass/Property/Method to be warnings
|
2019-02-01 07:58:40 -05:00 |
|
Matthew Brown
|
79544eb289
|
Fix comment analysis for callable(): returntype
|
2019-02-01 07:50:48 -05:00 |
|
Tyson Andre
|
53756e7017
|
Remove redundant catching and rethrowing
I assume these used to have additional logging,
but they're no-ops.
|
2019-01-31 21:18:00 -05:00 |
|
Matthew Brown
|
ac79e9a311
|
Fix #1263 - return proper class string
|
2019-01-31 21:06:21 -05:00 |
|
Matthew Brown
|
0be6aac30c
|
Fix #1262 - fix object check redundant condition
|
2019-01-31 20:31:40 -05:00 |
|
Brown
|
3f289731bb
|
Add ability to check descendants in ignored exceptions
|
2019-01-31 18:40:40 -05:00 |
|
Brown
|
c5a0a3df86
|
Fix yielding from iterable
|
2019-01-31 17:58:53 -05:00 |
|
Brown
|
fd88f00526
|
Fix a few small bugs
|
2019-01-31 17:48:48 -05:00 |
|
Brown
|
74ebb0b2d5
|
Don’t copy context unnecessarily when checking methods had no effect
|
2019-01-31 12:55:48 -05:00 |
|
Brown
|
2054e3753f
|
Fix #1260 - improve handling of ArrayAccess assignment
|
2019-01-31 12:45:47 -05:00 |
|
Brown
|
c195e8fd21
|
Add more nuanced analysis of array access fetch
|
2019-01-30 15:40:37 -05:00 |
|
Brown
|
900d5fa9db
|
Fix ArrayIterator::unserialize return type
|
2019-01-30 14:56:10 -05:00 |
|
Brown
|
4bc2fcc2f8
|
Fix serialized interface usage and generic ArrayIterator offset methods
|
2019-01-30 14:32:08 -05:00 |
|
Brown
|
d52fd70fd6
|
Fix invalid inheritance for SplObjectStorage
|
2019-01-30 13:48:05 -05:00 |
|
Brown
|
8c27bd77f6
|
Fix #1259 - add support for SplObjectStorage type params
|
2019-01-30 13:03:22 -05:00 |
|
Brown
|
e060ec35de
|
Fix #1258 - allow static method returns
|
2019-01-30 11:44:12 -05:00 |
|
Brown
|
661c7ee707
|
Fix #1256 - detect illegal closure use
|
2019-01-30 11:36:21 -05:00 |
|
Matthew Brown
|
bfb2a5c19e
|
Fix #1257 - transform docblock types for magic methods to something more meaningful
|
2019-01-30 09:46:23 -05:00 |
|
Brown
|
0bb5143efd
|
Fix #1254 - merge literal and class-strings types into string
|
2019-01-29 10:34:31 -05:00 |
|
Brown
|
9edbae2bdc
|
Fix possible fatal when builtin function is called in array_filter
|
2019-01-28 17:54:50 -05:00 |
|
Brown
|
819489e68d
|
Add method that reflection doesn’t know exists
|
2019-01-28 17:09:23 -05:00 |
|
Brown
|
3e4c63eb9a
|
Fix template extension in grandchildren
|
2019-01-28 16:56:42 -05:00 |
|
Brown
|
a801923502
|
Add support for SplQueue templating
|
2019-01-28 12:27:04 -05:00 |
|
Brown
|
f33415827e
|
Add checks for rounded values
|
2019-01-28 11:57:49 -05:00 |
|
Brown
|
b5059f45a0
|
Allow users to ignore missing ignorefiles
|
2019-01-28 11:50:18 -05:00 |
|
Matthew Brown
|
45058ea494
|
Fix possible crash when class-string class doesn’t exist
|
2019-01-28 01:12:41 -05:00 |
|
Matthew Brown
|
09ee6e3d13
|
Fix #1253 - prevent ints from coercing to literal floats
|
2019-01-27 23:21:54 -05:00 |
|
Matthew Brown
|
081ba4b204
|
Fix #1072 - add support for @use SomeTrait<T>
|
2019-01-27 23:12:40 -05:00 |
|
Matthew Brown
|
f67bab6d52
|
Restrict template-extends to actual extends
|
2019-01-27 21:00:27 -05:00 |
|
Matthew Brown
|
2d32e4b92a
|
Remove 7.0-incompatible type
|
2019-01-27 18:43:36 -05:00 |
|
Matthew Brown
|
89999fd554
|
Add suppport for float enums
Fixes #1099
|
2019-01-27 18:34:13 -05:00 |
|
Matthew Brown
|
0574e06a42
|
Remove 7.0-incompatible type
|
2019-01-27 18:31:40 -05:00 |
|
Matthew Brown
|
45cf35350c
|
Add non-internal endpoint for parsing types
|
2019-01-27 17:26:32 -05:00 |
|
Matthew Brown
|
d8783c277f
|
Add support for getPsalmTypeFromReflectionType
|
2019-01-27 17:16:22 -05:00 |
|
Matthew Brown
|
00e95cbd6b
|
Understand that template class string transforms back to templated class
Fixes #1250
|
2019-01-27 15:08:17 -05:00 |
|
Matthew Brown
|
cd4d2027d0
|
Fix #1249 - allow iterator_to_array to respect getIterator method
|
2019-01-27 14:50:05 -05:00 |
|
Matthew Brown
|
60e7587c2d
|
Replace template types in object-like arrays
|
2019-01-27 14:20:41 -05:00 |
|
Matthew Brown
|
be06393b9c
|
Fix #1251 - allow instanceof comparisons to class strings
|
2019-01-27 14:10:33 -05:00 |
|
Matthew Brown
|
16c2a0f899
|
Fix #1246 - check @var annotations
|
2019-01-26 17:30:44 -05:00 |
|
Matthew Brown
|
22ee72808a
|
Remove a bunch of hacks around generic offsets
Also fixes #1245
|
2019-01-26 16:58:49 -05:00 |
|
Brown
|
fcc9d1a979
|
Fix #1244 and fix #1243 - add template-extends checks
|
2019-01-25 15:31:17 -05:00 |
|
Brown
|
55913699d3
|
Allow iterable to subsume array and traversable
Fixes #1242
|
2019-01-25 14:43:16 -05:00 |
|
Brown
|
c9e1df510e
|
Fix #1241 - allow negative string offsets on a string
|
2019-01-25 10:23:50 -05:00 |
|
Brown
|
bed1f15e09
|
Fix #1240 - reconcile array to iterable in template replacement
|
2019-01-25 10:17:41 -05:00 |
|
Brown
|
c0f3197790
|
Fix #1238 - only emit MissingTemplateParam on direct interface implementers
|
2019-01-25 10:10:22 -05:00 |
|
Brown
|
cd0a7441d9
|
Add warnings for extended template param counts off
|
2019-01-24 17:55:03 -05:00 |
|
Brown
|
650c2b70f8
|
Fix #1236 - forbid bad class names in @extends
|
2019-01-24 16:43:22 -05:00 |
|
Brown
|
5352084188
|
Fix #1234 - apply @template-extends to inherited method signatures
|
2019-01-24 16:09:04 -05:00 |
|
Brown
|
0d52dc4e00
|
Fix #1232 - allow checking of extended templated function returns
|
2019-01-24 15:03:13 -05:00 |
|
Brown
|
006801f661
|
Fix #1233 - inherit docblock return types from interfaces and classes when signature exists
|
2019-01-24 11:55:59 -05:00 |
|
Brown
|
67a14cefde
|
Still complain about less specific types when signature type is present
Ref #1233
|
2019-01-24 10:58:59 -05:00 |
|
Brown
|
184ee76176
|
Remove erroneous regular namespace check
Fixes #1235
|
2019-01-24 10:41:06 -05:00 |
|
Brown
|
8a97e32e16
|
Add code to make handling interfaces with magic get/set
Ref #1228
|
2019-01-23 16:58:50 -05:00 |
|
Brown
|
60e9d4f245
|
Don’t give up after method_exists if static method exists
|
2019-01-23 15:50:12 -05:00 |
|
Brown
|
59baa53b3d
|
Fix #1229 - only check for inheritance if class exists
|
2019-01-23 13:02:07 -05:00 |
|
Matthew Brown
|
8bc17e47be
|
Fix #1227 - allow genric params in @psalm-assert
|
2019-01-22 23:42:54 -05:00 |
|
Brown
|
51c6621925
|
Add property lookup
|
2019-01-22 11:10:37 -05:00 |
|
Matthew Brown
|
1c5f6963a6
|
Skip callable tests for PHP 7
|
2019-01-21 18:01:15 -05:00 |
|
Matthew Brown
|
ea137fc20c
|
Don’t complain about mixed after unpacking arg
|
2019-01-21 17:42:25 -05:00 |
|
Matthew Brown
|
e0067e53c5
|
Fix param chosen to be expected
|
2019-01-21 17:35:55 -05:00 |
|
Matthew Brown
|
1b0c426c52
|
Improve error message when type cannot be inferred, fixes #1110
|
2019-01-21 17:29:12 -05:00 |
|
Matthew Brown
|
5cc3fe6b67
|
Fix #760 - coerce __invoke method to closure
|
2019-01-21 17:08:12 -05:00 |
|
Matthew Brown
|
99569e8ee3
|
Fix #1173 - transform const X = true to a true type
|
2019-01-21 16:55:50 -05:00 |
|
Matthew Brown
|
930a8b2689
|
Fix #1225 - ignore classes using patterns
|
2019-01-21 16:48:12 -05:00 |
|
Matthew Brown
|
075446e7df
|
Fix #1223 - MissingClosureParamType should use all known suppressed issues
|
2019-01-21 12:36:17 -05:00 |
|
Andrii Dembitskyi
|
9b6b79728e
|
Fixes #1222 - incorrect config value used for allowStringToStandInForClass
Please make attention, that `allowCoercionFromStringToClassConst` are mentioned in docs, but not used now in config
|
2019-01-21 09:00:57 -05:00 |
|
Matthew Brown
|
5eb0bb8126
|
Make foreach var annotation use more cautious
|
2019-01-20 11:49:13 -05:00 |
|
Matthew Brown
|
af19ca4bd5
|
Only worry if the alias is different to the intended one
|
2019-01-20 11:29:25 -05:00 |
|
Matthew Brown
|
03c5823051
|
Fix #1217 - allow protected property to be se by parent constructor
|
2019-01-20 11:20:39 -05:00 |
|
Matthew Brown
|
60088b1189
|
Fix #1215 - prevent bad code from crashing Psalm
|
2019-01-20 11:10:12 -05:00 |
|
Matthew Brown
|
6fe9e525df
|
Fix #1219 - allow generation of intersections inside class-string
|
2019-01-20 10:39:08 -05:00 |
|
Matthew Brown
|
681391f970
|
Fix #1220 - improve constant resolution
|
2019-01-20 09:52:26 -05:00 |
|
Matthew Brown
|
0ac7d106a3
|
Fix #1221 - no TypeDoesNotContainType in catch or finally
|
2019-01-20 09:27:46 -05:00 |
|
Matthew Brown
|
7fa05abb5a
|
Remove unused vars
|
2019-01-20 01:52:58 -05:00 |
|
Matthew Brown
|
7dfcefd35d
|
Support intersections on LHS of static calls
|
2019-01-19 23:25:23 -05:00 |
|
Matthew Brown
|
394d6509c6
|
Restrict class-string types to named objects (and intersections)
|
2019-01-19 22:46:06 -05:00 |
|
Matthew Brown
|
1c17d2e2f2
|
Extract template params from string/array callables cc @weirdan
The culmination of what you were getting at
|
2019-01-19 20:18:45 -05:00 |
|
Matthew Brown
|
590bea305d
|
Fix #1218 - find issues with bad callables
|
2019-01-19 19:49:58 -05:00 |
|
Matthew Brown
|
e3df0ec5e2
|
Apply same rules that Hack uses for bottom types
|
2019-01-19 18:51:18 -05:00 |
|
Matthew Brown
|
1d2a0f8b39
|
Add more robust template constraint checks
|
2019-01-19 18:35:53 -05:00 |
|
Matthew Brown
|
ed68cb973d
|
Fix #1109 - add bad usort protection
|
2019-01-19 18:11:49 -05:00 |
|
Matthew Brown
|
e28bf1a29b
|
Fix null ref
|
2019-01-19 16:01:43 -05:00 |
|
Matthew Brown
|
44b51cdf8e
|
Support @inherits and @extends keywords too
|
2019-01-19 15:12:13 -05:00 |
|
Matthew Brown
|
9c5ef33997
|
Allow @property to override parent class property type
Fixes #1214
|
2019-01-19 14:26:27 -05:00 |
|
Matthew Brown
|
ee2b06ac43
|
Add initial support for @param-out
|
2019-01-19 13:32:43 -05:00 |
|
Matthew Brown
|
e2db6a77a6
|
Allow mixed param overrides for @inheritdoc
|
2019-01-19 12:46:39 -05:00 |
|
Matthew Brown
|
4f3d7fca0d
|
Fix issue where @inheritdoc could override local param types
|
2019-01-19 12:42:46 -05:00 |
|
Matthew Brown
|
11dc78fd76
|
Don’t override local docblocks when inheritdoc is present
|
2019-01-19 12:30:14 -05:00 |
|
Matthew Brown
|
bf13ff2e7d
|
Detect bad interface types
|
2019-01-19 12:19:51 -05:00 |
|
Matthew Brown
|
9bd5f06c7d
|
Allow inheritdoc to propogate param types
|
2019-01-19 12:19:07 -05:00 |
|
Matthew Brown
|
545c7e3cba
|
Fix #1211 - allow docblocks to override foreach type earlier
|
2019-01-19 11:31:51 -05:00 |
|
Matthew Brown
|
94af3b6c51
|
Add automatic inheritance to properties
Fixes #1210
|
2019-01-19 10:09:26 -05:00 |
|
Matthew Brown
|
b313971935
|
Remove unused code
|
2019-01-18 11:57:52 -05:00 |
|
Matthew Brown
|
eddaaea01b
|
Add support for static @method annotations
|
2019-01-18 11:37:52 -05:00 |
|
Matthew Brown
|
22ec7e537c
|
Fix #1208 - respect inheritance when combining in boolean operation
Also fixes issue reconciling inside trait
|
2019-01-18 10:08:16 -05:00 |
|
Matthew Brown
|
4ec7903e8b
|
Fix #390 - add support for object{foo:int, bar:string} annotation
|
2019-01-18 00:56:24 -05:00 |
|
Bruce Weirdan
|
0358719037
|
Added DateTime::createFromImmutable()
It's available in PHP 7.3, see [FR 74668](https://bugs.php.net/bug.php?id=74668) and php/php-src#2484
|
2019-01-17 18:53:57 -05:00 |
|
Brown
|
d78c70d521
|
Add better messaging for MixedMethodCall
|
2019-01-17 14:04:40 -05:00 |
|
Brown
|
d068f1535d
|
Fix issue with implemented class interface in subclass
|
2019-01-16 15:08:11 -05:00 |
|
Brown
|
1ac51fcea6
|
Allow binding params of extended templates
Fixes #1207
|
2019-01-16 12:07:30 -05:00 |
|
Brown
|
ee366015f7
|
Fix #1205 - allow traits to override inheritance checks
|
2019-01-16 10:59:06 -05:00 |
|
Matthew Brown
|
ee97c9dbaf
|
Add support for T of Foo
|
2019-01-16 09:23:25 -05:00 |
|
Roland Franssen
|
9a827c48ae
|
Tweak error message
|
2019-01-16 09:02:45 -05:00 |
|
Matthew Brown
|
90dc39c296
|
Don’t preserve old storages when receiving worker data
This bug was found when running Psalm in threaded execution mode
|
2019-01-15 23:24:29 -05:00 |
|
Matthew Brown
|
37aef674a1
|
Remove unused library
|
2019-01-15 22:17:45 -05:00 |
|
Matthew Brown
|
c43734f3ab
|
Don’t localise PropertyNotSetInConstructor issues
|
2019-01-15 21:34:18 -05:00 |
|
Brown
|
8d61cb4816
|
Fix #1200 - no fatal error in array_map when not checking functions
|
2019-01-15 17:53:23 -05:00 |
|
Brown
|
f5a81249e0
|
Fix #1202 - don’t allow undefined constants in enums
|
2019-01-15 11:31:13 -05:00 |
|
Brown
|
773be5ceb2
|
Remove blank line
|
2019-01-14 17:13:55 -05:00 |
|
Brown
|
496bd97714
|
Make sure we’re not flipping the wrong constraint
|
2019-01-14 16:07:57 -05:00 |
|
Brown
|
ee004a91ac
|
Fix #1068 by restricting template types to passed called closure returns
|
2019-01-14 15:50:25 -05:00 |
|
Matthew Brown
|
3ca5ec9281
|
Fix templated class conversion allowing child class
|
2019-01-13 14:40:21 -05:00 |
|
Matthew Brown
|
2c55e7aabb
|
Support template-typeof in class again
|
2019-01-13 14:29:04 -05:00 |
|
Matthew Brown
|
1de0e35545
|
Add checks for Psalm reserved words in assertions
|
2019-01-13 14:06:30 -05:00 |
|
Matthew Brown
|
94aa51ba6d
|
abstract trait method return type override should not be MethodSignatureMistmatch
|
2019-01-13 13:27:07 -05:00 |
|
Matthew Brown
|
bd9f2ec546
|
Add separate issue type for undefined interface method
|
2019-01-13 13:07:53 -05:00 |
|
Matthew Brown
|
0cca0d76cb
|
Fix #813 - allow constant array to be refined with isset
|
2019-01-13 11:54:39 -05:00 |
|
Matthew Brown
|
6d462fcb64
|
Fix #909 - support private trait aliasing
|
2019-01-13 10:19:27 -05:00 |
|
Matthew Brown
|
7e0928d775
|
Fix #833 - warn on some invalid operands
|
2019-01-13 10:15:15 -05:00 |
|
Matthew Brown
|
e9b7c9e08b
|
Fix #1129 - mock class method arguments should be evaluated
|
2019-01-13 09:49:34 -05:00 |
|
Matthew Brown
|
9ef1ce1535
|
Make @template-extends more robust
|
2019-01-12 18:18:23 -05:00 |
|
Matthew Brown
|
a7005014c2
|
Fix #987 - namespace asserted classes
|
2019-01-12 11:40:19 -05:00 |
|
Matthew Brown
|
b43a6a31f1
|
Enable casing plugin and fix issues it found
|
2019-01-12 10:52:23 -05:00 |
|
Matthew Brown
|
a49b5af3e9
|
Refactor the method call analyzer a little
|
2019-01-12 09:13:54 -05:00 |
|
Matthew Brown
|
cfcb65aaac
|
Fix #1113 - treat class_alias as always global
|
2019-01-12 07:28:01 -05:00 |
|
Brown
|
2195caaeae
|
Check type var
|
2019-01-11 17:28:57 -05:00 |
|
Brown
|
1fddc19172
|
Add initial support for property types
|
2019-01-11 17:21:50 -05:00 |
|
Brown
|
cdbc63c99a
|
Fix #1195 - check assignments in byref
|
2019-01-11 14:57:21 -05:00 |
|
Brown
|
bf327f4933
|
Prevent echo removing all types
|
2019-01-11 14:46:03 -05:00 |
|
Brown
|
eb7fc96ac1
|
Make param type checks use template_extends too
|
2019-01-11 11:18:51 -05:00 |
|
Brown
|
4ec8d1a8dd
|
Fix #1198 - add support for template param extends checks
|
2019-01-11 10:55:44 -05:00 |
|
Matthew Brown
|
d891c068b4
|
Fix #1197 - add support for method templating without override
|
2019-01-11 09:35:32 -05:00 |
|
Matthew Brown
|
ff958ef643
|
Fix inheritance of method params
|
2019-01-11 08:54:10 -05:00 |
|
Brown
|
9947bc56f6
|
Fix Psalm errors and improve error output
|
2019-01-10 19:18:02 -05:00 |
|
Brown
|
0d28d5d82b
|
Add check for @template-extends return types
|
2019-01-10 19:01:30 -05:00 |
|
Brown
|
ddc2637fc5
|
Add support for @template-extends Foo<SomeClass>
|
2019-01-10 17:58:32 -05:00 |
|
Brown
|
f108badd03
|
Fix #1067 - add support for @template-extends
|
2019-01-10 16:59:44 -05:00 |
|
Brown
|
3533339884
|
Remove nullable arg
|
2019-01-10 13:07:22 -05:00 |
|
Brown
|
b8d822cd26
|
Prohibit leaking of template params across class boundaries
|
2019-01-10 12:13:49 -05:00 |
|
Brown
|
1e20cbfa79
|
Prevent template params leaking when extended
|
2019-01-10 10:27:40 -05:00 |
|
Matthew Brown
|
e23d5a9e79
|
Only use one thread for language server if there’s no pcntl extension
|
2019-01-10 00:15:59 -05:00 |
|
Matthew Brown
|
5936415b09
|
Exit if trying to use --threads without pcntl extension
|
2019-01-10 00:14:40 -05:00 |
|
Matthew Brown
|
27687244f0
|
Normalise baseline file slashes
Fixes #1192
|
2019-01-10 00:10:16 -05:00 |
|
Bruce Weirdan
|
32377d6751
|
fixed password_hash signature
fixes vimeo/psalm#1188
|
2019-01-09 12:32:06 -05:00 |
|
Brown
|
d1654b9bf4
|
Ignore @return with a newline after @return
|
2019-01-09 11:51:29 -05:00 |
|
Matthew Brown
|
d3324b42fa
|
Remove slashes from is_a and is_subclass_of string classes, and scan them
|
2019-01-09 08:49:02 -05:00 |
|
Matthew Brown
|
01e41951e7
|
Support backslash in is_a/is_subclass_of string name
|
2019-01-09 08:42:27 -05:00 |
|
Matthew Brown
|
11bfaaa5f7
|
Prevent crash in constructor checks
|
2019-01-09 08:35:53 -05:00 |
|
Matthew Brown
|
6e585008f2
|
Fix #1183 - add hook for class analysis
|
2019-01-09 08:28:12 -05:00 |
|
Matthew Brown
|
5b2d796c30
|
Fix up callmap
|
2019-01-08 21:57:22 -05:00 |
|
Matthew Brown
|
dc2f4929d4
|
Add changes from PHPStan, thanks @voku
|
2019-01-08 21:44:50 -05:00 |
|
Matthew Brown
|
2f30132d94
|
Add Phan updates to callmap
|
2019-01-08 21:19:11 -05:00 |
|
Brown
|
2201380c52
|
Fix type transformation issues in templated class strings
|
2019-01-08 17:34:58 -05:00 |
|
Brown
|
43bbd739a2
|
Fix generic param fetches
|
2019-01-08 16:55:53 -05:00 |
|
Brown
|
546919a515
|
Allow reconciliation with nullable type string
|
2019-01-08 15:26:54 -05:00 |
|
Brown
|
73770c085e
|
Prevent crash when @template as type is missing
|
2019-01-08 15:11:57 -05:00 |
|
Brown
|
f3133aac84
|
Prevent more crashes
|
2019-01-08 14:50:45 -05:00 |
|
Brown
|
8e26d639de
|
Fix #1181 - improve handling of complicated conditionals
|
2019-01-08 12:33:44 -05:00 |
|
Matthew Brown
|
b6865b130b
|
Catch exception in more places
|
2019-01-08 09:57:14 -05:00 |
|
Matthew Brown
|
a89a201c71
|
Fix #1180 - array key maths was wrong
|
2019-01-08 09:56:54 -05:00 |
|
Matthew Brown
|
dfba6e0dec
|
Fix #1181 - prevent allowed memory errors with large conditionals
|
2019-01-08 09:19:33 -05:00 |
|
Matthew Brown
|
fb83da94bd
|
Exit early when encountering complicated conditionals
|
2019-01-08 09:02:41 -05:00 |
|
Matthew Brown
|
370874d9b6
|
Make diff map more verbose so it can serve as a list of safe zones
Outside them all issues must be removed
|
2019-01-08 00:54:48 -05:00 |
|
Matthew Brown
|
a2ee2f12a4
|
Allow scalar to contain numeric
|
2019-01-07 21:52:58 -05:00 |
|
Brown
|
9ec8690825
|
Fix #1177 - prevent redundant condition leaking
|
2019-01-07 18:22:42 -05:00 |
|
Brown
|
be337a03cf
|
Simplify output of method call complaints
|
2019-01-07 16:38:37 -05:00 |
|
Brown
|
5d5fbb1e9c
|
Only add linked directories
|
2019-01-07 15:49:05 -05:00 |
|
Brown
|
14f456e160
|
Fix #1176 - always evaluate assignments in unknown function calls
|
2019-01-07 12:24:44 -05:00 |
|
Brown
|
4d959626d5
|
Fix #1175 - support trait method visibility changes
|
2019-01-07 11:53:22 -05:00 |
|
Matthew Brown
|
195cb289ed
|
Add float-checking plugin, and support for custom plugin issues
|
2019-01-07 08:38:56 -05:00 |
|
Matthew Brown
|
bcbede07ba
|
Fix issue with do analysis while loops
|
2019-01-07 01:15:30 -05:00 |
|
Matthew Brown
|
36a1fe07da
|
Allow plugins to have more than one class
Ref #536
|
2019-01-06 17:32:19 -05:00 |
|
Matthew Brown
|
5691c37ece
|
Use reflection to figure out where dupe function was defined
|
2019-01-06 17:24:46 -05:00 |
|
Matthew Brown
|
a6357b413c
|
Don’t complain when rescanning file with function in
|
2019-01-06 17:03:13 -05:00 |
|
Matthew Brown
|
214fd7d461
|
Add DuplicateFunction issue
Fixes #49
|
2019-01-06 16:40:44 -05:00 |
|
Matthew Brown
|
43b4c1c0a3
|
Fix #1168 - better return type for range
|
2019-01-06 13:02:46 -05:00 |
|
Matthew Brown
|
9c9e57cf6b
|
Fix #1153 - ignore redundant conditions in finally block
|
2019-01-06 12:39:18 -05:00 |
|
Matthew Brown
|
b19dd25881
|
Fix #742 - infer template type from closure
|
2019-01-06 12:16:09 -05:00 |
|
Matthew Brown
|
cc26ce682e
|
Don’t crash when encountering empty @throws
|
2019-01-06 10:01:35 -05:00 |
|
Matthew Brown
|
90e1648d5b
|
Fix #979 - be more conservative about method_exists handling
|
2019-01-06 09:36:25 -05:00 |
|
Matthew Brown
|
8783a33a3f
|
Fix #1136 - support __halt_compiler
|
2019-01-06 09:18:41 -05:00 |
|
Matthew Brown
|
07b29e4a2f
|
Fix #1141 - add symlinked symlinked repos to directory list
|
2019-01-06 09:14:35 -05:00 |
|
Matthew Brown
|
e3f2cee2d6
|
Fix thing that doesn’t work quite right
|
2019-01-05 17:10:29 -05:00 |
|
Matthew Brown
|
4d6031b39b
|
Fix #1172 - treat is_subclass_of similarly to is_a
|
2019-01-05 16:58:34 -05:00 |
|
Matthew Brown
|
3a405f4951
|
Remove public from const
|
2019-01-05 16:34:09 -05:00 |
|
Matthew Brown
|
c7723df8ff
|
Allow gettype vars to be compared to strings
|
2019-01-05 16:23:18 -05:00 |
|
Matthew Brown
|
9e2dacc9e4
|
Remove blank lines
|
2019-01-05 15:54:21 -05:00 |
|
Matthew Brown
|
355ed831e1
|
Add support for get_parent_class() with arg
|
2019-01-05 15:49:56 -05:00 |
|
Matthew Brown
|
58acaefe70
|
Add support for get_parent_class() with no args
|
2019-01-05 15:49:56 -05:00 |
|
Tyson Andre
|
d85c9d8aa2
|
Remove an unused closure use variable
This looks like debugging code added in
37dedee7b6
|
2019-01-05 15:48:48 -05:00 |
|
Matthew Brown
|
8024b4e275
|
Add support for $a::class
|
2019-01-05 15:12:42 -05:00 |
|
Matthew Brown
|
f5378bdca8
|
Improve function call resolution
|
2019-01-05 14:50:11 -05:00 |
|
Matthew Brown
|
632f613ba0
|
Numeric is not expressible in PHP
|
2019-01-05 13:17:44 -05:00 |
|
Matthew Brown
|
bf8f76671b
|
Don’t crash when suppressing UndefinedClass with bad params
|
2019-01-05 12:59:12 -05:00 |
|
Matthew Brown
|
8dbee1c1d9
|
Allow iterable to be output in PHP 7.1 too
|
2019-01-05 11:05:26 -05:00 |
|
Matthew Brown
|
6f1d56a80f
|
Upcast iterables to traversables when used in a templated class string
|
2019-01-05 10:32:39 -05:00 |
|
Matthew Brown
|
9f16ab9cb5
|
Fix issue where documented self param confuses
|
2019-01-05 08:45:12 -05:00 |
|
ADmad
|
407e4473f7
|
Improve callmap possibly false value.
Similar to #1147.
|
2019-01-05 08:28:13 -05:00 |
|
Matthew Brown
|
9d8c2792e2
|
Add array-key type and improve general type handling
Fixes #1144
|
2019-01-05 00:15:53 -05:00 |
|
Matthew Brown
|
2dc3d9651f
|
Separate iterable into its own type
Fixes #1151
|
2019-01-04 14:54:40 -05:00 |
|