-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.editorconfig
More file actions
121 lines (108 loc) · 5.55 KB
/
Copy path.editorconfig
File metadata and controls
121 lines (108 loc) · 5.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
root = true
[*.cs]
indent_style = space
indent_size = 4
end_of_line = lf
dotnet_diagnostic.IDE0005.severity = warning
csharp_style_namespace_declarations = file_scoped:warning
# Desktop Avalonia app: awaited continuations must keep the UI Dispatcher context, so
# CA2007 (missing ConfigureAwait) is not actionable here — suppress app-wide.
dotnet_diagnostic.CA2007.severity = none
# CA1716 is a cross-language (VB/C# interop) naming rule with no value for this C#-only app:
# interface members Get/Stop/Operator and parameters set/to are idiomatic here, and the
# LageBuch.App.Shared namespace root cannot be sanely renamed. Suppress app-wide.
dotnet_diagnostic.CA1716.severity = none
# StyleCop.Analyzers: curated for this codebase. Rules disabled below either
# conflict with an established convention or don't fit a project that doesn't
# mandate XML documentation (CS1591 is already suppressed above). Everything
# else keeps StyleCop's shipped default severity, which becomes a build error
# via TreatWarningsAsErrors.
# SA1101: this. prefix required on every member access - fights the _camelCase
# private-field convention already used throughout (see below).
dotnet_diagnostic.SA1101.severity = none
# SA1201/SA1202/SA1204: member-kind/access/static ordering. No code-fix
# support exists for any of these - every violation needs manual reordering.
# The codebase organizes members by domain/lifecycle grouping (e.g. a
# registration factory next to the validation it calls) rather than by kind
# or access level, and there's no functional benefit to forcing the churn.
dotnet_diagnostic.SA1201.severity = none
dotnet_diagnostic.SA1202.severity = none
dotnet_diagnostic.SA1204.severity = none
# SA1402: one type per file. Several files (SyncCommand.cs, IncidentSnapshot.cs,
# MasterDataSet.cs, ...) deliberately group a closed set of small related
# record types together (a DU-style command/DTO set) so the whole set reads
# in one place - splitting each into its own file would scatter that and add
# dozens of one-line files for no benefit.
dotnet_diagnostic.SA1402.severity = none
# SA1312: local variables must begin with a lower-case letter. Its walker doesn't recognize
# `using var _ = ...` / `await using var _ = ...` as the discard idiom it is - the test suite
# uses this pattern throughout for scope-based disposal without a named variable.
dotnet_diagnostic.SA1312.severity = none
# SA1309: private fields must not begin with an underscore - the whole
# codebase already uses _camelCase for private fields.
dotnet_diagnostic.SA1309.severity = none
# SA1600-SA1649: "documentation rules" family (elements/parameters/return
# values/generic type params must be documented, file headers, etc.).
# Documentation is optional here, not mandated - keep SA1649
# (FileNameMustMatchTypeName) enabled, it's an unrelated naming check.
dotnet_diagnostic.SA1600.severity = none
dotnet_diagnostic.SA1601.severity = none
dotnet_diagnostic.SA1602.severity = none
dotnet_diagnostic.SA1604.severity = none
dotnet_diagnostic.SA1605.severity = none
dotnet_diagnostic.SA1606.severity = none
dotnet_diagnostic.SA1607.severity = none
dotnet_diagnostic.SA1608.severity = none
dotnet_diagnostic.SA1609.severity = none
dotnet_diagnostic.SA1610.severity = none
dotnet_diagnostic.SA1611.severity = none
dotnet_diagnostic.SA1612.severity = none
dotnet_diagnostic.SA1613.severity = none
dotnet_diagnostic.SA1614.severity = none
dotnet_diagnostic.SA1615.severity = none
dotnet_diagnostic.SA1616.severity = none
dotnet_diagnostic.SA1617.severity = none
dotnet_diagnostic.SA1618.severity = none
dotnet_diagnostic.SA1619.severity = none
dotnet_diagnostic.SA1620.severity = none
dotnet_diagnostic.SA1621.severity = none
dotnet_diagnostic.SA1622.severity = none
dotnet_diagnostic.SA1623.severity = none
dotnet_diagnostic.SA1624.severity = none
dotnet_diagnostic.SA1625.severity = none
dotnet_diagnostic.SA1627.severity = none
dotnet_diagnostic.SA1629.severity = none
dotnet_diagnostic.SA1633.severity = none
dotnet_diagnostic.SA1634.severity = none
dotnet_diagnostic.SA1635.severity = none
dotnet_diagnostic.SA1636.severity = none
dotnet_diagnostic.SA1637.severity = none
dotnet_diagnostic.SA1638.severity = none
dotnet_diagnostic.SA1639.severity = none
dotnet_diagnostic.SA1640.severity = none
dotnet_diagnostic.SA1641.severity = none
dotnet_diagnostic.SA1642.severity = none
dotnet_diagnostic.SA1643.severity = none
dotnet_diagnostic.SA1648.severity = none
[tests/**/*.cs]
# xUnit method names with underscores are idiomatic.
dotnet_diagnostic.CA1707.severity = none
# Perf/impl-noise rules — they add churn to test code without catching real bugs.
dotnet_diagnostic.CA1861.severity = none
dotnet_diagnostic.CA2000.severity = none
dotnet_diagnostic.CA1063.severity = none
dotnet_diagnostic.CA1816.severity = none
dotnet_diagnostic.CA1826.severity = none
dotnet_diagnostic.CA2008.severity = none
dotnet_diagnostic.CA1829.severity = none
dotnet_diagnostic.CA2213.severity = none
dotnet_diagnostic.CA2025.severity = none
[{src/LageBuch.App.Android/*.cs,src/LageBuch.App.Android/**/*.cs}]
# Java-managed objects (Intent, Java.IO.File, ActivityResultLauncher, ActivityResultContracts.*)
# have their lifetime owned by the Android runtime: they must survive past the C# call that hands
# them to the platform (StartActivity / RegisterForActivityResult), so "dispose" here would break
# the OS callbacks. MimeTypeOf likewise deliberately produces lowercase MIME values, which
# Intent.SetDataAndType expects — ToUpperInvariant (CA1308) would violate that contract.
dotnet_diagnostic.CA1308.severity = none
dotnet_diagnostic.CA2000.severity = none
dotnet_diagnostic.CA2213.severity = none