1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-15 10:57:08 +01:00
Commit Graph

75 Commits

Author SHA1 Message Date
Matthew Brown
1a08b69d9c Only do partial parsing if there are few changes 2018-10-30 22:25:31 -04:00
Matthew Brown
750ef3e443 Rename OffsetMapCheckerVisitor to PartialParserVisitor and add description 2018-10-27 12:27:21 -04:00
Matthew Brown
1d77b61ff9 Fix #1039 by invalidating all use users 2018-10-26 23:04:38 -04:00
Brown
e286089eaa Add onchange events and symbol lookup with disabled completion 2018-10-26 16:17:15 -04:00
Matthew Brown
addaea2c1c Improve performance when parsing large files with few changes 2018-10-26 00:59:14 -04:00
Brown
2b6df3658c Only repopulate the storage we care about
Big reduction on population time for single file edits
2018-10-18 10:42:37 -04:00
Brown
4ed5c4bcc6 Speed up analysis phase 2018-10-18 09:51:28 -04:00
Brown
54fdda651b Add server mode support with error reporting only 2018-10-17 15:54:31 -04:00
Brown
1d5759a35c Improve test coverage of ProjectChecker 2018-10-17 11:03:32 -04:00
Brown
5a484901cd Improve the way that files are reloaded (server only) 2018-10-16 15:59:11 -04:00
Brown
13cc3b4751 Improve file hash reloading 2018-10-15 11:34:51 -04:00
Brown
f9cca5e597 Add support for forking at the scanning step 2018-10-15 09:16:11 -04:00
Matthew Brown
43c5e9dd4c Fix unnecessary file reparsing 2018-10-08 22:42:45 -04:00
Brown
55bb896868 Fix bugs Psalm found 2018-10-08 20:04:05 -04:00
Brown
6a2add9398 Don’t skip correct methods in non-diff mode 2018-10-08 19:41:32 -04:00
Matthew Brown
7e01576653 Fix #1011 - don’t re-analyse constructors if we can help it 2018-10-06 22:58:21 -04:00
Matthew Brown
92e11fd51b Port over cleanup from server branch 2018-10-06 20:11:19 -04:00
Matthew Brown
ea3eada2d6 Still invalidate methods whose bodies have changed 2018-10-03 23:52:09 -04:00
Brown
6707672528 Improve handling of traits further 2018-10-03 18:16:33 -04:00
Matthew Brown
e9070b7c4a Improve file updating in same thread 2018-09-30 11:34:51 -04:00
Matthew Brown
890412b557 Add support back for parser errors 2018-09-30 11:34:51 -04:00
Brown
d0bd10d143 Improve provider architecture, upping test coverage 2018-09-30 11:34:51 -04:00
Brown
05a0bdc93b Remove PHP7 types 2018-09-30 11:34:51 -04:00
Brown
1d26332d77 Track more changes and invalidate more methods 2018-09-30 11:34:51 -04:00
Brown
89c04ec1ae Cache issue data and adjust issue offsets where applicable 2018-09-30 11:34:51 -04:00
Brown
67c90edadf Don’t check methods we’ve already checked 2018-09-30 11:34:51 -04:00
Matt Brown
add7c14b44 Fix #965 - invalidate cache when changing plugins 2018-09-04 15:28:03 -04:00
Matt Brown
b97972ebb3 Fix Psalm-found issues 2018-09-04 14:37:33 -04:00
Matthew Brown
5ea8b86b7c Resolve as many names as possible in the parsing stage 2018-07-12 21:25:06 -04:00
Matt Brown
5c0f4a999c Move a bunch of classes to better places 2018-05-11 18:35:02 -04:00
Matthew Brown
1a4ddc7cdd
Support value types (#707)
* Add first idea

* Add initial count experiments

* Remove false positives

* Fix getId to support changes in conditionals

* Add better tests

* Strip types when not exists

* Fix array offsets

* More fixes

* Add class constant value types

* Clone constants everywhere

* Don’t complain unnecessarily

* Be more lenient with possibly invalid __sets

* Fix mixed issues

* Fix bug concerning orred string equality

* Remove unnecessary casts
2018-05-03 13:56:30 -04:00
Matt Brown
ae49558de6 Ignore MissingConstructor a little less 2018-05-03 11:38:27 -04:00
Matthew Brown
21871bd8d4 Remove PHP 5 dead code cc @TysonAndre 2018-04-24 07:08:14 -04:00
Matthew Brown
09082ddf52 Fix #695 - fix PHP parser cache version 2018-04-24 07:07:04 -04:00
Matthew Brown
d02b148820 Fix #633 - support @method for magic __call methods 2018-04-21 22:13:10 -04:00
Radosław Kowalewski
15c1a82d8c Few fixes to make tests pass on windows
* changed / to DIRECTORY_SEPARATOR in expected messages
* cahnged most occurences PHP_EOL to "\n" in tests and src
* added output buffering in test to avoid marking test as risky
2018-04-12 22:41:13 -04:00
Matthew Brown
58115599a1 Add support for callable(...) syntax
Ref #580
2018-03-26 22:13:10 -04:00
Matthew Brown
f47012823e Fix incorrect issue type emitted for static properties 2018-03-20 23:19:26 -04:00
Matthew Brown
eb3750d8f3 Remove unnecessary @var annotations 2018-03-17 00:19:55 -04:00
Matt Brown
ef35cfc6fe Fix #566 - check for abstract methods inheriting from non-abstract ones 2018-03-13 12:52:00 -04:00
Matthew Brown
73fadab0b5 Make Phar more robust to object namespace changes 2018-03-12 00:01:52 -04:00
Matthew Brown
42965bff65 Bust Psalm statements cache when upgrading Psalm version 2018-02-25 11:35:43 -05:00
Matt Brown
cd60786ced Always use class file path in the cache key to prevent duplicate clashes 2018-02-20 10:56:18 -05:00
Matthew Brown
d8b9bcba4d Normalise file path for cache 2018-02-19 12:06:13 -05:00
Matthew Brown
724e72af58 Don’t get statements from cache if file hasn’t changed 2018-02-19 11:53:30 -05:00
Matthew Brown
634375ae94 Make igbinary the default serializer
Fix #484 and fix #527
2018-02-19 11:14:07 -05:00
Matthew Brown
81fd016120 Fix #193 - allow caching of storages 2018-02-19 00:27:39 -05:00
Tyson Andre
aea3779c96 Fix unused imports in psalm, wrong param order doc comments (#523)
(Some of the imports appear as strings elsewhere in the same file)
2018-02-18 17:55:11 -05:00
Matthew Brown
affcaebc3d Use classes, not full method ids, for plugin execution 2018-02-11 22:49:19 -05:00
Matthew Brown
f628187de9 Remove dead code found by improved Psalm checks 2018-01-28 12:01:51 -05:00