1
0
mirror of https://github.com/danog/psalm.git synced 2025-01-05 20:48:45 +01:00
Commit Graph

4430 Commits

Author SHA1 Message Date
Matthew Brown
2c48d42904 Allow destructuring of callable array
Fixes #2653
2020-01-17 10:02:58 -05:00
Matthew Brown
471d7610f0 Fix #2644 - improve type inference of autoloaded constants 2020-01-17 09:52:43 -05:00
Matthew Brown
24e1d5446c Fix #2642 - merging two explicit lists is still a list 2020-01-17 09:31:08 -05:00
Matthew Brown
adf230e873 Fix #2636 - allow non-empty-list in assert annotation 2020-01-17 09:06:34 -05:00
Alexander Wühr
f9560009ca Allow false as \PDO::fetch return type (#2647) 2020-01-17 08:48:08 -05:00
Matthew Brown
c50fa27025 Identify trait method access level violations as less serious 2020-01-17 00:28:08 -05:00
Matthew Brown
be6cd0f8c6 Fix generation of files in non-psr directory 2020-01-16 23:24:53 -05:00
Matthew Brown
257ebfd205 Improve trait method mismatch failure rules 2020-01-16 22:36:30 -05:00
Bruce Weirdan
17857163fc Modular config files (#2635)
This change introduces an option to have the configuration split across
several files using standard XInclude tags. This may be useful for more
complex configs, or to include auto-generated parts into a manually
written config file.
2020-01-16 15:57:52 -05:00
Tyson Andre
6612bb74a1 Use floor() instead of round() for long progress percentage (#2634)
PHPUnit and many other applications use floor.
Otherwise, the second-last lines would show 100% despite not being
complete.

```
\sprintf(
    ' %' . $this->numTestsWidth . 'd / %' .
    $this->numTestsWidth . 'd (%3s%%)',
    $this->numTestsRun,
    $this->numTests,
    \floor(($this->numTestsRun / $this->numTests) * 100)
)
```
2020-01-16 15:57:09 -05:00
Alfred Bez
619ced135b fixed RarArchive signatures (#2641) 2020-01-16 11:01:14 -05:00
Pavel Batečko
1b0eba74fd Allow NULL $contextnode in DOMXPath::query() (again) (#2637) 2020-01-16 08:35:36 -05:00
Brown
d434f7fb9d Add list identification for late-resolved constants
Fixes #2624
2020-01-15 11:54:01 -05:00
Brown
1b551b805b Fix #2627 - infer arrow function effects for array_filter 2020-01-15 11:40:49 -05:00
Brown
c07fd13f2b Fix #2623 - prevent crash when combining class strings in constants 2020-01-15 11:26:58 -05:00
Matthew Brown
389af1bfc7 Fix #2618 setting list param from docblock 2020-01-14 22:46:19 -05:00
Matthew Brown
4a03c4aedd Fix impossible isset checks 2020-01-14 21:54:02 -05:00
Matthew Brown
c3edbdbc19 Allow checking $_SESSION for null without altering type 2020-01-14 21:51:04 -05:00
Matthew Brown
1202ba45ef
Fix blank line 2020-01-14 18:51:46 -05:00
Brown
df8f2085f0 Change constant type to be more forgiving 2020-01-14 18:39:15 -05:00
Brown
de7a870509 Add better mixed check 2020-01-14 18:38:02 -05:00
Brown
0f6b61d62d Clone isset type before contradicting 2020-01-14 18:28:32 -05:00
Brown
3fd70a9c88 Only set if non-null 2020-01-14 17:03:58 -05:00
Brown
adc658901a Improve inference of constant() calls 2020-01-14 16:56:09 -05:00
orklah
b09869b7c6 callmap changes (#2612)
* set_error_handler return the same type as its param

* a constant can only have scalars, array of scalars or null

* a constant can only have scalars, array of scalars or null
2020-01-14 16:55:25 -05:00
Brown
1ccababcb7 Track list-ness of constant arrays
Fixes #2621
2020-01-14 12:13:41 -05:00
Brown
c79a8ecbc2 Fix dumb 2020-01-14 10:55:07 -05:00
Brown
fcc7d896a0 Commit actual fix 2020-01-14 10:53:54 -05:00
Matthew Brown
42073a800a Remove unevaluated code 2020-01-14 00:55:56 -05:00
Matthew Brown
e1daf26202 Improve support for null coalesce checks 2020-01-14 00:53:38 -05:00
Matthew Brown
b0073d4558 Fix #2614 - prevent isset($string) 2020-01-13 21:27:09 -05:00
Matthew Brown
ef3c2d30c9 Fix #2613 - allow docblock-defined object-like as non-empty-array 2020-01-13 21:05:30 -05:00
Brown
5d15ef062e Fix phpcs 2020-01-13 17:28:00 -05:00
Brown
6c771e5dd3 Prevent crashes under PHP 7.3 on macs in Language server mode 2020-01-13 16:50:09 -05:00
Brown
eb7c3dcc11 Fix #2611 - fix combination of inferred closure return types 2020-01-13 10:23:58 -05:00
Tyson Andre
7a65eb1da9 Fix required parameter after optional in Psalm (#2609)
Psalm supports php 7.1 at minimum, so this is no longer necessary.
2020-01-12 12:46:08 -05:00
Тальгат Хайруллов
39a822759d #2579 TooManyArguments was triggered if the variadic function declared at the autoloader file. Fixed. (#2580) 2020-01-12 11:33:38 -05:00
Mark A. Hershberger
fbc2c21c9b bug: #2103 -- throw error if directories are given instead of file (#2605)
* bug: #2103 -- throw error if directories are given instead of file

* use global is_dir
2020-01-12 10:53:12 -05:00
Pavel Batečko
87debfe954 Support suppressing all issues with @psalm-suppress all (#2584)
* Support suppressing all issues using @psalm-suppress all

* Document @psalm-suppress all
2020-01-12 10:38:32 -05:00
SignpostMarv
9b2ceba2db removing trailing comma in function call, not detectable by php-cs-fixer re: FriendsOfPHP/PHP-CS-Fixer#4135 (#2597) 2020-01-11 16:00:38 -05:00
Matthew Brown
39f0def7bf Add null check 2020-01-11 15:59:28 -05:00
Matthew Brown
131fb97663 Fix #2594 - forbid isset check on null 2020-01-11 15:58:40 -05:00
Matthew Brown
7b887efc2c Fix #2547 - use better conditional check 2020-01-11 12:33:58 -05:00
Matthew Brown
bd846123ce Fix #2560 - handle special case of array_filter on single-element array 2020-01-11 11:54:29 -05:00
Matthew Brown
40406c7ff0 Fix #2576 - remove literal key values if array_filter has no args 2020-01-11 11:48:22 -05:00
Matthew Brown
85966d8a21 Fix #2577 - fix list cast to array 2020-01-11 11:42:09 -05:00
Matthew Brown
2ae85f7c8b Fix #2593 - don’t crash with bad @param-out annotation 2020-01-11 10:47:31 -05:00
Matthew Brown
1b7b71f2ca Fix #2591 - always remove changed var from parent clauses
Even when there are no child clauses due to an assertion
2020-01-10 23:46:45 -05:00
Brown
5ddcab1003 Fix subtraction of string from numeric 2020-01-10 18:05:45 -05:00
Brown
df8e3845e5 Fix #2590 - allow null argument for DateTime when no second arg passed 2020-01-10 15:53:15 -05:00