Matthew Brown
872365f444
Fix #2539 - use unaliased parent class name
2020-01-01 17:23:13 -05:00
Matthew Brown
086d141f5c
Fix #2537 - allow complex intersection templates to be preserved
2020-01-01 13:51:54 -05:00
Matthew Brown
4021d673bd
Fix #2536 - grab binary op left assertions after analysis
2020-01-01 12:45:24 -05:00
Matthew Brown
d7fb64bbb7
Fix #2349 - use function suppressed issues
2019-12-31 09:16:49 -05:00
Matthew Brown
16b8edd583
Fix #2409 - use more robust assertion parsing
2019-12-31 09:10:14 -05:00
Matthew Brown
5bd9b988fb
Fix #2494 - don’t use extended name for anonymous classes
2019-12-31 08:46:52 -05:00
Matthew Brown
87fec3e6fe
Fix #2505 - don’t attempt to analyse classes that weren‘t properly scanned
2019-12-31 08:04:51 -05:00
Matthew Brown
02fd1659ef
Ignore serialize/unserialize methods
...
Fixes #2511
2019-12-31 07:56:35 -05:00
Matthew Brown
53a2f77d00
Add better return type provider for PDO statement
...
Fixes #2529
2019-12-30 11:34:24 -05:00
Matthew Brown
366e2d30a3
Improve assertions support a bit more
2019-12-30 10:48:50 -05:00
Matthew Brown
19faa31865
Allow assertions on nested properties
2019-12-30 10:01:31 -05:00
Matthew Brown
023c4bcef0
Fix #2532 - fix templating inside class method when calling templated method
2019-12-30 07:25:36 -05:00
Matthew Brown
2b88261ecd
Fix templated assertion cc @vasily-kartashov
...
This is a good reason for you to skip 3.8.1
2019-12-29 11:57:54 -05:00
Bruce Weirdan
7d3dd47efa
Added support for preg_grep ( #2523 )
2019-12-29 11:05:08 -05:00
Matthew Brown
b375ebf06f
Fix test
2019-12-29 10:29:03 -05:00
Matthew Brown
26876b9a13
array_push shouldn’t change list type
2019-12-29 10:20:44 -05:00
Matthew Brown
d3fb0181cb
Fix #2527 - no crash when template cannot be resolved
2019-12-29 08:45:42 -05:00
Matthew Brown
0c7851ae21
Fix #2526 - always check for array assignment in assignop
2019-12-29 08:36:46 -05:00
Matthew Brown
55c2f7faa2
Fix #2508 - don’t replace templated types with generic ones inside own function
2019-12-28 18:38:02 -05:00
Matthew Brown
ce9435da19
Fix #2521 - use correct context class when analysing trait
2019-12-28 15:56:26 -05:00
Bruce Weirdan
4110ec351b
Make travis green again ( #2518 )
...
* Bumped phpspec/prophecy version to prevent 7.4 deprecations
* Fix DOMDocument::$config type
This property was documented as containing DOMConfiguration object, but
in fact always returned `null` (see [php source](ee80567a83/ext/dom/document.c (L542)
)).
DOMConfiguration class is removed in PHP 8.
* Dropped unused use
* Allow to set PHP 8.0 as current version
* Fix CallMap issues for PHP 8.0
- Use both major and minor version to load deltas
- Don't load non-existent deltas
- Stop at lowest possible delta
2019-12-27 19:06:09 -05:00
Matthew Brown
982fe627e0
Fix #2515 - allow chained assertions on @psalm-mutation-free methods
2019-12-27 16:44:55 -05:00
Matthew Brown
4a28525275
Fix removal of traversable from iterable
...
Fixes #2509
2019-12-27 13:01:44 -05:00
Matthew Brown
068afa09d3
Add very basic implementation for class-string-map
...
Fixes #1969
2019-12-27 12:49:28 -05:00
Matthew Brown
b78f273ccf
Improve handling of template params a smidge
2019-12-27 11:49:44 -05:00
Matthew Brown
2f2cd85a6a
Identify invalid static property array assignment
2019-12-27 10:34:51 -05:00
Valentin Udaltsov
006f788d6a
Added array_fill_keys support ( #2512 )
...
* Added array_fill_keys support
* Removed unnecessary array_fill_keys phpdoc
2019-12-27 13:30:42 +00:00
Matthew Brown
141bfd313f
Improve handling of assignments in arrays
2019-12-22 12:36:16 +00:00
Matthew Brown
8fc3c3b8cd
Improve removing types from callable
2019-12-22 10:29:00 +00:00
Matthew Brown
4c8730c5a3
Improve handling of unset array, ensuring that keys don’t persevere
2019-12-22 01:42:39 +00:00
Matthew Brown
59aeb6b6c3
Fix #2490 - allow overriding renamed trait methods in subclass
2019-12-20 20:11:27 +00:00
Matthew Brown
8c1638efc5
Fix tests once more
2019-12-20 19:37:36 +00:00
Matthew Brown
3d03da271d
Fix tests to give more accurate locations
2019-12-20 18:18:26 +00:00
Matthew Brown
8bba5221b2
Remove dumb test
2019-12-20 18:09:26 +00:00
Matthew Brown
a5434aabfe
Fix #2491 - report trait issues at the most local place
2019-12-20 17:57:31 +00:00
Matthew Brown
a4191171bf
Fix #2483 - treat intersecting PHPDocs from interfaces better
2019-12-20 01:42:57 +00:00
Matthew Brown
d7b99148be
Add support for JUnit report type
...
Fixes #2485
2019-12-19 20:18:09 +00:00
Matthew Brown
15cd62d332
Fix #2484 - add support for spaces in assert-if-true types
2019-12-19 19:24:26 +00:00
Matthew Brown
ab03ac06f4
Add support for spread operator before type as well
...
Ref #2429
2019-12-19 00:29:01 +00:00
Matthew Brown
af28d650f3
Fix #2408 - existing offsets checked with isset should be valid
2019-12-18 23:48:25 +00:00
Matthew Brown
456aa1c569
Fix #2468 - add support for zipping arrays
2019-12-18 18:14:02 +00:00
Matthew Brown
734ad02203
Fix #2476 - flesh out iterable params
2019-12-18 17:19:54 +00:00
Matthew Brown
9d8ca08fb9
Fix #2479 - analyse undefined function arguments too
2019-12-18 16:37:48 +00:00
Matthew Brown
cb797c6159
Fix inherited class methods as well
...
Ref #2478
2019-12-18 14:39:37 +00:00
Matthew Brown
49a3f89526
Fix #2478 - process trait template inheritance sensibly
2019-12-18 13:58:37 +00:00
Brown
e551b24843
Classes that just reference themselves aren’t used
2019-12-16 11:46:10 -05:00
Matthew Brown
bf67c036aa
Fix #2474 - treat free-standing binaryops as ifs instead
2019-12-16 08:32:00 -05:00
Matthew Brown
bdbc758ddc
Fix #2475 - allow iterable covariance
2019-12-16 07:16:35 -05:00
Matthew Brown
529efaa29c
Fix #2473 - allow array_map to work with callables returning static
2019-12-15 19:55:20 -05:00
Matthew Brown
1d0ac3df29
Fix #2472 - array_map should retain non-emptiness when passed string callables
2019-12-15 14:06:12 -05:00