1- php_version = " 8.4.0"
1+ php-version = " 8.4.0"
22
33[source ]
44paths = [" src" , " packages" , " tests" ]
@@ -15,130 +15,52 @@ excludes = [
1515 " **/*.expected.php" ,
1616]
1717
18- [format ]
19- print_width = 180
20- tab_width = 4
21- use_tabs = false
22- space_after_logical_not_unary_prefix_operator = true
23- null_type_hint = " question"
24- space_before_arrow_function_parameter_list_parenthesis = true
25- always_break_named_arguments_list = false
26- preserve_breaking_member_access_chain = true
27- preserve_breaking_argument_list = true
28- preserve_breaking_array_like = true
29- preserve_breaking_parameter_list = true
30- preserve_breaking_attribute_list = true
31- preserve_breaking_conditional_expression = true
32- empty_line_after_opening_tag = false
18+ [formatter ]
19+ print-width = 180
20+ tab-width = 4
21+ use-tabs = false
22+ space-after-logical-not-unary-prefix-operator = true
23+ null-type-hint = " question"
24+ space-before-arrow-function-parameter-list-parenthesis = true
25+ always-break-named-arguments-list = false
26+ preserve-breaking-member-access-chain = true
27+ preserve-breaking-argument-list = true
28+ preserve-breaking-array-like = true
29+ preserve-breaking-parameter-list = true
30+ preserve-breaking-attribute-list = true
31+ preserve-breaking-conditional-expression = true
32+ empty-line-after-opening-tag = false
3333
3434[linter ]
35- default_plugins = true
36- plugins = [" symfony" , " php-unit" ]
37-
38- # MAINTENABILITY
39- [[linter .rules ]]
40- name = " maintainability/too-many-enum-cases"
41- level = " off"
42-
43- [[linter .rules ]]
44- name = " maintainability/excessive-parameter-list"
45- level = " off"
46-
47- [[linter .rules ]]
48- name = " maintainability/halstead"
49- level = " off"
50-
51- [[linter .rules ]]
52- name = " maintainability/too-many-methods"
53- level = " off"
54-
55- [[linter .rules ]]
56- name = " maintainability/kan-defect"
57- level = " off"
58-
59- [[linter .rules ]]
60- name = " maintainability/cyclomatic-complexity"
61- level = " off"
62-
63- # STRICTNESS
64- [[linter .rules ]]
65- name = " strictness/require-return-type"
66- ignore_arrow_function = true
67- ignore_closure = true
68-
69- # https://github.com/carthage-software/mago/issues/206
70- [[linter .rules ]]
71- name = " best-practices/literal-named-argument"
72- level = " off"
73-
74- # https://github.com/carthage-software/mago/issues/146
75- [[linter .rules ]]
76- name = " strictness/require-strict-types"
77- level = " off"
78-
79- [[linter .rules ]]
80- name = " strictness/require-parameter-type"
81- ignore_arrow_function = true
82- ignore_closure = true
83-
84- [[linter .rules ]]
85- name = " strictness/no-shorthand-ternary"
86- level = " off"
87-
88- [[linter .rules ]]
89- name = " strictness/no-assignment-in-condition"
90- level = " off"
91-
92- # BEST PRACTICES
93- [[linter .rules ]]
94- name = " best-practices/no-else-clause"
95- level = " off"
96-
97- [[linter .rules ]]
98- name = " best-practices/no-boolean-literal-comparison"
99- level = " off"
100-
101- [[linter .rules ]]
102- name = " best-practices/no-boolean-flag-parameter"
103- level = " off"
104-
105- # SAFETY
106- [[linter .rules ]]
107- name = " safety/no-error-control-operator"
108- level = " off"
109-
110- # PHPUNIT
111- [[linter .rules ]]
112- name = " php-unit/assertions-style"
113- style = " this"
114-
115- [[linter .rules ]]
116- name = " php-unit/strict-assertions"
117- level = " off"
118-
119- # NAMING
120- [[linter .rules ]]
121- name = " naming/interface"
122- psr = false
123-
124- [[linter .rules ]]
125- name = " naming/trait"
126- psr = false
127-
128- [[linter .rules ]]
129- name = " naming/class"
130- psr = false
131-
132- # HELP
133- [[linter .rules ]]
134- name = " redundancy/redundant-file"
135- level = " off"
136-
137- # CONSIDER ENABLING
138- [[linter .rules ]]
139- name = " analysis/override-attribute"
140- level = " off"
141-
142- [[linter .rules ]]
143- name = " comment/no-untagged-todo"
144- level = " off"
35+ integrations = [" php-unit" , " tempest" ]
36+
37+ [linter .rules ]
38+ interface-name = { psr = false }
39+ trait-name = { psr = false }
40+ class-name = { psr = false }
41+ literal-named-argument = { enabled = false } # todo
42+ no-error-control-operator = { enabled = false }
43+ no-boolean-literal-comparison = { enabled = false }
44+ too-many-methods = { enabled = false }
45+ kan-defect = { enabled = false }
46+ cyclomatic-complexity = { enabled = false }
47+ return-type = { ignore-arrow-function = true , ignore-closure = true }
48+ parameter-type = { ignore-arrow-function = true , ignore-closure = true }
49+ too-many-enum-cases = { enabled = false }
50+ no-redundant-file = { enabled = false }
51+ assertion-style = { style = " this" }
52+ strict-assertions = { enabled = false }
53+ no-else-clause = { enabled = false }
54+ no-boolean-flag-parameter = { enabled = false }
55+ no-shorthand-ternary = { enabled = false }
56+ no-assign-in-condition = { enabled = false }
57+ strict-types = { enabled = false } # https://github.com/carthage-software/mago/issues/146
58+ tagged-todo = { enabled = false } # CONSIDER ENABLING
59+ excessive-parameter-list = { enabled = false } # https://github.com/carthage-software/mago/issues/206
60+ halstead = { enabled = false }
61+ prefer-arrow-function = { enabled = false } # enable when references are fixed
62+ prefer-first-class-callable = { enabled = false } # enable when arguments are fixed
63+ strict-behavior = { allow-loose-behavior = true }
64+
65+ # [analyzer]
66+ # override-attribute = { enabled = false } # CONSIDER ENABLING
0 commit comments