Matt Brown
|
bef9ab37e6
|
Fix #4759 – don’t generate assertion when assigning to same-named variable
|
2020-12-03 09:42:26 -05:00 |
|
Matt Brown
|
1a629ccc82
|
Fix a few issues
|
2020-12-01 18:26:15 -05:00 |
|
Matt Brown
|
6f86201f34
|
Break up AssignmentAnalyzer::analyze
|
2020-11-30 14:57:35 -05:00 |
|
Matthew Brown
|
60ac109c01
|
Add RedundantPropertyInitializationCheck (#4732)
* Add RedundantPropertyInitializationCheck
* add documentation for RedundantPropertyInitializationCheck (#4734)
Co-authored-by: orklah <orklah@users.noreply.github.com>
|
2020-11-29 11:57:20 -05:00 |
|
Matt Brown
|
0efd4ebd7d
|
Detect some erroneous issets
|
2020-11-29 09:26:39 -05:00 |
|
Matt Brown
|
f8ddc7e58a
|
Add slash
|
2020-11-24 15:07:15 -05:00 |
|
Matt Brown
|
41af653bd4
|
Add support for some dependent types
|
2020-11-24 14:50:35 -05:00 |
|
Matt Brown
|
95de6cf177
|
Allow immutable classes to be specialised through calls
|
2020-11-19 01:38:20 -05:00 |
|
Matt Brown
|
4e5111f1a8
|
Fix #4472 - if something flows into a byref var it’s used
|
2020-11-17 15:30:53 -05:00 |
|
Matt Brown
|
46ebca4497
|
Fix coalesce operation tainting
|
2020-11-10 14:36:36 -05:00 |
|
Matt Brown
|
81babf2430
|
Clone to prevent incorrect references
|
2020-11-10 09:01:46 -05:00 |
|
Matt Brown
|
966b139504
|
Fix dupe semicolons
|
2020-11-01 11:42:09 -05:00 |
|
Matt Brown
|
024d93b7fd
|
Fix #4467 - variables are only the same if they were set in the same location
|
2020-11-01 11:26:42 -05:00 |
|
Matt Brown
|
8a2983e5e9
|
Fix #4336 - don’t merge sources twice for null coalesce
|
2020-10-15 09:57:37 -04:00 |
|
Matt Brown
|
724b25b918
|
Change control_flow_graph to data_flow_graph
|
2020-10-13 17:28:12 -04:00 |
|
Matt Brown
|
516141a380
|
Rename ControlFlowGraph to more appropriate DataFlowGraph
|
2020-10-13 16:49:03 -04:00 |
|
orklah
|
10f2966dcb
|
return types (#4311)
* return types
* remove willReturn for void methods
|
2020-10-12 15:02:52 -04:00 |
|
Matt Brown
|
14efde286f
|
4.x - refactor unused variable detection
This turns unused variable detection into an explicit control-flow problem, where before we had a more simplistic mark-and-sweep algorithm
|
2020-09-30 12:28:13 -04:00 |
|
Brown
|
19f88a2e31
|
Add improvements from unused variable checks
|
2020-09-28 00:45:02 -04:00 |
|
Brown
|
56cddd16bf
|
Rename TaintGraph to ControlFlowGraph because it’s about to do more
|
2020-09-20 23:59:52 -04:00 |
|
Brown
|
0f6a271858
|
Improve file-based suppression of taints
|
2020-09-20 19:37:25 -04:00 |
|
Brown
|
2968b3b065
|
Add to StatementsAnalyzer taint object instead of Context
|
2020-09-20 18:42:21 -04:00 |
|
Brown
|
abb9502921
|
Rename Taint object to TaintGraph
|
2020-09-20 18:27:02 -04:00 |
|
orklah
|
ead107fa9e
|
More return types (#4173)
* add native return types
* redundant phpdoc
|
2020-09-12 11:24:05 -04:00 |
|
orklah
|
8c7423505a
|
add native param types (#4137)
* add native param types
* redundant phpdoc
* add more param types and adds "?" to nullable types
* remove redundant phpdoc
* add more param types and remove redundant phpdoc
* add more param types and remove redundant phpdoc
|
2020-09-06 19:36:47 -04:00 |
|
orklah
|
f66d57f19d
|
add native return types (#4116)
* add native return types
* remove redundant phpdoc
|
2020-09-04 16:26:33 -04:00 |
|
Brown
|
92239add4d
|
Add some backwards-incompatible changes for 4.x
|
2020-08-30 11:44:14 -04:00 |
|
Brown
|
efe143a396
|
Fix #4077 - always track closure purity
|
2020-08-28 12:42:55 -04:00 |
|
Brown
|
4e10a0ed6f
|
Fix #4036 - add immutable annotations automatically too
|
2020-08-24 19:29:00 -04:00 |
|
Brown
|
67f9adb33c
|
Allow adding pure annotations to functions
Ref #4036
|
2020-08-23 10:28:26 -04:00 |
|
Brown
|
fd4ced42a7
|
Don’t register new assignment inside isset expr
|
2020-07-31 12:44:01 -04:00 |
|
Brown
|
57cd21346c
|
Fix #3914 - treat $i++ like $i = $i + 1
|
2020-07-31 11:26:54 -04:00 |
|
Brown
|
eddd7b8c11
|
Fix #1916 - support @var docblock annotations in more places
|
2020-07-26 13:23:21 -04:00 |
|
Brown
|
b1e583ebed
|
Detect concat operation on property
Ref #3870
|
2020-07-24 16:01:45 -04:00 |
|
Brown
|
76bd5b6278
|
Refactor type comparison
|
2020-07-21 19:40:35 -04:00 |
|
Brown
|
9ca8fb80b7
|
Carry over taints after @var docblock type hints
|
2020-07-17 11:30:44 -04:00 |
|
Brown
|
42a3cedd31
|
Fix #3742 - add null to type after possibly null array access
|
2020-07-05 09:12:07 -04:00 |
|
Brown
|
67b2edc328
|
Allow more things to be suppressed with @psalm-suppress TaintedInput
|
2020-07-02 11:53:51 -04:00 |
|
Brown
|
ae7c5b095b
|
Fix #3712 - allow taints to be suppressed with @psalm-suppress
|
2020-07-01 23:23:45 -04:00 |
|
Brown
|
8f2e28c36b
|
Improve tainting of specializable classes
|
2020-06-19 01:22:51 -04:00 |
|
Brown
|
49f0592794
|
Improve tracking of array taints
|
2020-06-18 18:48:19 -04:00 |
|
Brown
|
f609a01497
|
Move static property fetch analyzer to own class
|
2020-06-18 11:53:24 -04:00 |
|
Matthew Brown
|
683bde9540
|
Fix #3573 - allow UnnecessaryVarAnnotation to be suppressed
|
2020-06-13 16:48:10 -04:00 |
|
Brown
|
a266d4748b
|
Fix build
|
2020-05-26 07:50:11 -04:00 |
|
Brown
|
953be61cf2
|
Allow limiting connected taint paths
|
2020-05-25 23:28:11 -04:00 |
|
Brown
|
a198b09eb7
|
Add intermediary concat op node
|
2020-05-23 21:38:09 -04:00 |
|
Brown
|
f5a0622ad2
|
Fix style
|
2020-05-23 08:06:31 -04:00 |
|
Brown
|
16af6a5773
|
Improve concat taint propagation
|
2020-05-23 01:11:16 -04:00 |
|
Matthew Brown
|
187b944680
|
Add faster taint analysis
|
2020-05-22 12:33:29 -04:00 |
|
Joe Hoyle
|
6f28d741bc
|
Display variable assignment type in LSP hovers (#3401)
* Add node references for variable assignments
* Break up line
Co-authored-by: Matthew Brown <github@muglug.com>
|
2020-05-20 17:40:22 -04:00 |
|