1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-26 07:40:35 +01:00
Commit Graph

8792 Commits

Author SHA1 Message Date
Matthew Brown
952484c64d Add workaround for pcre.jit bug 2019-11-30 08:26:26 -05:00
Matthew Brown
0fa654e011 Suppress issue 2019-11-30 01:30:55 -05:00
Matthew Brown
d7c3ce2fa8 Fix test to be more accomodating 2019-11-30 01:28:02 -05:00
Matthew Brown
6ff06a4b32 Don’t bypass generator second arg when checking variance 2019-11-30 01:27:27 -05:00
Matthew Brown
8f8301b6de Align Generator covariance with PHPStan 2019-11-30 01:11:50 -05:00
Matthew Brown
d134482ee7 Fix style 2019-11-30 01:06:48 -05:00
Matthew Brown
1b9273c8c0 Make other Generator params covariant 2019-11-30 01:02:51 -05:00
Matthew Brown
baef67e0d8 Fix evaluation order of covariant template params before invariant ones 2019-11-30 01:02:23 -05:00
Matthew Brown
21f36c3dbd Add slashes 2019-11-30 00:49:06 -05:00
Matthew Brown
e777f5227d Don’t run classloader test in 7.1 2019-11-30 00:46:19 -05:00
Matthew Brown
c65540a323 Fix some templating issues in CoreGenericClasses 2019-11-30 00:27:07 -05:00
Bruce Weirdan
9027bc6190 Added SuicidalAutoloader test (#2399)
The idea behind this is that Psalm should not use project autoloader for
its own things. So if we have a project with autoloader and no code,
then any project autoloader hit means Psalm failed to load something
itself.

Right now it highlights several issues in CoreGenericClasses stub:
- usage of `callback` instead of `callable`
- `@property-read` not resolving template parameters
2019-11-30 00:09:07 -05:00
Jeroen De Dauw
4b597d4ef9 Fix typo: mosts costs -> most costs (#2394) 2019-11-30 00:07:17 -05:00
Matthew Brown
a179076de5 Break apart callabletest 2019-11-29 23:46:21 -05:00
Matthew Brown
ccd6718582 Fix templating of objects with properties 2019-11-29 22:57:45 -05:00
Matthew Brown
2383945fb9 Support __METHOD__ and __FUNCTION__ magic constants better 2019-11-29 22:47:20 -05:00
Matthew Brown
227ea2042a Fix foreach test 2019-11-29 11:29:22 -05:00
Matthew Brown
45bf8eee00 Add test that should always work 2019-11-29 11:25:29 -05:00
Matthew Brown
1e3ecb5fd0 Fix #2387 - ensure docblock return types are checked 2019-11-29 11:20:37 -05:00
Matthew Brown
6a98108deb Apply @ShiraNai7’s fix for null const values 2019-11-29 10:12:46 -05:00
Pavel Batečko
dc78e9c57b Update password function types for PHP 7.4 (#2396)
* Support NULL predefined constants

* Fix #2395 - update password_hash() and password_needs_rehash() types for PHP 7.4

* Change $fq_const_name check so it still uses isset
2019-11-29 09:30:01 -05:00
Matthew Brown
a4e18f9b5e Fix #2386 - make generator params invariant 2019-11-29 01:44:31 -05:00
Alfred Bez
e2d1eca2b4 fixed RarArchive signatures (#2385) 2019-11-29 01:22:36 -05:00
Bruce Weirdan
377e47c8bd Added WeakReference support (#2389) 2019-11-29 01:21:38 -05:00
Bruce Weirdan
33142e7637 Use unalised trait name when importing aliased trait (#2393)
Fixes vimeo/psalm#2392
Refs vimeo/psalm#2278
2019-11-29 01:21:00 -05:00
Matthew Brown
4052e6dfac Allow isset to check for property initialisation
Ref #2382
2019-11-28 09:12:17 -05:00
Valentin Udaltsov
4a742f9940 Added array_key_first and array_key_last stubs (#2381) 2019-11-27 10:59:12 -05:00
Matthew Brown
113bf921f6 Add support for arrow function inference 2019-11-27 10:12:59 -05:00
Matthew Brown
a154191922 Fix #2380 - prevent string docblock for callable param 2019-11-27 09:18:47 -05:00
Matthew Brown
4334ddcaa3 Fix style 2019-11-27 02:11:18 -05:00
Matthew Brown
3f2d57c7a3 Fix #2379 - support spread array RFC 2019-11-27 02:07:17 -05:00
Matthew Brown
f7ec5c5003 Make sure 7.4 with high deps works 2019-11-27 01:14:09 -05:00
Matthew Brown
1b850c4026 Skip descendants if required class in && expr cannot be found
Fixes #2375
2019-11-27 00:44:41 -05:00
Matthew Brown
c75f7dc4d5 Fix #2339 - add support for null coalescing operator 2019-11-27 00:34:23 -05:00
Matthew Brown
d1c4c85f97 Support covariant return types & contravariant param types
Fixes #2102 and #2264
2019-11-27 00:19:36 -05:00
Matthew Brown
2c08321603 Ignore union types for now 2019-11-27 00:00:46 -05:00
Matthew Brown
d1fbd1fa26 Add working arrow-functions implementation 2019-11-26 23:52:26 -05:00
Brown
90cb3f4472 Speed up accessing node data
Ref #1837
2019-11-26 17:48:47 -05:00
Brown
f97a8f0d5b Use more accurate way to determine list size 2019-11-26 16:34:19 -05:00
Pavel Batečko
4e594e0a65 Improve array function list handling (#2377)
* array_column() returns a list unless the 3rd arg is passed

* array_pad() return type provider

* array_chunk() return type provider

* array_map() preserve list types
2019-11-26 14:48:49 -05:00
Brown
2f02da62c1 Add note to future self 2019-11-26 14:47:07 -05:00
Lars Strojny
9d32273029 Fix typo in InfiniteIterator type definition (#2378) 2019-11-26 14:20:40 -05:00
Brown
7ccd73b5e3 Fix redundant condition 2019-11-26 12:32:07 -05:00
Brown
842b2a53df Refine lists with object-like array types
Fixes #2357
2019-11-26 12:22:28 -05:00
Brown
532e2d64be Allow using covariant template in mutation-free context 2019-11-26 11:35:03 -05:00
Brown
a91d2ef572 Add space 2019-11-25 16:55:44 -05:00
Brown
736ccd84cd Allow more generic iterable when yielding
Fixes #2353
2019-11-25 16:12:44 -05:00
Brown
0f94bebe4c Fix dupe key 2019-11-25 16:00:16 -05:00
Brown
5626058eff Fix #2374 - refine error-suppressed output a little better 2019-11-25 15:38:54 -05:00
Brown
1f07ea7ee7 Tighten up Psalm’s inference 2019-11-25 15:20:31 -05:00