1
0
mirror of https://github.com/danog/psalm.git synced 2024-11-30 04:39:00 +01:00
Commit Graph

5575 Commits

Author SHA1 Message Date
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