-
Notifications
You must be signed in to change notification settings - Fork 26
/
.editorconfig
114 lines (93 loc) · 4.54 KB
/
.editorconfig
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
#TODO move this to lancache common
root = true
[*]
end_of_line = lf
[*.js]
indent_style = tab
tab_size = 4
curly_bracket_next_line = true
[*.py]
indent_style = tab
tab_size = 4
[*.csproj]
indent_style = space
indent_size = 2
# .NET formatting rules. See https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/formatting-rules
# Resharper Rules. See https://www.jetbrains.com/help/resharper/EditorConfig_Index.html
[*.cs]
# TODO change this to tab in all projects.
indent_style = space
indent_size = 4
# ----- Resharper Rules -----
# https://www.jetbrains.com/help/resharper/EditorConfig_CSHARP_CSharpIndentStylePageSchema.html#resharper_csharp_align_linq_query
align_linq_query = true
align_multiline_calls_chain = true
# Won't force add blank lines after block statements
blank_lines_after_block_statements = 0
csharp_prefer_braces = true
csharp_space_after_cast = false
indent_preprocessor_region = do_not_change
space_between_attribute_sections = false
# CA1002: Do not expose generic lists
dotnet_diagnostic.CA1002.severity = none
# CA1008: Enums should have zero value
# - The enums in this case are modeling Steam enums, so I have to match them exactly.
dotnet_diagnostic.CA1008.severity = none
# CA1014: Mark assemblies with CLSCompliant
dotnet_diagnostic.CA1014.severity = none
# CA1031: Modify (method) to catch a more specific allowed exception type, or rethrow the exception
dotnet_diagnostic.CA1031.severity = none
# CA1034: Nested types should not be visible
dotnet_diagnostic.CA1034.severity = none
# CA1051: Do not declare visible instance fields
dotnet_diagnostic.CA1051.severity = none
# CA1054: URI parameters should not be strings
dotnet_diagnostic.CA1054.severity = none
# CA1056: URI properties should not be strings
dotnet_diagnostic.CA1056.severity = none
# CA1062: Validate arguments of public methods
dotnet_diagnostic.CA1062.severity = none
# CA1305: The behavior of 'int.Parse(string)' could vary based on the current user's locale settings.
dotnet_diagnostic.CA1305.severity = none
# CA1307: Specify StringComparison for clarity
dotnet_diagnostic.CA1307.severity = none
dotnet_diagnostic.CA1310.severity = none
# CA1815: Override equals and operator equals on value types
dotnet_diagnostic.CA1815.severity = none
# CA1822: Member does not access instance data and can be marked as static
dotnet_diagnostic.CA1822.severity = none
# CA1854: Prefer the IDictionary.TryGetValue(TKey, out TValue) method
# - I'm not worried about performance in this application where ContainsKey() is being used, and I like the current syntax as far as readability
dotnet_diagnostic.CA1854.severity = none
# CA1860: Avoid using 'Enumerable.Any()' extension method, both for clarity and performance
# - I don't agree with this analyzer, using Any() is far more readable than comparing Count == 0, and has been a pattern in dotnet for more than a decade
dotnet_diagnostic.CA1860.severity = none
# CA2007: Consider calling ConfigureAwait on the awaited task
dotnet_diagnostic.CA2007.severity = none
# CA2201: Do not raise reserved exception types
dotnet_diagnostic.CA2201.severity = none
# CS1998: Async method lacks 'await' operators and will run synchronously
dotnet_diagnostic.cs1998.severity = error
# CS4014: Because this call is not awaited, execution of the current method continues before the call is completed
dotnet_diagnostic.cs4014.severity = error
# IDE0008 - Use explicit type instead of 'var'
# - No idea why it is now recommending you to not use var anymore. So disabling it.
dotnet_diagnostic.IDE0008.severity = none
# IDE0028: Simplify collection initialization
# - Not a fan of the syntax, feels a little bit too terse
dotnet_style_prefer_collection_expression = false
# IDE0074: Use compound assignment
# - I'm not a big fan of this syntax, I find it a bit difficult to read similarly how I find ternary operators difficult to read.
dotnet_diagnostic.IDE0074.severity = none
# IDE0090 : 'new' expression can be simplified
csharp_style_implicit_object_creation_when_type_is_apparent = false
# IDE0270: Null check can be simplified
dotnet_style_coalesce_expression = false
dotnet_diagnostic.IDE0270.severity = none
# IDE0290: Use primary constructor
# - I'm a fan of this syntax in Typescript, but it still feels a bit too jarring seeing it C# now
csharp_style_prefer_primary_constructors = false
# Banned APIs will be bumped up to an error instead of warning
dotnet_diagnostic.rs0030.severity = error
# The method does not need to use async/await - Introduces annoying 'return' statements for async methods, that hurt code readability.
dotnet_diagnostic.AsyncFixer01.severity = none