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

182 Commits

Author SHA1 Message Date
Brown
51c6621925 Add property lookup 2019-01-22 11:10:37 -05:00
Andrii Dembitskyi
dfedf70d5d 🐛 Fix --plugin option handling for psalm 2019-01-08 18:44:43 -05:00
Dave Liddament
5103dfd680 FIX update psalm help text to show you can also generate a report with a .emacs file ending 2018-12-18 17:24:28 -05:00
Jon Ursenbach
c6a8b53a4d Refactoring output formats and creating a new "compact" format.
The new compact format generates your report within a table
structure that is similar to PHPCS.

Resolves #967
2018-12-09 17:34:47 -05:00
Matthew Brown
37dedee7b6 Fix memory leak issues and disable garbage collection 2018-11-18 11:39:14 -05:00
Brown
f10714e6f8 Add a --no-reflection-cache option for plugin use 2018-11-12 11:20:59 -05:00
Matthew Brown
4d79b61e93 Change _checker to _analyzer 2018-11-12 11:20:59 -05:00
Matthew Brown
4688b25fd9 Move internal classes to own namespace 2018-11-12 11:20:59 -05:00
Erik Booij
f05d10ebe4 Automatically add reference to baseline to config file 2018-11-04 19:28:12 -05:00
Brown
f017599b3f Fix how InvalidDocblock is treated
Fixes #1051 (hopefully)
2018-11-01 17:03:08 -04:00
Matthew Brown
9c1f15526d Remove erroneous =PATH 2018-11-01 11:16:08 -04:00
Erik Booij
635410ea41 Introduce issue baseline with --set-baseline and --with-baseline 2018-11-01 11:16:08 -04:00
Dave Liddament
14b99203d5 FIX #1047
FIx for issue [CLI -i flag not being processed correctly](https://github.com/vimeo/psalm/issues/1047)
2018-10-31 22:27:21 -04:00
Brown
e286089eaa Add onchange events and symbol lookup with disabled completion 2018-10-26 16:17:15 -04:00
Brown
4da1fd0e40 Change psalm --server to psalm-language-server 2018-10-18 14:34:46 -04:00
Brown
54fdda651b Add server mode support with error reporting only 2018-10-17 15:54:31 -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
ccc92d7709 Fix microtime types 2018-10-10 16:05:06 -04:00
Matthew Brown
afebefba19 Switch from --cache-results to --diff-methods flag 2018-10-07 00:42:25 -04:00
Brown
d0bd10d143 Improve provider architecture, upping test coverage 2018-09-30 11:34:51 -04:00
Brown
af163c0f53 Add better timing and profiling for autoload scanning 2018-09-25 16:35:23 -04:00
Matt Brown
956a7c749b Improve handling of array_search and strstr, and restrict ini_set types 2018-08-29 13:58:07 -04:00
Bruce Weirdan
3b3863f3a8 Scan entire file/dir list at once (#944)
fixes vimeo/psalm#943
2018-08-15 11:57:40 -04:00
Matthew Brown
a32273b2b8 Allow use of Psalm without composer
Fixes #935
2018-08-09 00:03:32 -04:00
Matthew Brown
d3fc9a51e0 Improve callmap with PHPStan’s additions
cc @TysonAndre
2018-07-22 19:15:40 -04:00
Tyson Andre
ef1c1995a3 Split up CLI options into individual lines, and sort them (#902)
No CLI options were added or removed.

This has the following benefits:

- It makes it easier to track history of CLI flags in git
- It avoids merge conflicts if multiple PRs add CLI options
- It makes maintaining patches/forks easier.
2018-07-20 07:07:41 -04:00
Matt Brown
b831baee51 Make disabled extensions configurable 2018-07-17 16:54:34 -04:00
Matt Brown
6a06f06044 Improve API for disabling extensions and disable apc as well 2018-07-17 16:40:03 -04:00
Matt Brown
73aa0df08a Restart without grpc if running in threaded mode 2018-07-17 14:08:40 -04:00
Matthew Brown
a7cb4664aa Fix #542 - warn about incorrect psalm args 2018-07-15 18:43:06 -04:00
SignpostMarv
76a3fbbdf0 memory_limit specified as int to resolve windows-related issue #842 without requiring --use-ini-defaults argument to be passed (#860) 2018-07-03 17:22:04 -04:00
Matthew Brown
16e270f0ee Improve loading of stub file and autoload file information
Ref #849
2018-06-30 15:29:37 -04:00
Matt Brown
4a975883b4 Add --use-ini-defaults arg to prevent Psalm overriding memory_limit and more
Fixes #842
2018-06-27 10:40:02 -04:00
Matt Brown
e53783f8f4 Add an option to hide code snippets 2018-06-04 10:19:20 -04:00
Matt Brown
37620ce2e5 Bump memory limit 2018-04-25 10:33:15 -04:00
Gabriel Ostrolucký
2295756793 fix xsd path replacement in --init 2018-04-21 18:55:42 -04:00
Matt Brown
a25a989c12 Prepare v2 dev release 2018-04-19 17:29:07 -04:00
Matthew Brown
2b34c1d315 Add extra level 8 containing PHP autoload landmines 2018-04-19 01:03:28 -04:00
Matt Brown
4c84f88668 Bump allowable config 2018-04-18 15:38:24 -04:00
Matt Brown
aa3ea9c14c Add a 7th level with even more permissive checks 2018-04-18 15:31:00 -04:00
Matt Brown
87be0b5863 Change die($message) to explicit exit(1) 2018-04-17 11:48:29 -04:00
Matthew Brown
75e59f29ea Check as many autoloaded files as possible
and ignore reflected function docblocks - fixes #629
2018-03-30 20:03:56 -04:00
Matthew Brown
871a91c850 Add debug-by-line option 2018-03-26 09:08:55 -04:00
Matthew Brown
fc20b9b63f Improve init mechanism for different roots
Fixes #601
2018-03-18 19:16:35 -04:00
Matthew Brown
a668cfd78b Add schema locations to generated XML
Fixes #583
2018-03-17 22:33:25 -04:00
Matt Brown
f806e16c10 Fix #516 - never show issues when finding references 2018-03-16 11:15:07 -04:00
Bruce Weirdan
e571c18299 updated xdebug-handler call to match new api 2018-03-08 16:42:53 -05:00
Bruce Weirdan
9a27583253 replace composer/composer with composer/xdebug-handler
Fixes vimeo/psalm#349

Note: there's no stable release at the moment, so it's using dev-master
for now.
2018-03-08 16:42:53 -05:00
Matt Brown
88e0a65f18 Remove Psalm --self-check option, because it’s dumb 2018-03-05 10:31:07 -05:00
Matthew Brown
ade9e03c85 Use composer autoloader for class resolution where possible 2018-03-03 15:19:05 -05:00
Matt Brown
e8b4559a6b Support level 6 and fix docs 2018-03-02 11:09:55 -05:00
Matthew Brown
2cec81ebfe
Fix #537 - misleading --init documentation 2018-03-02 10:58:12 -05:00
Matthew Brown
63b473966d Fix phpcs warning 2018-02-25 12:14:35 -05:00
Matthew Brown
42965bff65 Bust Psalm statements cache when upgrading Psalm version 2018-02-25 11:35:43 -05:00
Matt Brown
39cdd00094 Add extra level for starter configs 2018-02-22 12:25:05 -05:00
Matthew Brown
d10212b393 Fix perpetual diff builds 2018-02-19 23:36:36 -05:00
Tyson Andre
cdcec69536 Support the pylint output format
This is a compact output format that is easy to write scripts that parse.
(And errors fit on a single line)

- E.g. jenkins violation plugin works reliably with pylint.

The multi-line details are deliberately omitted.
An application can output 'console' to stdout and to
a pylint file at the same time.

Files with the extension .pylint will use this format.

Document the emacs and pylint output formats in `psalm --help`

An optional followup task would be to create unique issue codes,
I don't have any use cases for that.
2018-02-19 22:35:48 -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
Matthew Brown
61b13b68cf Fix #376 - support turkish lowercase 2018-02-17 22:11:42 -05:00
Matthew Brown
108ca54867 Fix #516 - make sure --find-references-to doesn’t output missing references 2018-02-17 17:45:30 -05:00
Matthew Brown
078becb0b7 Fix cache clearing 2018-02-07 20:15:56 -05:00
Matthew Brown
8e0998e081 Break apart the Codebase class 2018-02-03 18:56:54 -05:00
Matt Brown
3d6bb23e28 Add stats breakdown for files 2018-01-31 17:09:09 -05:00
Matt Brown
62401f15fd Prevent finding unused classes and methods when multithreaded 2018-01-25 15:40:01 -05:00
Matt Brown
5a4b240dc8 Prevent class references from being checked when running multithreaded 2018-01-25 15:36:02 -05:00
Matt Brown
d0de1ea641 Only check class references if we have all available data 2018-01-25 15:11:44 -05:00
Matt Brown
d67f1e3c28 Fix #252 - allow custom vendor directory 2018-01-25 11:32:54 -05:00
Matthew Brown
2994d1e339 Add tests for reference checks 2018-01-21 23:42:57 -05:00
Matthew Brown
9b6b03ff9f Create Config before ProjectChecker, and remove test-specific code from FileChecker 2018-01-21 10:22:04 -05:00
Matt Brown
27e47365e3 Fix #422 - be better about checking isset call variables 2018-01-09 19:33:39 -05:00
Matt Brown
3b5ddb8dc2 Reduce use of __toString and remove profiling 2018-01-09 15:44:31 -05:00
Matt Brown
1a048040bf Move IssueBuffer finish logic into the command line 2018-01-09 11:49:10 -05:00
Matthew Brown
5bae869dc6 Break file manipulation out into Psalter 2018-01-07 17:25:23 -05:00
Matt Brown
928b01a7c7 Find and fix code issues where functionality is available 2018-01-07 17:25:23 -05:00
Matt Brown
53d8c7ba52 Fix issue ideas 2018-01-07 17:25:23 -05:00
Matthew Brown
cc81d78dfd Add code replacement api to allow Psalm to update arbitrary parts of the codebase
Fixes #264
2018-01-02 09:46:50 -05:00
Matthew Brown
72b127e061 Allow plugins to be run via the command line 2018-01-02 09:46:50 -05:00
Matthew Brown
81cfe09fae Improve reporting of classlike locations in docblocks 2018-01-01 20:04:03 -05:00
Matthew Brown
72a2a80619 Fix reference PackageVersions class 2018-01-01 10:01:04 -05:00
Matthew Brown
8efc939a5f Move Psalm execution code into PHP file that Psalm can analyse 2017-12-29 17:02:56 -05:00