pdt
pdt copied to clipboard
Summary of misssing errors and validations
summary
type
column:
- ❌ display error
- ⚠️ display warning
- 🎯 validation
detail columns:
- S: any statement: global and inside function/method. excluding
use
clause. - F: function/method declaration/signature. including interface method, promoted property & it's attributes.
- P: property/constant/enum case declaration. including it's attributes. exluding promoted property.
- C: class/trait/interface declaration. including
use
clause & it's attributes.
column state:
- ✅ if all error/warning are displayed correctly and validation (if any) is already added.
- 🔳 if some error/warning are missing or validation (if any) is missing.
- 🔲 if all error/warning/validation are missing.
no | type | desciption | S | F | P | C |
---|---|---|---|---|---|---|
1 | ❌ | duplicate parameter names | - | 🔲 | - | - |
2 | ❌ | duplicate property names via constructor property promotion | - | 🔲 | - | - |
3 | ❌ | instantiation with unreachable constructor | 🔲 | - | - | - |
4 | 🎯 | duplicate name of properties vs methods | - | 🔲 | - | - |
5 | ❌ | overriding final method | - | 🔲 | - | - |
6 | ❌ | lack/excessive of params on derived method | - | 🔲 | - | - |
7 | ❌ | mismatch variadic param on derived method | - | 🔲 | - | - |
8 | ❌ | incompatible param/return value type on derived method | - | 🔲 | - | - |
9 | ❌ | LSP violation | - | 🔲 | - | - |
10 | ❌ | intersection types with scalar type | - | 🔲 | 🔲 | - |
11 | ❌ | LSP violation (mixed type case) | - | 🔲 | - | - |
12 | ❌ | duplicate type on parameters/return value | - | 🔲 | - | - |
13 | ❌ | extending/implementing/importing scalar type | - | - | - | 🔲 |
14 | ❌ | lack of arguments | - | 🔲 | - | - |
15 | 🎯 | excessive arguments | - | 🔲 | - | - |
16 | ❌ | incorrect default value order | - | 🔲 | - | - |
17 | ❌ | declaring promoted property outside a constructor | - | 🔲 | - | - |
18 | ❌ | adding default value on variadic param | - | 🔲 | - | - |
19 | 🎯 | using old style constructor | - | 🔲 | - | - |
20 | ❌ | using constructor property promotion on old style constructor | - | 🔲 | - | - |
21 | 🎯 | properties with same name but different on case | - | - | 🔲 | - |
22 | ❌ | instantiation on class constant definition | - | - | 🔲 | - |
23 | 🎯 | duplicate name of class/interface/trait vs constant | - | - | - | 🔲 |
24 | ❌ | using forbidden type for param/property | - | 🔲 | 🔲 | - |
25 | 🎯 | missing param/property/return value type | - | 🔲 | - | - |
26 | ❌ | autovivification on value other than undefined, null or array | 🔲 | - | - | - |
27 | ❌/⚠️ | autovivification on union type if not guarded with IF-STATEMENT | 🔲 | - | - | - |
28 | ⚠️ | statement after never function call | 🔲 | - | - | - |
29 | ❌ | return statement inside never function | 🔲 | - | - | - |
30 | ❌ | non-void function which has return statement that not filled with value | 🔲 | - | - | - |
31 | ❌ | void function which has return statement that filled with value | 🔲 | - | - | - |
32 | ❌ | accessing enum instance and static property | 🔲 | - | - | - |
33 | ❌ | enum case does not exist | 🔲 | - | - | - |
34 | ❌ | Converting Enum or Enum case | 🔲 | - | - | - |
35 | ❌ | enum assigned as a reference | 🔲 | - | - | - |
36 | ❌ | defining forbidden enum methods | - | 🔲 | - | - |
37 | ❌ | enum instantiation | 🔲 | - | - | - |
38 | ⚠️ | comparing enum case | 🔲 | - | - | - |
39 | ❌ | duplicate, invalid, or missing value of backed enum | - | - | 🔲 | - |
40 | ❌ | enum using trait which requires property | - | - | - | 🔲 |
41 | ❌ | using enum as array key | 🔲 | - | - | - |
42 | ❌ | using invalid attribute constant | - | 🔲 | 🔲 | 🔲 |
43 | ❌ | using $this when not in object context | 🔲 | - | - | - |
44 | ❌ | accessing undeclared/inaccessible static property | 🔲 | - | - | - |
45 | ❌ | instantiation in class constant declaration | - | - | 🔲 | - |
46 | ❌ | unpacking variable other than array or Traversables | 🔲 | - | - | - |
47 | ❌ | counting variable member other than array or Countable | 🔲 | - | - | - |
48 | ❌ | accessing property with array syntax other than class which implements ArrayAccess | 🔲 | - | - | - |
49 | ❌ | accessing undeclared/inaccessible instance property | 🔲 | - | - | - |
50 | ❌ | invoking undeclared/inaccessible instance method | 🔲 | - | - | - |
51 | ❌ | invoking undeclared/inaccessible static method | 🔲 | - | - | - |
52 | 🎯 | implicit implements Stringable declaration | - | - | - | 🔲 |
53 | ❌ | accessing undeclared/inaccessible class constant | 🔲 | - | - | - |
54 | ❌ | accessing/invoking all trait member using trait name | 🔲 | - | - | - |
55 | ❌ | mismatch between default value and property type | - | - | 🔲 | - |
56 | ❌ | defining property promotion on interface/abstract class | - | 🔲 | - | - |
57 | ❌ | using forbidden modifier on interface | - | - | - | 🔲 |
58 | 🎯 | missing visibility modifier | - | 🔲 | 🔲 | - |
59 | 🎯 | non lowercase keyword | 🔲 | 🔲 | 🔲 | 🔲 |
60 | 🎯 | using var on property | - | - | 🔲 | - |
attachment (for capy-paste into new comment):
`type` column:
- ❌ display error
- ⚠️ display warning
- 🎯 validation
detail columns:
- S: any statement: global and inside function/method. excluding ```use``` clause.
- F: function/method declaration/signature. including interface method, promoted property & it's attributes.
- P: property/constant/enum case declaration. including it's attributes. exluding promoted property.
- C: class/trait/interface declaration. including ```use``` clause & it's attributes.
column state:
- ✅ if all error/warning are displayed correctly and validation (if any) is already added.
- 🔳 if some error/warning are missing or validation (if any) is missing.
- 🔲 if all error/warning/validation are missing.
| no | type | desciption | S | F | P | C |
| --- | ----- | ------------------------------------------------------------------------------------------- | - | - | - | - |
| 1 | ❌ | [duplicate parameter names](./177) | - | 🔲 | - | - |
| 2 | ❌ | [duplicate property names via constructor property promotion](./178) | - | 🔲 | - | - |
| 3 | ❌ | [instantiation with unreachable constructor](./179) | 🔲 | - | - | - |
| 4 | 🎯 | [duplicate name of properties vs methods](./180) | - | 🔲 | - | - |
| 5 | ❌ | [overriding final method](./181) | - | 🔲 | - | - |
| 6 | ❌ | [lack/excessive of params on derived method](./182) | - | 🔲 | - | - |
| 7 | ❌ | [mismatch variadic param on derived method](./183) | - | 🔲 | - | - |
| 8 | ❌ | [incompatible param/return value type on derived method](./184) | - | 🔲 | - | - |
| 9 | ❌ | [LSP violation](./185) | - | 🔲 | - | - |
| 10 | ❌ | [intersection types with scalar type](./186) | - | 🔲 | 🔲 | - |
| 11 | ❌ | [LSP violation (mixed type case)](./187) | - | 🔲 | - | - |
| 12 | ❌ | [duplicate type on parameters/return value](./188) | - | 🔲 | - | - |
| 13 | ❌ | [extending/implementing/importing scalar type](./189) | - | - | - | 🔲 |
| 14 | ❌ | [lack of arguments](./190) | - | 🔲 | - | - |
| 15 | 🎯 | [excessive arguments](./191) | - | 🔲 | - | - |
| 16 | ❌ | [incorrect default value order](./192) | - | 🔲 | - | - |
| 17 | ❌ | [declaring promoted property outside a constructor](./193) | - | 🔲 | - | - |
| 18 | ❌ | [adding default value on variadic param](./194) | - | 🔲 | - | - |
| 19 | 🎯 | [using old style constructor](./195) | - | 🔲 | - | - |
| 20 | ❌ | [using constructor property promotion on old style constructor](./196) | - | 🔲 | - | - |
| 21 | 🎯 | [properties with same name but different on case](./197) | - | - | 🔲 | - |
| 22 | ❌ | [instantiation on class constant definition](./198) | - | - | 🔲 | - |
| 23 | 🎯 | [duplicate name of class/interface/trait vs constant](./199) | - | - | - | 🔲 |
| 24 | ❌ | [using forbidden type for param/property](./200) | - | 🔲 | 🔲 | - |
| 25 | 🎯 | [missing param/property/return value type](./201) | - | 🔲 | - | - |
| 26 | ❌ | [autovivification on value other than undefined, null or array](./202) | 🔲 | - | - | - |
| 27 | ❌/⚠️ | [autovivification on union type if not guarded with IF-STATEMENT](./203) | 🔲 | - | - | - |
| 28 | ⚠️ | [statement after never function call](./204) | 🔲 | - | - | - |
| 29 | ❌ | [return statement inside never function](./205) | 🔲 | - | - | - |
| 30 | ❌ | [non-void function which has return statement that not filled with value](./206) | 🔲 | - | - | - |
| 31 | ❌ | [void function which has return statement that filled with value](./207) | 🔲 | - | - | - |
| 32 | ❌ | [accessing enum instance and static property](./208) | 🔲 | - | - | - |
| 33 | ❌ | [enum case does not exist](./209) | 🔲 | - | - | - |
| 34 | ❌ | [Converting Enum or Enum case](./210) | 🔲 | - | - | - |
| 35 | ❌ | [enum assigned as a reference](./211) | 🔲 | - | - | - |
| 36 | ❌ | [defining forbidden enum methods](./212) | - | 🔲 | - | - |
| 37 | ❌ | [enum instantiation](./213) | 🔲 | - | - | - |
| 38 | ⚠️ | [comparing enum case](./214) | 🔲 | - | - | - |
| 39 | ❌ | [duplicate, invalid, or missing value of backed enum](./215) | - | - | 🔲 | - |
| 40 | ❌ | [enum using trait which requires property](./216) | - | - | - | 🔲 |
| 41 | ❌ | [using enum as array key](./217) | 🔲 | - | - | - |
| 42 | ❌ | [using invalid attribute constant](./218) | - | 🔲 | 🔲 | 🔲 |
| 43 | ⚠️ | [using $this when not in object context](./219) | 🔲 | - | - | - |
| 44 | ❌ | [accessing undeclared/inaccessible static property](./220) | 🔲 | - | - | - |
| 45 | ❌ | [instantiation in class constant declaration](./221) | - | - | 🔲 | - |
| 46 | ❌ | [unpacking variable other than array or Traversables](./222) | 🔲 | - | - | - |
| 47 | ❌ | [counting variable member other than array or Countable](./223) | 🔲 | - | - | - |
| 48 | ❌ | [accessing property with array syntax other than class which implements ArrayAccess](./224) | 🔲 | - | - | - |
| 49 | ❌ | [accessing undeclared/inaccessible instance property](./225) | 🔲 | - | - | - |
| 50 | ❌ | [invoking undeclared/inaccessible instance method](./226) | 🔲 | - | - | - |
| 51 | ❌ | [invoking undeclared/inaccessible static method](./227) | 🔲 | - | - | - |
| 52 | 🎯 | [implicit implements Stringable declaration](./228) | - | - | - | 🔲 |
| 53 | ❌ | [accessing undeclared/inaccessible class constant](./229) | 🔲 | - | - | - |
| 54 | ❌ | [accessing/invoking all trait member using trait name](./230) | 🔲 | - | - | - |
| 55 | ❌ | [mismatch between default value and property type](./231) | - | - | 🔲 | - |
| 56 | ❌ | [defining property promotion on interface/abstract class](./232) | - | 🔲 | - | - |
| 57 | ❌ | [using forbidden modifier on interface](./233) | - | - | - | 🔲 |
| 58 | 🎯 | [missing visibility modifier](./234) | - | 🔲 | 🔲 | - |
| 59 | 🎯 | [non lowercase keyword](./235) | 🔲 | 🔲 | 🔲 | 🔲 |
| 60 | 🎯 | [using var on property](./236) | - | - | 🔲 | - |