Tyson Andre
bee10a2eb4
Add a --debug-emitted-issues flag ( #3637 )
...
And support --debug-by-line in psalter and psalm-refactor.
Those were previously not supported in getopt()
Fixes #3634
2020-06-22 18:16:47 -04:00
still-dreaming-1
700b5dda02
Fix #3461 by removing file from issues after removing last issue ( #3462 )
2020-05-26 22:52:36 -04:00
Brown
4bfdda597e
Always render ouptut even if no issues found
...
Fixes #3292
2020-05-03 08:44:14 -04:00
Brown
370ffa28e4
Fix #3117 - invalidate all caches when composer lockfile changes
2020-04-12 11:41:37 -04:00
Brown
001f064bd4
Don’t modify contents of IssueBuffer in baseline before caching
2020-03-31 23:38:58 -04:00
Matthew Brown
68c95c622a
Save information about last runs whether or not there were errors
2020-03-26 00:46:39 -04:00
Matthew Brown
ced092874a
Make config generation smarter
2020-02-17 22:05:58 -05:00
Matthew Brown
196a0a5c4e
Replace issue data array with object
2020-02-16 18:24:40 -05:00
Matthew Brown
4de6f5c4ec
Fix #2442 - using asserting after a MixedAssignment
removes that error
2020-02-08 23:01:45 -05:00
Matthew Brown
c2f1b3b700
Use slightly cleaner way of sorting file issues
2020-01-29 09:00:13 -05:00
Philip Hofstetter
8f8672dd6b
do not corrupt internal state when a baseline is present ( #2710 )
...
this fixes #2709
2020-01-29 08:53:58 -05:00
Matthew Brown
fa65ab8168
Add support for Github Actions output
...
Fixes #2678
2020-01-23 07:14:48 -05:00
Matthew Brown
947765c1c6
Improve count checks slightly
2020-01-22 07:51:24 -05:00
Ben Davies
5139d61171
remove unnecessary loops ( #2671 )
2020-01-22 07:42:00 -05:00
Matthew Brown
8202af957d
Index issues by file to reduce some lookups
2020-01-21 21:07:44 -05:00
Pavel Batečko
87debfe954
Support suppressing all issues with @psalm-suppress all ( #2584 )
...
* Support suppressing all issues using @psalm-suppress all
* Document @psalm-suppress all
2020-01-12 10:38:32 -05:00
Matthew Brown
2f2cd85a6a
Identify invalid static property array assignment
2019-12-27 10:34:51 -05:00
Matthew Brown
d7b99148be
Add support for JUnit report type
...
Fixes #2485
2019-12-19 20:18:09 +00:00
Tyson Andre
4548fb87f7
Add space for 'can automatically fix Nissues' ( #2416 )
2019-12-04 16:16:37 -05:00
Brown
821f3528d2
Fix #701 - indicate issues fixable with Psalter
2019-12-02 15:24:01 -05:00
Brown
a05f4744cb
Only show taint issues when tracking tainted input
2019-10-09 14:26:32 -04:00
Matthew Brown
9ad6c36d9b
Conditionally verify that array offsets exist ( #2147 )
...
* Check array offsets idea
* Clean up some issues
* Add a few light fixes
* Add docs
2019-09-18 14:21:06 -04:00
Brown
a0f7e73aea
Fix #2127 - improve behaviour of suppression discovery in threaded mode
2019-09-16 11:58:42 -04:00
Matthew Brown
5d94e340ee
Remove unused suppressions in tests
2019-08-18 15:34:32 -04:00
Matthew Brown
2a5e0d8f39
Fix #1444 - track unused suppressions
2019-08-18 14:27:50 -04:00
Matthew Brown
2146f73782
Prepare for tracking unused suppressions
...
Ref #1444
2019-08-18 12:25:48 -04:00
Matthew Brown
da42be175f
Apply PHPCS fixes
...
Fixes #1880
2019-07-05 16:27:53 -04:00
LeSuisse
f29826b958
Fully qualify constants and function calls ( #1849 )
...
This should give a small performance boost.
Part of #1837 .
The change is enforced via phpcs and can be autofixed
with phpcbf.
2019-06-26 16:52:29 -04:00
Matthew Lewinski
ac0a9d1514
Add a 'sonarqube' report type ( #1808 )
...
This JSON report is suitable for import into either SonarCloud or
SonarQube as Generic Issue Data (also known as an External Issue
Report).
https://docs.sonarqube.org/latest/analysis/generic-issue/
2019-06-17 21:17:09 -04:00
Matthew Brown
7fc11af49e
Fix docblocks with @andrew-demb’s suggestions
2019-06-16 09:12:32 -04:00
Matthew Brown
b5cbc84351
Fix #1617 - add option to only show errors in reports
2019-06-09 12:37:28 -04:00
Matthew Brown
fd3235d785
Reduce duplicate trait messages
2019-05-27 10:10:21 -04:00
Brown
0bd4dbcbc4
Bump to PHP 7.1
...
Fixes #1650
2019-05-16 18:36:36 -04:00
Brown
feff357a75
Be smarter about discovering files
2019-05-10 18:07:13 -04:00
Brown
111abf82da
Fix #1616 - allow Psalm to output checkstyle format
2019-05-08 14:26:52 -04:00
Brown
dd40987187
Consolidate location of issue handling
2019-05-03 17:12:20 -04:00
Brown
b9bece4cbc
Allow MixedArrayTypeCoercion to be properly suppressed by default
2019-04-29 12:19:51 -04:00
Brown
0e4c8ce482
Split apart TypeCoercion issues, allowing more granular issue filtering
2019-04-25 18:02:19 -04:00
Brown
80e28d6a4a
Add support for unused method & property automated removal
2019-04-17 11:12:18 -04:00
Brown
af4d10cb63
Fix #1499 - use TraitMethodSignatureMismatch when dealing with trait methods
2019-03-29 14:09:06 -04:00
Matthew Brown
9d4ebe6b6b
Add plugin hook for post-analysis stuff
2019-03-23 12:47:46 -04:00
Matthew Brown
ee56419fd6
Improve accuracy and durability of mixed counts
2019-03-23 09:50:47 -04:00
Brown
bd372e93af
Add config flags for findUnusedVariables and findUnusedCode
2019-03-05 15:45:09 -05:00
Brown
07825c9ff8
Fix long line
2019-02-27 16:16:19 -05:00
Brown
601f303de2
Fix position of invalid param
2019-02-27 16:00:44 -05:00
Matthew Brown
cdae79b9fe
Fix unnecessary params in Psalm codebase
2019-02-23 11:31:33 -05:00
Bruce Weirdan
8408effe57
Dropped unused uses
2019-02-17 13:17:45 -05:00
Brown
9f1dc425d0
Reduce repetition in the baseline files
2019-02-13 15:10:50 -05:00
Brown
3deea3980d
Add checks for unitialized properties
...
Fixes #1328
2019-02-13 13:32:19 -05:00
Matthew Brown
62fb8035bf
Fix #1309 - no PropertyNotSetInConstructor warnings for grandchild of class
2019-02-10 15:01:10 -05:00
Matthew Brown
b8b1106d79
Fix #1265 - allow referencedClass/Property/Method to be warnings
2019-02-01 07:58:40 -05:00
Matthew Brown
bd9f2ec546
Add separate issue type for undefined interface method
2019-01-13 13:07:53 -05:00
Matthew Brown
27687244f0
Normalise baseline file slashes
...
Fixes #1192
2019-01-10 00:10:16 -05:00
Brown
2d22db4cb7
Clear up use of reloadFiles
2019-01-02 12:10:52 -05:00
Brown
1d300ec342
Fix #1150
2019-01-02 11:18:22 -05:00
Dave Liddament
0655e1c19c
UPDATE add issue type to text output
...
Adds issue type to text output. Leaves .emacs output as before.
2018-12-18 17:25: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
9709263b8d
Make many PropertyAnalyzer properties private
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
Brown
ecf9d8afd7
Fix calculation when sample has a newline
2018-11-09 11:38:40 -05:00
Matthew Brown
f2f8edef20
Fix #1062 - improve handling of baseline messaging
2018-11-09 00:47:43 -05:00
Brown
f017599b3f
Fix how InvalidDocblock is treated
...
Fixes #1051 (hopefully)
2018-11-01 17:03:08 -04:00
Brown
0ba8a51cbe
Deduplicate issues from threads
2018-11-01 13:22:38 -04:00
Erik Booij
635410ea41
Introduce issue baseline with --set-baseline and --with-baseline
2018-11-01 11:16:08 -04:00
Brown
54fdda651b
Add server mode support with error reporting only
2018-10-17 15:54:31 -04:00
Brown
ccc92d7709
Fix microtime types
2018-10-10 16:05:06 -04:00
Matthew Brown
92e11fd51b
Port over cleanup from server branch
2018-10-06 20:11:19 -04:00
Brown
d0bd10d143
Improve provider architecture, upping test coverage
2018-09-30 11:34:51 -04:00
Brown
7bf63e09f5
Don’t delete issues when ignoring them in command line
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
e53783f8f4
Add an option to hide code snippets
2018-06-04 10:19:20 -04:00
Matthew Brown
6bfde90db4
Improve Psalm type inference summary to include required files
2018-06-03 18:31:43 -04:00
Matthew Brown
a33d52d935
Add support for referencedProperty error restrictions
2018-05-11 00:07:41 -04:00
Matt Brown
02a5d22449
Fix #674 - remove summary for full Psalm run if not in console mode
2018-04-16 14:05:46 -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
5384f193d1
Allow class and method issues to be suppressed by their identifiers
...
Ref #603
2018-03-20 22:36:03 -04:00
Matthew Brown
5068981902
Show info suppression instructions in output
2018-03-18 18:27:10 -04:00
Matthew Brown
303e3bbf0f
Fix #590 - add error count to stdout
2018-03-18 18:04:50 -04:00
Matthew Brown
cc9ffb36d9
Actually suppress child issues
2018-03-18 17:26:28 -04:00
Matthew Brown
d7a585160f
Add more granular error messages for invalid operands
2018-03-18 16:39:34 -04:00
Matthew Brown
e61815bb72
Fix #458 - fully support optional array keys
2018-03-17 18:05:50 -04:00
Matt Brown
f806e16c10
Fix #516 - never show issues when finding references
2018-03-16 11:15:07 -04:00
Matt Brown
5471b89391
Make array coercion an error
2018-02-21 18:59:31 -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
a99e89495b
Add end line/column data for LSP support
2018-02-19 18:16:09 -05:00
Matthew Brown
beb4993736
Add more text feedback when running from command line
2018-02-06 01:11:33 -05:00
Matthew Brown
0c23c59820
Improve formatting of end message
2018-02-04 12:34:22 -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
fc805a926e
Add code coverage message at the end of a scan
2018-01-31 16:08:52 -05:00
Matthew Brown
b68611c156
Fix #474 - change text colour of info text
2018-01-28 18:44:58 -05:00
Matt Brown
b0f3992f36
Remove stopOnFirstError config option, because it hasn’t worked for a while
...
Fixes #248
2018-01-24 16:22:54 -05:00
Matthew Brown
bc9761f6c9
Create Codebase out from ProjectChecker
2018-01-21 13:45:33 -05:00
Tyson Andre
77b41f4e9f
Bring phpdoc @param
up to date
2018-01-18 16:07:48 -05:00
Matthew Brown
49981f63c6
Be less alarmist info issues, colour-wise
2018-01-10 23:29:46 -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
796a3c5066
Fix style issues
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