Matthew Brown
e70a282bce
Fix require checker config
2020-01-01 17:23:40 -05:00
Matthew Brown
872365f444
Fix #2539 - use unaliased parent class name
2020-01-01 17:23:13 -05:00
Matthew Brown
7ea6c8097d
Add config
2020-01-01 17:03:28 -05:00
Matthew Brown
8d9ad338fb
Add whitelist of pre-checked extensions
2020-01-01 16:43:36 -05:00
Matthew Brown
a69903cd92
Fix dumb
2020-01-01 15:22:37 -05:00
Matthew Brown
1ff24c03bb
Remove BC-compatibility check cc @ocramius
...
On account of it’s broken
2020-01-01 15:21:06 -05:00
Matthew Brown
690209d8e5
Add sort function stub
2020-01-01 15:07:41 -05:00
Marco Pivetta
b26c57237f
Ensure BC of API, compat with roave/you-are-using-it-wrong
, completeness of composer.json
( #2140 )
...
* Test against `roave/you-are-using-it-wrong`
* Added CI step to ensure BC of declared API
* Added step to ensure `composer.json` has all used deps
* Including CI check tools as dev dependencies
* Typo fix: s/backwards/backward
* Run `roave/backward-compatibility-check` off an isolated location with no other dependencies
* Run `test-with-real-projects` task with PHP 7.4 as base runtime
* Run `testing-with-real-projects` also against `ocramius/proxy-manager`
`ocramius/proxy-manager` is an extremely heavy `vimeo/psalm` consumer,
and relies on a lot of the templated types system to generate real
types for proxies produced by runtime evaluation.
2020-01-01 13:55:33 -05:00
Markus Podar
270a99f57d
Add sample for optional keys in array shapes ( #2538 )
2020-01-01 13:53:32 -05:00
Matthew Brown
086d141f5c
Fix #2537 - allow complex intersection templates to be preserved
2020-01-01 13:51:54 -05:00
Matthew Brown
d175abe0f0
Improve templating for intersections
2020-01-01 13:31:41 -05:00
Matthew Brown
4630d19d45
Fix psalm running
2020-01-01 12:49:12 -05:00
Matthew Brown
4021d673bd
Fix #2536 - grab binary op left assertions after analysis
2020-01-01 12:45:24 -05:00
Matthew Brown
1b4bda4e08
Go back to upstream
2020-01-01 12:32:03 -05:00
Matthew Brown
d7fb64bbb7
Fix #2349 - use function suppressed issues
2019-12-31 09:16:49 -05:00
Matthew Brown
f79088a955
Fix undefined var
2019-12-31 09:13:18 -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
Witold Wasiczko
cbdf6ad2c6
Remove 7.4snapshot from allow_failures ( #2535 )
2019-12-30 20:25:35 -05:00
Matthew Brown
79be178146
Add associative-array as an alias of array
2019-12-30 17:01:10 -05:00
Matthew Brown
bc8952c793
Add Phan updates
2019-12-30 16:58:34 -05:00
Matthew Brown
8f504f9664
Fix style
2019-12-30 16:42:34 -05:00
Matthew Brown
ec292f58dc
Move explode handling into its own file
2019-12-30 16:39:37 -05:00
Matthew Brown
b7fa15f89d
Port over updates from PHPStan
2019-12-30 15:55:15 -05:00
Matthew Brown
c14d1f7d7e
Fix order
2019-12-30 15:55:15 -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
44441042f0
Fix style things
2019-12-30 11:07:04 -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
c79ba0b09e
Include non-empty-string type in more places
2019-12-30 07:25:36 -05:00
Matthew Brown
023c4bcef0
Fix #2532 - fix templating inside class method when calling templated method
2019-12-30 07:25:36 -05:00
Bruce Weirdan
30d4ab5d62
Added spl_object_id polyfill to scoper whitelist ( #2531 )
...
Refs vimeo/psalm#2530
2019-12-29 21:12:03 -05:00
Matthew Brown
508c2e268a
Process phpstan-template in class docblocks
2019-12-29 16:08:09 -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
Matthew Brown
8e54e3aa06
Use forked collections for now
2019-12-29 11:11:07 -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
Ruud Kamphuis
ca31931a53
Explain bool assertions ( #2528 )
2019-12-29 09:22:09 -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
Bruce Weirdan
e3e3296dd9
Test doctrine collections ( #2524 )
...
* Added doctrine/collections to the list of real projects to test with
* Don't use phar version to check doctrine/collections
2019-12-28 20:51:39 -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
SignpostMarv
37496e9569
amending travis config, 7.4snapshot > 7.4 ( #2516 )
2019-12-28 15:58:04 -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
bdb2f3c2be
Use fork for now
2019-12-27 17:10:16 -05:00
Matthew Brown
6a6a6ab2d7
Fix dumb
2019-12-27 16:51:49 -05:00