mirror of
https://github.com/sshnet/SSH.NET.git
synced 2026-09-10 17:25:51 +00:00
f5e6ce710c
* Bump the dependencies group with 11 updates Bumps coverlet.collector from 6.0.4 to 10.0.1 Bumps coverlet.msbuild from 6.0.4 to 10.0.1 Bumps GitHubActionsTestLogger from 3.0.1 to 3.0.4 Bumps Meziantou.Analyzer from 3.0.18 to 3.0.114 Bumps Microsoft.Bcl.Cryptography from 10.0.3 to 10.0.9 Bumps Microsoft.Extensions.Logging.Console from 10.0.3 to 10.0.9 Bumps MSTest from 4.1.0 to 4.2.3 Bumps PolySharp from 1.15.0 to 1.16.0 Bumps SonarAnalyzer.CSharp from 10.20.0.135146 to 10.27.0.140913 Bumps System.Formats.Asn1 from 10.0.3 to 10.0.9 Bumps Testcontainers from 4.10.0 to 4.12.0 Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Robert Hague <rh@johnstreetcapital.com>
1537 lines
55 KiB
INI
1537 lines
55 KiB
INI
# Avoid looking for .editorconfig files in parent directories
|
||
root=true
|
||
|
||
[*]
|
||
|
||
insert_final_newline = true
|
||
indent_style = space
|
||
indent_size = 4
|
||
tab_width = 4
|
||
spelling_languages = en-us,en-gb
|
||
spelling_exclusion_path = exclusion.dic
|
||
spelling_checkable_types = all
|
||
|
||
[*.{xml,csproj,props}]
|
||
|
||
indent_size = 2
|
||
tab_width = 2
|
||
|
||
[*.cs]
|
||
|
||
#### Sonar rules ####
|
||
|
||
# S101: Types should be named in PascalCase
|
||
# https://rules.sonarsource.com/csharp/RSPEC-101
|
||
#
|
||
# TODO: Remove this when code has been updated!
|
||
dotnet_diagnostic.S101.severity = none
|
||
|
||
# S112: General exceptions should never be thrown
|
||
# https://rules.sonarsource.com/csharp/RSPEC-112
|
||
#
|
||
# This is a duplicate of CA2201 and MA0012.
|
||
dotnet_diagnostic.S112.severity = none
|
||
|
||
# S127: "for" loop stop conditions should be invariant
|
||
# https://rules.sonarsource.com/csharp/RSPEC-127
|
||
#
|
||
# Limited use.
|
||
dotnet_diagnostic.S127.severity = none
|
||
|
||
# S907: Remove use of 'goto'
|
||
# https://rules.sonarsource.com/csharp/RSPEC-907
|
||
#
|
||
# Limited use of 'goto' is accepted when performance is critical.
|
||
dotnet_diagnostic.S907.severity = none
|
||
|
||
# S1066: Collapsible "if" statements should be merged
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1066
|
||
#
|
||
dotnet_diagnostic.S1066.severity = none
|
||
|
||
# S1075: URIs should not be hardcoded
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1075
|
||
#
|
||
# The rule reports false positives for XML namespaces.
|
||
dotnet_diagnostic.S1075.severity = none
|
||
|
||
# S1104: Fields should not have public accessibility
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1104
|
||
#
|
||
# This is a duplicate of SA1401 and CA1051.
|
||
dotnet_diagnostic.S1104.severity = none
|
||
|
||
# S1125: Boolean literals should not be redundant
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1125
|
||
#
|
||
# This is a duplicate of MA0073.
|
||
dotnet_diagnostic.S1125.severity = none
|
||
|
||
# S1135: Track uses of "TODO" tags
|
||
#
|
||
# This is a duplicate of MA0026.
|
||
dotnet_diagnostic.S1135.severity = none
|
||
|
||
|
||
# SA1137: Elements should have the same indentation
|
||
# https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1137.md
|
||
# duplicate of IDE0055
|
||
dotnet_diagnostic.SA1137.severity = none
|
||
|
||
# S1168: Empty arrays and collections should be returned instead of null
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1168
|
||
#
|
||
# We sometimes return null to avoid allocating an empty List<T>.
|
||
dotnet_diagnostic.S1168.severity = none
|
||
|
||
# S1144: Unused private types or members should be removed
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1144
|
||
#
|
||
# This is a duplicate of IDE0051.
|
||
dotnet_diagnostic.S1144.severity = none
|
||
|
||
# S1172: Unused method parameters should be removed
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1172
|
||
#
|
||
# This is a duplicate of IDE0060.
|
||
dotnet_diagnostic.S1172.severity = none
|
||
|
||
# S1199: Nested code blocks should not be used
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1199
|
||
dotnet_diagnostic.S1199.severity = none
|
||
|
||
# S1481: Unused local variables should be removed
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1481
|
||
#
|
||
# This is a duplicate of IDE0059.
|
||
dotnet_diagnostic.S1481.severity = none
|
||
|
||
# S1854: Unused assignments should be removed
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1854
|
||
#
|
||
# This is a duplicate of IDE0059.
|
||
dotnet_diagnostic.S1854.severity = none
|
||
|
||
# S1944: Invalid casts should be avoided
|
||
# https://rules.sonarsource.com/csharp/RSPEC-1944/
|
||
#
|
||
# Disabled due to build performance impact.
|
||
dotnet_diagnostic.S1944.severity = none
|
||
|
||
# S2053: Hashes should include an unpredictable salt
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2053/
|
||
#
|
||
# Disabled due to build performance impact /
|
||
# We need to specify the salt.
|
||
dotnet_diagnostic.S2053.severity = none
|
||
|
||
# S2259: Null pointers should not be dereferenced
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2259
|
||
#
|
||
# The analysis is not precise enough, leading to false positives.
|
||
dotnet_diagnostic.S2259.severity = none
|
||
|
||
# S2292: Trivial properties should be auto-implemented
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2292
|
||
#
|
||
# This is a duplicate of IDE0032.
|
||
dotnet_diagnostic.S2292.severity = none
|
||
|
||
# S2325: Methods and properties that don't access instance data should be static
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2325
|
||
#
|
||
# This is a duplicate of CA1822
|
||
dotnet_diagnostic.S2325.severity = none
|
||
|
||
# S2445: Blocks should be synchronized on read-only fields
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2445
|
||
#
|
||
# This is a (partial) duplicate of MA0064.
|
||
dotnet_diagnostic.S2445.severity = none
|
||
|
||
# S2551: Shared resources should not be used for locking
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2551
|
||
#
|
||
# This is a duplicate of CA2002, and partial duplicate of MA0064.
|
||
dotnet_diagnostic.S2551.severity = none
|
||
|
||
# S2583: Conditionally executed code should be reachable
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2583
|
||
#
|
||
# Disabled due to build performance impact /
|
||
# This rule produces false errors in, for example, for loops.
|
||
dotnet_diagnostic.S2583.severity = none
|
||
|
||
# S2699: Tests should include assertions
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2699
|
||
#
|
||
# Sometimes you want a test in which you invoke a method and just want to verify that it does not throw.
|
||
# For example:
|
||
# [TestMethod]
|
||
# public void InvokeDisposeWithoutNotifyObjectShouldNotThrow()
|
||
# {
|
||
# _timer.Dispose();
|
||
# }
|
||
dotnet_diagnostic.S2699.severity = none
|
||
|
||
# S2930: "IDisposables" should be disposed
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2930/
|
||
#
|
||
# too noisy.
|
||
dotnet_diagnostic.S2930.severity = none
|
||
|
||
# S2933: Fields that are only assigned in the constructor should be "readonly"
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2933
|
||
#
|
||
# This is a duplicate of IDE0044, but IDE0044 is not reported when targeting .NET Framework 4.8.
|
||
dotnet_diagnostic.S2933.severity = none
|
||
|
||
# S2971: "IEnumerable" LINQs should be simplified
|
||
# https://rules.sonarsource.com/csharp/RSPEC-2971
|
||
#
|
||
# This is a duplicate of MA0020.
|
||
dotnet_diagnostic.S2971.severity = none
|
||
|
||
# S3218: Inner class members should not shadow outer class "static" or type members
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3218
|
||
#
|
||
# This is rather harmless.
|
||
dotnet_diagnostic.S3218.severity = none
|
||
|
||
# S3236: Remove this argument from the method call; it hides the caller information.
|
||
dotnet_diagnostic.S3236.severity = none
|
||
|
||
# S3267: Loops should be simplified with "LINQ" expressions
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3267
|
||
#
|
||
# LINQ is the root of all evil :p
|
||
dotnet_diagnostic.S3267.severity = none
|
||
|
||
# S3329: Cipher Block Chaining IVs should be unpredictable
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3329/
|
||
dotnet_diagnostic.S3329.severity = none
|
||
|
||
# S3376: Attribute, EventArgs, and Exception type names should end with the type being extended
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3376
|
||
#
|
||
# This is a partial duplicate of MA0058. If we enable the Sonar in all repositories, we should
|
||
# consider enabling S3376 in favor of MA0058.
|
||
dotnet_diagnostic.S3376.severity = none
|
||
|
||
# S3442: "abstract" classes should not have "public" constructors
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3442
|
||
#
|
||
# This is a duplicate of MA0017.
|
||
dotnet_diagnostic.S3442.severity = none
|
||
|
||
# S3450: Parameters with "[DefaultParameterValue]" attributes should also be marked "[Optional]"
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3450
|
||
#
|
||
# This is a duplicate of MA0087.
|
||
dotnet_diagnostic.S3450.severity = none
|
||
|
||
# S3459: Unassigned members should be removed
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3459/
|
||
#
|
||
# Duplicate of IDE0051/IDE0052
|
||
dotnet_diagnostic.S3459.severity = none
|
||
|
||
# S3626: Jump statements should not be redundant
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3626/
|
||
#
|
||
# Disabled due to build performance impact.
|
||
dotnet_diagnostic.S3626.severity = none
|
||
|
||
# S3655: Empty nullable value should not be accessed
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3655/
|
||
#
|
||
# Disabled due to build performance impact.
|
||
dotnet_diagnostic.S3655.severity = none
|
||
|
||
# S3871: Exception types should be "public"
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3871
|
||
#
|
||
# This is a duplicate of CA1064.
|
||
dotnet_diagnostic.S3871.severity = none
|
||
|
||
# S3900: Arguments of public methods should be validated against null
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3900/
|
||
#
|
||
# This is a duplicate of CA1062.
|
||
dotnet_diagnostic.S3900.severity = none
|
||
|
||
# S3903: Types should be defined in named namespaces
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3903
|
||
#
|
||
# This is a duplicate of MA0047.
|
||
dotnet_diagnostic.S3903.severity = none
|
||
|
||
# S3925: "ISerializable" should be implemented correctly
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3925
|
||
#
|
||
# This is a duplicate of CA2229.
|
||
dotnet_diagnostic.S3925.severity = none
|
||
|
||
# S3928: Parameter names used into ArgumentException constructors should match an existing one
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3928
|
||
#
|
||
# This is a duplicate of MA0015.
|
||
dotnet_diagnostic.S3928.severity = none
|
||
|
||
# S3949: Calculations should not overflow
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3949/
|
||
#
|
||
# Disabled due to build performance impact.
|
||
dotnet_diagnostic.S3949.severity = none
|
||
|
||
# S3998: Threads should not lock on objects with weak identity
|
||
# https://rules.sonarsource.com/csharp/RSPEC-3998
|
||
#
|
||
# This is a duplicate of CA2002, and partial duplicate of MA0064.
|
||
dotnet_diagnostic.S3998.severity = none
|
||
|
||
# S4070: Non-flags enums should not be marked with "FlagsAttribute"
|
||
# https://rules.sonarsource.com/csharp/RSPEC-4070
|
||
#
|
||
# This is a duplicate of MA0062.
|
||
dotnet_diagnostic.S4070.severity = none
|
||
|
||
# S4158: Empty collections should not be accessed or iterated
|
||
# https://rules.sonarsource.com/csharp/RSPEC-4158/
|
||
#
|
||
# Disabled due to build performance impact.
|
||
dotnet_diagnostic.S4158.severity = none
|
||
|
||
# S4423: Weak SSL/TLS protocols should not be used
|
||
# https://rules.sonarsource.com/csharp/RSPEC-4423/
|
||
dotnet_diagnostic.S4423.severity = none
|
||
|
||
# S4456: Parameter validation in yielding methods should be wrapped
|
||
# https://rules.sonarsource.com/csharp/RSPEC-4456
|
||
#
|
||
# This is a duplicate of MA0050.
|
||
dotnet_diagnostic.S4456.severity = none
|
||
|
||
# S4487: Unread "private" fields should be removed
|
||
# https://rules.sonarsource.com/csharp/RSPEC-4487
|
||
#
|
||
# This is a duplicate of IDE0052.
|
||
dotnet_diagnostic.S4487.severity = none
|
||
|
||
# S4581: "new Guid()" should not be used
|
||
# https://rules.sonarsource.com/csharp/RSPEC-4581
|
||
#
|
||
# This is a partial duplicate of MA0067, and we do not want to report the use of 'default' for a Guid as error.
|
||
dotnet_diagnostic.S4581.severity = none
|
||
|
||
# S4830: Server certificates should be verified during SSL/TLS connections
|
||
# https://rules.sonarsource.com/csharp/RSPEC-4830/
|
||
dotnet_diagnostic.S4830.severity = none
|
||
|
||
# S5542: Encryption algorithms should be used with secure mode and padding scheme
|
||
# https://rules.sonarsource.com/csharp/RSPEC-5542/
|
||
dotnet_diagnostic.S5542.severity = none
|
||
|
||
# S5547: Cipher algorithms should be robust
|
||
# https://rules.sonarsource.com/csharp/RSPEC-5547/
|
||
dotnet_diagnostic.S5547.severity = none
|
||
|
||
# S5659: JWT should be signed and verified with strong cipher algorithms
|
||
# https://rules.sonarsource.com/csharp/RSPEC-5659/
|
||
dotnet_diagnostic.S5659.severity = none
|
||
|
||
# S5773: Types allowed to be deserialized should be restricted
|
||
# https://rules.sonarsource.com/csharp/RSPEC-5773/
|
||
dotnet_diagnostic.S4581.severity = none
|
||
|
||
# S6966: Awaitable method should be used
|
||
# Duplicate of CA1849
|
||
dotnet_diagnostic.S6966.severity = none
|
||
|
||
#### StyleCop rules ####
|
||
|
||
# SA1003: Symbols must be spaced correctly
|
||
#
|
||
# When enabled, a diagnostic is produced when there's a space after a cast.
|
||
# For example:
|
||
# var x = (int) z;
|
||
dotnet_diagnostic.SA1003.severity = none
|
||
|
||
# SA1008: Opening parenthesis should not be preceded by a space
|
||
#
|
||
# When enabled, a diagnostic is produce when a cast precedes braces.
|
||
# For example:
|
||
# (long) (a * b)
|
||
dotnet_diagnostic.SA1008.severity = none
|
||
|
||
# SA1009: Closing parenthesis should not be followed by a space
|
||
#
|
||
# When enabled, a diagnostic is produced when there's a space after a cast.
|
||
# For example:
|
||
# var x = (int) z;
|
||
dotnet_diagnostic.SA1009.severity = none
|
||
|
||
# SA1025: Code should not contain multiple whitespace in a row
|
||
# https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1025.md
|
||
# duplicate of IDE0055
|
||
dotnet_diagnostic.SA1025.severity = none
|
||
|
||
# SA1101: Prefix local calls with this
|
||
dotnet_diagnostic.SA1101.severity = none
|
||
|
||
# SA1116: Split parameters must start on line after declaration
|
||
#
|
||
# When enabled, a diagnostic is produced when the first parameter is on the same line as the method or constructor.
|
||
# For example:
|
||
# arrayBuilder.Add(new StatisticsCallInfo(callsByType.Key,
|
||
# callsForType.Count);
|
||
dotnet_diagnostic.SA1116.severity = none
|
||
|
||
# SA1121: Use built-in type alias
|
||
# https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1121.md
|
||
#
|
||
# Duplicate of IDE0049.
|
||
dotnet_diagnostic.SA1121.severity = none
|
||
|
||
# SA1200: Using directives must be placed correctly
|
||
#
|
||
# This is already verified by the .NET compiler platform analyzers (csharp_using_directive_placement option and IDE0065 rule).
|
||
dotnet_diagnostic.SA1200.severity = none
|
||
|
||
# SA1201: Elements must appear in the correct order
|
||
dotnet_diagnostic.SA1201.severity = none
|
||
|
||
# SA1206: Modifiers are not ordered
|
||
# https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1206.md
|
||
#
|
||
# This is a duplicate of IDE0036, except that it cannot be configured and expects the required modifier to be before the
|
||
# accessibility modifier.
|
||
dotnet_diagnostic.SA1206.severity = none
|
||
|
||
# SA1309: Field names must not begin with underscore
|
||
dotnet_diagnostic.SA1309.severity = none
|
||
|
||
# SA1405: Debug.Assert should provide message text
|
||
#
|
||
# To be discussed if we want to enable this.
|
||
dotnet_diagnostic.SA1405.severity = none
|
||
|
||
# SA1413: Use trailing comma in multi-line initializers
|
||
dotnet_diagnostic.SA1413.severity = none
|
||
|
||
# SA1503: Braces should not be omitted
|
||
#
|
||
# This is a duplicate of IDE0011.
|
||
dotnet_diagnostic.SA1503.severity = none
|
||
|
||
# SA1512: Single-line comments should not be followed by a blank line
|
||
#
|
||
# Blank lines can improve readability.
|
||
dotnet_diagnostic.SA1512.severity = none
|
||
|
||
# SA1516: Elements must be separated by blank line
|
||
#
|
||
# When enabled, a diagnostic is produced for properties with both a get and set accessor.
|
||
# For example:
|
||
# public bool EnableStatistics
|
||
# {
|
||
# get
|
||
# {
|
||
# return _enableStatistics;
|
||
# }
|
||
# set
|
||
# {
|
||
# _enableStatistics = value;
|
||
# }
|
||
# }
|
||
dotnet_diagnostic.SA1516.severity = none
|
||
|
||
# SA1520: Use braces consistently
|
||
#
|
||
# Since we always require braces (configured via csharp_prefer_braces and reported as IDE0011), it does not make sense to check if braces
|
||
# are used consistently.
|
||
dotnet_diagnostic.SA1520.severity = none
|
||
|
||
# SA1633: File must have header
|
||
#
|
||
# We do not use file headers.
|
||
dotnet_diagnostic.SA1633.severity = none
|
||
|
||
# SA1601: Partial elements should be documented
|
||
dotnet_diagnostic.SA1601.severity = none
|
||
|
||
# SA1648: <inheritdoc> must be used with inheriting class
|
||
#
|
||
# This rule is disabled by default, hence we need to explicitly enable it.
|
||
dotnet_diagnostic.SA1648.severity = warning
|
||
|
||
# SX1101: Do not prefix local members with 'this.'
|
||
#
|
||
# This rule is disabled by default, hence we need to explicitly enable it.
|
||
dotnet_diagnostic.SX1101.severity = warning
|
||
|
||
# SX1309: Field names must begin with underscore
|
||
#
|
||
# This rule is disabled by default, hence we need to explicitly enable it.
|
||
dotnet_diagnostic.SX1309.severity = warning
|
||
|
||
# SX1309S: Static field names must begin with underscore
|
||
#
|
||
# This rule is disabled by default, hence we need to explicitly enable it.
|
||
dotnet_diagnostic.SX1309S.severity = warning
|
||
|
||
#### Meziantou.Analyzer rules ####
|
||
|
||
# MA0002: Use an overload that has a IEqualityComparer<string> or IComparer<string> parameter
|
||
#
|
||
# In .NET (Core) there have been quite some optimizations for EqualityComparer<T>.Default (eg. https://github.com/dotnet/coreclr/pull/14125)
|
||
# and Comparer<T>.Default (eg. https://github.com/dotnet/runtime/pull/48160).
|
||
#
|
||
# We'll have to verify impact on performance before we decide to use specific comparers (eg. StringComparer.InvariantCultureIgnoreCase).
|
||
dotnet_diagnostic.MA0002.severity = none
|
||
|
||
# MA0006: Use string.Equals instead of Equals operator
|
||
#
|
||
# We almost always want ordinal comparison, and using the explicit overload adds a little overhead
|
||
# and is more chatty.
|
||
dotnet_diagnostic.MA0006.severity = none
|
||
|
||
# MA0007: Add a comma after the last value
|
||
#
|
||
# We do not add a comma after the last value in multi-line initializers.
|
||
# For example:
|
||
# public enum Sex
|
||
# {
|
||
# Male = 1,
|
||
# Female = 2 // No comma here
|
||
# }
|
||
#
|
||
# Note:
|
||
# This is a duplicate of SA1413.
|
||
dotnet_diagnostic.MA0007.severity = none
|
||
|
||
# MA0009: Add regex evaluation timeout
|
||
#
|
||
# We do not see a need guard our regex's against a DOS attack.
|
||
dotnet_diagnostic.MA0009.severity = none
|
||
|
||
# MA0011: IFormatProvider is missing
|
||
#
|
||
# Also report diagnostic in ToString(...) methods
|
||
MA0011.exclude_tostring_methods = false
|
||
|
||
# MA0012: Do not raise reserved exception type
|
||
#
|
||
# This is a duplicate of CA2201.
|
||
dotnet_diagnostic.MA0012.severity = none
|
||
|
||
# MA0014: Do not raise System.ApplicationException type
|
||
#
|
||
# This is a duplicate of CA2201.
|
||
dotnet_diagnostic.MA0014.severity = none
|
||
|
||
# MA0016: Prefer returning collection abstraction instead of implementation
|
||
#
|
||
# This is a duplicate of CA1002.
|
||
dotnet_diagnostic.MA0016.severity = none
|
||
|
||
# MA0018: Do not declare static members on generic types
|
||
#
|
||
# This is a duplicate of CA1000.
|
||
dotnet_diagnostic.MA0018.severity = none
|
||
|
||
# MA0021: Use StringComparer.GetHashCode instead of string.GetHashCode
|
||
#
|
||
# No strong need for this, and may negatively affect performance.
|
||
dotnet_diagnostic.MA0021.severity = none
|
||
|
||
# MA0025: Implement the functionality instead of throwing NotImplementedException
|
||
# https://github.com/meziantou/Meziantou.Analyzer/blob/main/docs/Rules/MA0031.md
|
||
dotnet_diagnostic.MA0025.severity = none
|
||
|
||
# MA0026: Fix TODO comment
|
||
# https://github.com/meziantou/Meziantou.Analyzer/blob/main/docs/Rules/MA0026.md
|
||
dotnet_diagnostic.MA0026.severity = suggestion
|
||
|
||
# MA0031: Optimize Enumerable.Count() usage
|
||
# https://github.com/meziantou/Meziantou.Analyzer/blob/main/docs/Rules/MA0031.md
|
||
#
|
||
# The proposed code is less readable.
|
||
#
|
||
# For example:
|
||
#
|
||
# the following code fragment:
|
||
# enumerable.Count() > 10;
|
||
#
|
||
# would become:
|
||
# enumerable.Skip(10).Any();
|
||
dotnet_diagnostic.MA0031.severity = none
|
||
|
||
# MA0036: Make class static
|
||
#
|
||
# This is a partial duplicate of CA1052.
|
||
dotnet_diagnostic.MA0036.severity = none
|
||
|
||
# MA0038: Make method static
|
||
#
|
||
# This is a partial duplicate of, and deprecated in favor of, CA1822.
|
||
dotnet_diagnostic.MA0038.severity = none
|
||
|
||
# MA0041: Make property static
|
||
#
|
||
# This is a partial duplicate of, and deprecated in favor of, CA1822.
|
||
dotnet_diagnostic.MA0041.severity = none
|
||
|
||
# MA0048: File name must match type name
|
||
#
|
||
# This is a duplicate of SA1649.
|
||
dotnet_diagnostic.MA0048.severity = none
|
||
|
||
# MA0049: Type name should not match containing namespace
|
||
#
|
||
# This is a duplicate of CA1724
|
||
dotnet_diagnostic.MA0049.severity = none
|
||
|
||
# MA0051: Method is too long
|
||
#
|
||
# We do not want to limit the number of lines or statements per method.
|
||
dotnet_diagnostic.MA0051.severity = none
|
||
|
||
# MA0053: Make class sealed
|
||
#
|
||
# Also report diagnostic for public types.
|
||
MA0053.public_class_should_be_sealed = true
|
||
|
||
# MA0053: Make class sealed
|
||
#
|
||
# Also report diagnostic for types that derive from System.Exception.
|
||
MA0053.exceptions_should_be_sealed = true
|
||
|
||
# MA0053: Make class sealed
|
||
#
|
||
# Also report diagnostic for types that define (new) virtual members.
|
||
MA0053.class_with_virtual_member_shoud_be_sealed = true
|
||
|
||
# MA0112: Use 'Count > 0' instead of 'Any()'
|
||
#
|
||
# This rule is disabled by default, hence we need to explicitly enable it.
|
||
dotnet_diagnostic.MA0112.severity = warning
|
||
|
||
# MA0165: Make interpolated string
|
||
dotnet_diagnostic.MA0165.severity = none
|
||
|
||
# MA0173 - Use LazyInitializer.EnsureInitialize
|
||
dotnet_diagnostic.MA0173.severity = none
|
||
|
||
# MA0182: Avoid unused internal types
|
||
dotnet_diagnostic.MA0182.severity = none
|
||
|
||
# MA0184: Do not use interpolated string without parameters
|
||
dotnet_diagnostic.MA0184.severity = none
|
||
|
||
# MA0190 - Use partial property instead of partial method for GeneratedRegex
|
||
dotnet_diagnostic.MA0190.severity = none
|
||
|
||
# MA0192 - Use HasFlag instead of bitwise checks
|
||
dotnet_diagnostic.MA0192.severity = none
|
||
|
||
#### MSTest rules ####
|
||
|
||
# MSTEST0015: Test method should not be ignored
|
||
dotnet_diagnostic.MSTEST0015.severity = suggestion
|
||
|
||
# MSTEST0032: Assertion condition is always true
|
||
dotnet_diagnostic.MSTEST0032.severity = suggestion
|
||
|
||
#### .NET Compiler Platform code quality rules ####
|
||
|
||
# CA1002: Do not expose generic lists
|
||
#
|
||
# For performance reasons - to avoid interface dispatch - we expose generic lists
|
||
# instead of a base class or interface.
|
||
dotnet_diagnostic.CA1002.severity = none
|
||
|
||
# CA1003: Use generic event handler instances
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1003
|
||
#
|
||
# Similar to MA0046.
|
||
dotnet_diagnostic.CA1003.severity = none
|
||
|
||
# CA1008: Enums should have zero value
|
||
#
|
||
# TODO: To be discussed. Having a zero value offers a performance advantage.
|
||
dotnet_diagnostic.CA1008.severity = none
|
||
|
||
# CA1014: Mark assemblies with CLSCompliantAttribute
|
||
#
|
||
# This rule is disabled by default, hence we need to explicitly enable it.
|
||
#
|
||
# Even when enabled, this diagnostic does not appear to be reported for assemblies without CLSCompliantAttribute.
|
||
# We reported this issue as https://github.com/dotnet/roslyn-analyzers/issues/6563.
|
||
dotnet_diagnostic.CA1014.severity = warning
|
||
|
||
# CA1051: Do not declare visible instance fields
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1051
|
||
#
|
||
# This is a duplicate of S1104 and SA1401.
|
||
dotnet_diagnostic.CA1051.severity = none
|
||
|
||
# CA1052: Static holder types should be Static or NotInheritable
|
||
#
|
||
# By default, this diagnostic is only reported for public types.
|
||
dotnet_code_quality.CA1052.api_surface = all
|
||
|
||
# CA1065: Do not raise exceptions in unexpected locations
|
||
# https://learn.microsoft.com/en-US/dotnet/fundamentals/code-analysis/quality-rules/ca1065
|
||
dotnet_diagnostic.CA1065.severity = none
|
||
|
||
# CA1303: Do not pass literals as localized parameters
|
||
#
|
||
# We don't care about localization.
|
||
dotnet_diagnostic.CA1303.severity = none
|
||
|
||
# CA1305: Specify IFormatProvider
|
||
#
|
||
# This is a an equivalent of MA0011, except that it does not report a diagnostic for the use of
|
||
# DateTime.TryParse(string s, out DateTime result).
|
||
#
|
||
# Submitted https://github.com/dotnet/roslyn-analyzers/issues/6096 to fix CA1305.
|
||
dotnet_diagnostic.CA1305.severity = none
|
||
|
||
# CA1309: Use ordinal StringComparison
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1309
|
||
dotnet_diagnostic.CA1309.severity = none
|
||
|
||
# CA1508: Avoid dead conditional code
|
||
# Too many false positives.
|
||
dotnet_diagnostic.CA1508.severity = none
|
||
|
||
# CA1510: Use ArgumentNullException throw helper
|
||
#
|
||
# This is only available in .NET 6.0 and higher. We'd need to use conditional compilation to only
|
||
# use these throw helper when targeting a framework that supports it.
|
||
dotnet_diagnostic.CA1510.severity = none
|
||
|
||
# CA1725: Parameter names should match base declaration
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1725
|
||
#
|
||
# This is a duplicate of S927, but contains at least one bug:
|
||
# https://github.com/dotnet/roslyn-analyzers/issues/6461
|
||
dotnet_diagnostic.CA1725.severity = none
|
||
|
||
# CA1825: Avoid zero-length array allocations
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1825
|
||
#
|
||
# This is a duplicate of MA0005.
|
||
dotnet_diagnostic.CA1825.severity = none
|
||
|
||
# CA1819: Properties should not return arrays
|
||
#
|
||
# Arrays offer better performance than collections.
|
||
dotnet_diagnostic.CA1819.severity = none
|
||
|
||
# CA1828: Mark members as static
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1822
|
||
#
|
||
# Documentation does not mention which API surface(s) this rule runs on, so we explictly configure it.
|
||
dotnet_code_quality.CA1828.api_surface = all
|
||
|
||
# CA1852: Seal internal types
|
||
#
|
||
# Similar to MA0053, but does not support public types and types that define (new) virtual members.
|
||
dotnet_diagnostic.CA1852.severity = none
|
||
|
||
# CA1848: don't enforce LoggerMessage pattern
|
||
dotnet_diagnostic.CA1848.severity = silent
|
||
|
||
# CA1859: Change return type for improved performance
|
||
#
|
||
# By default, this diagnostic is only reported for private members.
|
||
dotnet_code_quality.CA1859.api_surface = private,internal
|
||
|
||
# CA1873: Evaluation of this argument may be expensive and unnecessary if logging is disabled
|
||
dotnet_diagnostic.CA1873.severity = suggestion
|
||
|
||
# CA2000: Dispose objects before losing scope
|
||
#
|
||
# too noisy.
|
||
dotnet_diagnostic.CA2000.severity = suggestion
|
||
|
||
# CA2208: Instantiate argument exceptions correctly
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca2208
|
||
#
|
||
# This is similar to, but less powerful than, MA0015.
|
||
dotnet_diagnostic.CA2208.severity = none
|
||
|
||
# CA5358: Do Not Use Unsafe Cipher Modes / Review cipher mode usage with cryptography experts
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca5358
|
||
#
|
||
# We use ECB mode as the basis for other modes (e.g. CTR)
|
||
dotnet_diagnostic.CA5358.severity = none
|
||
|
||
# CA5389: Do not add archive item's path to the target file system path
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca5389
|
||
dotnet_diagnostic.CA5389.severity = none
|
||
|
||
# CA5390: Do not hard-code encryption key
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca5390
|
||
dotnet_diagnostic.CA5390.severity = none
|
||
|
||
# CA5401: Do not use CreateEncryptor with non-default IV
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca5401
|
||
dotnet_diagnostic.CA5401.severity = none
|
||
|
||
# CA5402: Use CreateEncryptor with the default IV
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca5402
|
||
dotnet_diagnostic.CA5402.severity = none
|
||
|
||
# CA5403: Do not hard-code certificate
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca5403
|
||
dotnet_diagnostic.CA5403.severity = none
|
||
|
||
#### Roslyn IDE analyser rules ####
|
||
|
||
# IDE0028: Simplify collection initialization; and
|
||
# IDE0305: Simplify collection initialization
|
||
#
|
||
# Temporarily suppressing collection expression recommendations coming from .NET 8 SDK
|
||
dotnet_diagnostic.IDE0028.severity = none
|
||
dotnet_diagnostic.IDE0305.severity = none
|
||
|
||
# IDE0032: Use auto-implemented property
|
||
#
|
||
# For performance reasons, we do not always want to enforce the use of
|
||
# auto-implemented properties.
|
||
dotnet_diagnostic.IDE0032.severity = suggestion
|
||
|
||
# IDE0045: Use conditional expression for assignment
|
||
#
|
||
# This does not always result in cleaner/clearer code.
|
||
dotnet_diagnostic.IDE0045.severity = none
|
||
|
||
# IDE0046: Use conditional expression for return
|
||
#
|
||
# Using a conditional expression is not always a clear win for readability.
|
||
#
|
||
# Configured using 'dotnet_style_prefer_conditional_expression_over_return'
|
||
dotnet_diagnostic.IDE0046.severity = suggestion
|
||
|
||
# IDE0047: Remove unnecessary parentheses
|
||
#
|
||
# Removing "unnecessary" parentheses is not always a clear win for readability.
|
||
dotnet_diagnostic.IDE0047.severity = suggestion
|
||
|
||
# IDE0130: Namespace does not match folder structure
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/ide0130
|
||
#
|
||
# TODO: Remove when https://github.com/sshnet/SSH.NET/issues/1129 is fixed
|
||
dotnet_diagnostic.IDE0130.severity = none
|
||
|
||
# IDE0270: Null check can be simplified
|
||
#
|
||
# var inputPath = originalDossierPathList.Find(x => x.id == updatedPath.id);
|
||
# if (inputPath is null)
|
||
# {
|
||
# throw new PcsException($"Path id ({updatedPath.id}) unknown in PCS for dossier id {dossierFromTs.dossier.id}", updatedPath.id);
|
||
# }
|
||
#
|
||
# We do not want to modify the code using a null coalescing operator:
|
||
#
|
||
# var inputPath = originalDossierPathList.Find(x => x.id == updatedPath.id) ?? throw new PcsException($"Path id ({updatedPath.id}) unknown in PCS for dossier id {dossierFromTs.dossier.id}", updatedPath.id);
|
||
dotnet_diagnostic.IDE0270.severity = none
|
||
|
||
# IDE0290: Use primary constructor
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/ide0290
|
||
dotnet_diagnostic.IDE0290.severity = none
|
||
|
||
# IDE0300: Collection initialization can be simplified
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/ide0300
|
||
#
|
||
# TODO: Discuss whether we want to start using this
|
||
dotnet_diagnostic.IDE0300.severity = none
|
||
|
||
# IDE0301: Simplify collection initialization
|
||
# https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/ide0301
|
||
#
|
||
# TODO: Discuss whether we want to start using this
|
||
dotnet_diagnostic.IDE0301.severity = none
|
||
|
||
# IDE0370: Remove unnecessary suppression
|
||
#
|
||
# This can lead to many false positives in different target frameworks.
|
||
dotnet_diagnostic.IDE0370.severity = suggestion
|
||
|
||
#### .NET Compiler Platform code style rules ####
|
||
|
||
### Language rules ###
|
||
|
||
## Modifier preferences
|
||
|
||
dotnet_style_require_accessibility_modifiers = true
|
||
dotnet_style_readonly_field = true
|
||
csharp_prefer_static_local_function = true
|
||
|
||
## Parentheses preferences
|
||
|
||
dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity
|
||
dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity
|
||
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity
|
||
dotnet_style_parentheses_in_other_operators = never_if_unnecessary
|
||
|
||
# Expression-level preferences
|
||
|
||
dotnet_style_object_initializer = true
|
||
csharp_style_inlined_variable_declaration = true
|
||
dotnet_style_collection_initializer = true
|
||
dotnet_style_prefer_auto_properties = true
|
||
dotnet_style_explicit_tuple_names = true
|
||
csharp_prefer_simple_default_expression = true
|
||
dotnet_style_prefer_inferred_tuple_names = true
|
||
dotnet_style_prefer_inferred_anonymous_type_member_names = true
|
||
csharp_style_prefer_local_over_anonymous_function = true
|
||
csharp_style_deconstructed_variable_declaration = false
|
||
dotnet_style_prefer_conditional_expression_over_assignment = true
|
||
dotnet_style_prefer_conditional_expression_over_return = true
|
||
dotnet_style_prefer_compound_assignment = true
|
||
csharp_style_prefer_index_operator = false
|
||
csharp_style_prefer_range_operator = false
|
||
dotnet_style_prefer_simplified_interpolation = false
|
||
dotnet_style_prefer_simplified_boolean_expressions = true
|
||
csharp_style_implicit_object_creation_when_type_is_apparent = false
|
||
csharp_style_prefer_tuple_swap = false
|
||
|
||
# Namespace declaration preferences
|
||
|
||
csharp_style_namespace_declarations = block_scoped
|
||
|
||
# Null-checking preferences
|
||
|
||
csharp_style_throw_expression = false
|
||
dotnet_style_coalesce_expression = true
|
||
dotnet_style_null_propagation = true
|
||
dotnet_style_prefer_is_null_check_over_reference_equality_method = true
|
||
csharp_style_prefer_null_check_over_type_check = true
|
||
csharp_style_conditional_delegate_call = true
|
||
|
||
# 'var' preferences
|
||
|
||
csharp_style_var_for_built_in_types = true
|
||
csharp_style_var_when_type_is_apparent = true
|
||
csharp_style_var_elsewhere = true
|
||
|
||
# Expression-bodies members
|
||
|
||
csharp_style_expression_bodied_methods = false
|
||
csharp_style_expression_bodied_constructors = false
|
||
csharp_style_expression_bodied_operators = false
|
||
csharp_style_expression_bodied_properties = false
|
||
csharp_style_expression_bodied_indexers = false
|
||
csharp_style_expression_bodied_accessors = false
|
||
csharp_style_expression_bodied_lambdas = false
|
||
csharp_style_expression_bodied_local_functions = false
|
||
|
||
# Pattern matching preferences
|
||
|
||
csharp_style_pattern_matching_over_as_with_null_check = true
|
||
csharp_style_pattern_matching_over_is_with_cast_check = true
|
||
csharp_style_prefer_switch_expression = false
|
||
csharp_style_prefer_pattern_matching = true
|
||
csharp_style_prefer_not_pattern = true
|
||
csharp_style_prefer_extended_property_pattern = true
|
||
|
||
# Code block preferences
|
||
|
||
csharp_prefer_braces = true
|
||
csharp_prefer_simple_using_statement = false
|
||
|
||
# Using directive preferences
|
||
|
||
csharp_using_directive_placement = outside_namespace
|
||
|
||
# Namespace naming preferences
|
||
|
||
dotnet_style_namespace_match_folder = true
|
||
|
||
# Undocumented preferences
|
||
|
||
csharp_style_prefer_method_group_conversion = false
|
||
csharp_style_prefer_top_level_statements = false
|
||
|
||
### Formatting rules ###
|
||
|
||
## .NET formatting options ##
|
||
|
||
# Using directive options
|
||
|
||
dotnet_sort_system_directives_first = true
|
||
dotnet_separate_import_directive_groups = true
|
||
|
||
## C# formatting options ##
|
||
|
||
# New-line options
|
||
|
||
# TNIS-13005: Enabling this setting breaks Resharper indentation for lambdas
|
||
#csharp_new_line_before_open_brace = accessors, anonymous_methods, anonymous_types, control_blocks, events, indexers, lambdas, local_functions, methods, object_collection_array_initializers, properties, types
|
||
csharp_new_line_before_else = true
|
||
csharp_new_line_before_catch = true
|
||
csharp_new_line_before_finally = true
|
||
# Enabling this setting breaks Resharper formatting for an enum field reference that is
|
||
# deeply nested in an object initializer.
|
||
#
|
||
# For an example, see TDataExchangeGeneralEnricher_CernInfrastructureObstruction.
|
||
#csharp_new_line_before_members_in_object_initializers = true
|
||
csharp_new_line_before_members_in_anonymous_types = true
|
||
csharp_new_line_between_query_expression_clauses = true
|
||
|
||
# Indentation options
|
||
|
||
csharp_indent_case_contents = true
|
||
csharp_indent_switch_labels = true
|
||
csharp_indent_labels = one_less_than_current
|
||
csharp_indent_block_contents = true
|
||
# TNIS-13005: Enabling this setting breaks Resharper indentation for lambdas
|
||
#csharp_indent_braces = false
|
||
# TNIS-13005: Enabling this setting breaks Resharper indentation for lambdas
|
||
#csharp_indent_case_contents_when_block = true
|
||
|
||
# Spacing options
|
||
|
||
csharp_space_after_cast = false
|
||
csharp_space_after_keywords_in_control_flow_statements = true
|
||
csharp_space_between_parentheses = false
|
||
csharp_space_before_colon_in_inheritance_clause = true
|
||
csharp_space_after_colon_in_inheritance_clause = true
|
||
csharp_space_around_binary_operators = before_and_after
|
||
csharp_space_between_method_declaration_parameter_list_parentheses = false
|
||
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
|
||
csharp_space_between_method_declaration_name_and_open_parenthesis = false
|
||
csharp_space_between_method_call_parameter_list_parentheses = false
|
||
csharp_space_between_method_call_empty_parameter_list_parentheses = false
|
||
csharp_space_between_method_call_name_and_opening_parenthesis = false
|
||
csharp_space_after_comma = true
|
||
csharp_space_before_comma = false
|
||
csharp_space_after_dot = false
|
||
csharp_space_before_dot = false
|
||
csharp_space_after_semicolon_in_for_statement = true
|
||
csharp_space_before_semicolon_in_for_statement = false
|
||
csharp_space_around_declaration_statements = false
|
||
csharp_space_before_open_square_brackets = false
|
||
csharp_space_between_empty_square_brackets = false
|
||
csharp_space_between_square_brackets = false
|
||
|
||
# Wrap options
|
||
|
||
csharp_preserve_single_line_statements = false
|
||
csharp_preserve_single_line_blocks = true
|
||
|
||
### Naming styles ###
|
||
|
||
# Naming rules
|
||
|
||
dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion
|
||
dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface
|
||
dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i
|
||
|
||
dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion
|
||
dotnet_naming_rule.types_should_be_pascal_case.symbols = types
|
||
dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case
|
||
|
||
dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion
|
||
dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members
|
||
dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case
|
||
|
||
dotnet_naming_rule.private_fields_camel_case_begins_with_underscore.symbols = private_fields
|
||
dotnet_naming_rule.private_fields_camel_case_begins_with_underscore.style = camel_case_begins_with_underscore
|
||
dotnet_naming_rule.private_fields_camel_case_begins_with_underscore.severity = warning
|
||
|
||
dotnet_naming_rule.private_static_fields_camel_case_begins_with_underscore.symbols = private_static_fields
|
||
dotnet_naming_rule.private_static_fields_camel_case_begins_with_underscore.style = camel_case_begins_with_underscore
|
||
dotnet_naming_rule.private_static_fields_camel_case_begins_with_underscore.severity = warning
|
||
|
||
dotnet_naming_rule.private_static_readonly_fields_pascal_case.symbols = private_static_readonly_fields
|
||
dotnet_naming_rule.private_static_readonly_fields_pascal_case.style = pascal_case
|
||
dotnet_naming_rule.private_static_readonly_fields_pascal_case.severity = warning
|
||
|
||
dotnet_naming_rule.private_const_fields_pascal_case.symbols = private_const_fields
|
||
dotnet_naming_rule.private_const_fields_pascal_case.style = pascal_case
|
||
dotnet_naming_rule.private_const_fields_pascal_case.severity = warning
|
||
|
||
# Symbol specifications
|
||
|
||
dotnet_naming_symbols.interface.applicable_kinds = interface
|
||
dotnet_naming_symbols.interface.applicable_accessibilities = *
|
||
dotnet_naming_symbols.interface.required_modifiers =
|
||
|
||
dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum
|
||
dotnet_naming_symbols.types.applicable_accessibilities = *
|
||
dotnet_naming_symbols.types.required_modifiers =
|
||
|
||
dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method
|
||
dotnet_naming_symbols.non_field_members.applicable_accessibilities = *
|
||
dotnet_naming_symbols.non_field_members.required_modifiers =
|
||
|
||
dotnet_naming_symbols.private_fields.applicable_kinds = field
|
||
dotnet_naming_symbols.private_fields.applicable_accessibilities = private
|
||
dotnet_naming_symbols.private_fields.required_modifiers =
|
||
|
||
dotnet_naming_symbols.private_static_fields.applicable_kinds = field
|
||
dotnet_naming_symbols.private_static_fields.applicable_accessibilities = private
|
||
dotnet_naming_symbols.private_static_fields.required_modifiers = static
|
||
|
||
dotnet_naming_symbols.private_static_readonly_fields.applicable_kinds = field
|
||
dotnet_naming_symbols.private_static_readonly_fields.applicable_accessibilities = private
|
||
dotnet_naming_symbols.private_static_readonly_fields.required_modifiers = static, readonly
|
||
|
||
dotnet_naming_symbols.private_const_fields.applicable_kinds = field
|
||
dotnet_naming_symbols.private_const_fields.applicable_accessibilities = private
|
||
dotnet_naming_symbols.private_const_fields.required_modifiers = const
|
||
|
||
# Naming styles
|
||
|
||
dotnet_naming_style.begins_with_i.required_prefix = I
|
||
dotnet_naming_style.begins_with_i.required_suffix =
|
||
dotnet_naming_style.begins_with_i.word_separator =
|
||
dotnet_naming_style.begins_with_i.capitalization = pascal_case
|
||
|
||
dotnet_naming_style.pascal_case.required_prefix =
|
||
dotnet_naming_style.pascal_case.required_suffix =
|
||
dotnet_naming_style.pascal_case.word_separator =
|
||
dotnet_naming_style.pascal_case.capitalization = pascal_case
|
||
|
||
dotnet_naming_style.camel_case_begins_with_underscore.required_prefix = _
|
||
dotnet_naming_style.camel_case_begins_with_underscore.required_suffix =
|
||
dotnet_naming_style.camel_case_begins_with_underscore.word_separator =
|
||
dotnet_naming_style.camel_case_begins_with_underscore.capitalization = camel_case
|
||
|
||
#### .NET Compiler Platform general options ####
|
||
|
||
# Change the default rule severity for all analyzer rules that are enabled by default
|
||
dotnet_analyzer_diagnostic.severity = warning
|
||
|
||
#### .NET Compiler Platform code refactoring rules ####
|
||
|
||
dotnet_style_operator_placement_when_wrapping = end_of_line
|
||
|
||
#### ReSharper code style for C# ####
|
||
|
||
## Blank Lines
|
||
|
||
resharper_csharp_blank_lines_around_region = 1
|
||
resharper_csharp_blank_lines_inside_region = 1
|
||
resharper_csharp_blank_lines_before_single_line_comment = 1
|
||
resharper_csharp_keep_blank_lines_in_declarations = 1
|
||
resharper_csharp_remove_blank_lines_near_braces_in_declarations = true
|
||
resharper_csharp_blank_lines_after_start_comment = 1
|
||
resharper_csharp_blank_lines_between_using_groups = 1
|
||
resharper_csharp_blank_lines_after_using_list = 1
|
||
resharper_csharp_blank_lines_around_namespace = 1
|
||
resharper_csharp_blank_lines_inside_namespace = 0
|
||
resharper_csharp_blank_lines_after_file_scoped_namespace_directive = 1
|
||
resharper_csharp_blank_lines_around_type = 1
|
||
resharper_csharp_blank_lines_around_single_line_type = 1
|
||
resharper_csharp_blank_lines_inside_type = 0
|
||
resharper_csharp_blank_lines_around_field = 0
|
||
resharper_csharp_blank_lines_around_single_line_field = 0
|
||
resharper_csharp_blank_lines_around_property = 1
|
||
resharper_csharp_blank_lines_around_single_line_property = 1
|
||
resharper_csharp_blank_lines_around_auto_property = 1
|
||
resharper_csharp_blank_lines_around_single_line_auto_property = 1
|
||
resharper_csharp_blank_lines_around_accessor = 0
|
||
resharper_csharp_blank_lines_around_single_line_accessor = 0
|
||
resharper_csharp_blank_lines_around_invocable = 1
|
||
resharper_csharp_blank_lines_around_single_line_invocable = 1
|
||
resharper_csharp_keep_blank_lines_in_code = 1
|
||
resharper_csharp_remove_blank_lines_near_braces_in_code = true
|
||
resharper_csharp_blank_lines_around_local_method = 1
|
||
resharper_csharp_blank_lines_around_single_line_local_method = 1
|
||
resharper_csharp_blank_lines_before_control_transfer_statements = 0
|
||
resharper_csharp_blank_lines_after_control_transfer_statements = 0
|
||
resharper_csharp_blank_lines_before_block_statements = 0
|
||
resharper_csharp_blank_lines_after_block_statements = 1
|
||
resharper_csharp_blank_lines_before_multiline_statements = 0
|
||
resharper_csharp_blank_lines_after_multiline_statements = 0
|
||
resharper_csharp_blank_lines_around_block_case_section = 0
|
||
resharper_csharp_blank_lines_around_multiline_case_section = 0
|
||
resharper_csharp_blank_lines_before_case = 0
|
||
resharper_csharp_blank_lines_after_case = 0
|
||
|
||
## Braces Layout
|
||
|
||
resharper_csharp_type_declaration_braces = next_line
|
||
resharper_csharp_indent_inside_namespace = true
|
||
resharper_csharp_invocable_declaration_braces = next_line
|
||
resharper_csharp_anonymous_method_declaration_braces = next_line_shifted_2
|
||
resharper_csharp_accessor_owner_declaration_braces = next_line
|
||
resharper_csharp_accessor_declaration_braces = next_line
|
||
resharper_csharp_case_block_braces = next_line_shifted_2
|
||
resharper_csharp_initializer_braces = next_line_shifted_2
|
||
resharper_csharp_use_continuous_indent_inside_initializer_braces = true
|
||
resharper_csharp_other_braces = next_line
|
||
resharper_csharp_allow_comment_after_lbrace = false
|
||
resharper_csharp_empty_block_style = multiline
|
||
|
||
## Syntax Style
|
||
|
||
# 'var' usage in declarations
|
||
|
||
resharper_csharp_for_built_in_types = use_var
|
||
resharper_csharp_for_simple_types = use_var
|
||
resharper_csharp_for_other_types = use_var
|
||
|
||
# Instance members qualification
|
||
|
||
resharper_csharp_instance_members_qualify_members = none
|
||
resharper_csharp_instance_members_qualify_declared_in = base_class
|
||
|
||
# Static members qualification
|
||
|
||
resharper_csharp_static_members_qualify_with = declared_type
|
||
resharper_csharp_static_members_qualify_members = none
|
||
|
||
# Built-in types
|
||
|
||
resharper_csharp_builtin_type_reference_style = use_keyword
|
||
resharper_csharp_builtin_type_reference_for_member_access_style = use_keyword
|
||
|
||
# Reference qualification and 'using' directives
|
||
|
||
resharper_csharp_prefer_qualified_reference = false
|
||
resharper_csharp_add_imports_to_deepest_scope = false
|
||
resharper_csharp_qualified_using_at_nested_scope = false
|
||
resharper_csharp_allow_alias = true
|
||
resharper_csharp_can_use_global_alias = true
|
||
|
||
# Modifiers
|
||
|
||
resharper_csharp_default_private_modifier = explicit
|
||
resharper_csharp_default_internal_modifier = explicit
|
||
resharper_csharp_modifiers_order = public private protected internal file static extern new virtual abstract sealed override readonly unsafe required volatile async
|
||
|
||
# Braces
|
||
|
||
resharper_csharp_braces_for_ifelse = required
|
||
resharper_csharp_braces_for_for = required
|
||
resharper_csharp_braces_for_foreach = required
|
||
resharper_csharp_braces_for_while = required
|
||
resharper_csharp_braces_for_dowhile = required
|
||
resharper_csharp_braces_for_using = required
|
||
resharper_csharp_braces_for_lock = required
|
||
resharper_csharp_braces_for_fixed = required
|
||
resharper_csharp_braces_redundant = false
|
||
|
||
# Code body
|
||
|
||
resharper_csharp_method_or_operator_body = block_body
|
||
resharper_csharp_local_function_body = block_body
|
||
resharper_csharp_constructor_or_destructor_body = block_body
|
||
resharper_csharp_accessor_owner_body = accessors_with_block_body
|
||
resharper_csharp_namespace_body = block_scoped
|
||
resharper_csharp_use_heuristics_for_body_style = false
|
||
|
||
# Trailing comma
|
||
|
||
resharper_csharp_trailing_comma_in_multiline_lists = false
|
||
resharper_csharp_trailing_comma_in_singleline_lists = false
|
||
|
||
# Object creation
|
||
|
||
resharper_csharp_object_creation_when_type_evident = explicitly_typed
|
||
resharper_csharp_object_creation_when_type_not_evident = explicitly_typed
|
||
|
||
# Default value
|
||
|
||
resharper_csharp_default_value_when_type_evident = default_literal
|
||
resharper_csharp_default_value_when_type_not_evident = default_literal
|
||
|
||
## Tabs, Indents, Alignment
|
||
|
||
# Nested statements
|
||
|
||
resharper_csharp_indent_nested_usings_stmt = false
|
||
resharper_csharp_indent_nested_fixed_stmt = false
|
||
resharper_csharp_indent_nested_lock_stmt = false
|
||
resharper_csharp_indent_nested_for_stmt = true
|
||
resharper_csharp_indent_nested_foreach_stmt = true
|
||
resharper_csharp_indent_nested_while_stmt = true
|
||
|
||
# Parenthesis
|
||
|
||
resharper_csharp_use_continuous_indent_inside_parens = true
|
||
resharper_csharp_indent_method_decl_pars = outside_and_inside
|
||
resharper_csharp_indent_invocation_pars = outside_and_inside
|
||
resharper_csharp_indent_statement_pars = outside_and_inside
|
||
resharper_csharp_indent_typeparam_angles = outside_and_inside
|
||
resharper_csharp_indent_typearg_angles = outside_and_inside
|
||
resharper_csharp_indent_pars = outside_and_inside
|
||
|
||
# Preprocessor directives
|
||
|
||
resharper_csharp_indent_preprocessor_if = no_indent
|
||
resharper_csharp_indent_preprocessor_region = usual_indent
|
||
resharper_csharp_indent_preprocessor_other = no_indent
|
||
|
||
# Other indents
|
||
|
||
resharper_indent_switch_labels = true
|
||
resharper_csharp_outdent_statement_labels = true
|
||
resharper_csharp_indent_type_constraints = true
|
||
resharper_csharp_stick_comment = false
|
||
resharper_csharp_place_comments_at_first_column = false
|
||
resharper_csharp_use_indent_from_previous_element = true
|
||
resharper_csharp_indent_braces_inside_statement_conditions = true
|
||
|
||
# Align multiline constructs
|
||
|
||
resharper_csharp_alignment_tab_fill_style = use_spaces
|
||
resharper_csharp_allow_far_alignment = true
|
||
resharper_csharp_align_multiline_parameter = true
|
||
resharper_csharp_align_multiline_extends_list = true
|
||
resharper_csharp_align_linq_query = true
|
||
resharper_csharp_align_multiline_binary_expressions_chain = true
|
||
resharper_csharp_outdent_binary_ops = false
|
||
resharper_csharp_align_multiline_calls_chain = true
|
||
resharper_csharp_outdent_dots = false
|
||
resharper_csharp_align_multiline_array_and_object_initializer = false
|
||
resharper_csharp_align_multiline_switch_expression = false
|
||
resharper_csharp_align_multiline_property_pattern = false
|
||
resharper_csharp_align_multiline_list_pattern = false
|
||
resharper_csharp_align_multiline_binary_patterns = false
|
||
resharper_csharp_outdent_binary_pattern_ops = false
|
||
resharper_csharp_indent_anonymous_method_block = true
|
||
resharper_csharp_align_first_arg_by_paren = false
|
||
resharper_csharp_align_multiline_argument = true
|
||
resharper_csharp_align_tuple_components = true
|
||
resharper_csharp_align_multiline_expression = true
|
||
resharper_csharp_align_multiline_statement_conditions = true
|
||
resharper_csharp_align_multiline_for_stmt = true
|
||
resharper_csharp_align_multiple_declaration = true
|
||
resharper_csharp_align_multline_type_parameter_list = true
|
||
resharper_csharp_align_multline_type_parameter_constrains = true
|
||
resharper_csharp_outdent_commas = false
|
||
|
||
## Line Breaks
|
||
|
||
# General
|
||
|
||
resharper_csharp_keep_user_linebreaks = true
|
||
resharper_csharp_max_line_length = 140
|
||
resharper_csharp_wrap_before_comma = false
|
||
resharper_csharp_wrap_before_eq = false
|
||
resharper_csharp_special_else_if_treatment = true
|
||
resharper_csharp_insert_final_newline = true
|
||
|
||
# Arrangement of attributes
|
||
|
||
resharper_csharp_keep_existing_attribute_arrangement = false
|
||
resharper_csharp_place_type_attribute_on_same_line = false
|
||
resharper_csharp_place_method_attribute_on_same_line = false
|
||
resharper_csharp_place_accessorholder_attribute_on_same_line = false
|
||
resharper_csharp_place_accessor_attribute_on_same_line = false
|
||
resharper_csharp_place_field_attribute_on_same_line = false
|
||
resharper_csharp_place_record_field_attribute_on_same_line = true
|
||
|
||
# Arrangement of method signatures
|
||
|
||
resharper_csharp_place_constructor_initializer_on_same_line = false
|
||
resharper_csharp_place_expr_method_on_single_line = true
|
||
resharper_csharp_place_expr_property_on_single_line = true
|
||
resharper_csharp_place_expr_accessor_on_single_line = true
|
||
|
||
# Arrangement of type parameters, constraints, and base types
|
||
|
||
resharper_csharp_place_type_constraints_on_same_line = false
|
||
resharper_csharp_wrap_before_first_type_parameter_constraint = true
|
||
|
||
# Arrangement of declaration blocks
|
||
|
||
resharper_csharp_place_abstract_accessorholder_on_single_line = true
|
||
|
||
# Arrangement of statements
|
||
|
||
resharper_new_line_before_else = true
|
||
resharper_new_line_before_while = true
|
||
resharper_new_line_before_catch = true
|
||
resharper_new_line_before_finally = true
|
||
resharper_wrap_for_stmt_header_style = chop_if_long
|
||
resharper_wrap_multiple_declaration_style = chop_always
|
||
|
||
## Spaces
|
||
|
||
# Preserve existing formatting
|
||
|
||
resharper_csharp_extra_spaces = remove_all
|
||
|
||
# Before parentheses in statements
|
||
|
||
resharper_csharp_space_before_if_parentheses = true
|
||
resharper_csharp_space_before_while_parentheses = true
|
||
resharper_csharp_space_before_catch_parentheses = true
|
||
resharper_csharp_space_before_switch_parentheses = true
|
||
resharper_csharp_space_before_for_parentheses = true
|
||
resharper_csharp_space_before_foreach_parentheses = true
|
||
resharper_csharp_space_before_using_parentheses = true
|
||
resharper_csharp_space_before_lock_parentheses = true
|
||
resharper_csharp_space_before_fixed_parentheses = true
|
||
|
||
# Before other parentheses
|
||
|
||
resharper_csharp_space_before_method_call_parentheses = false
|
||
resharper_csharp_space_before_empty_method_call_parentheses = false
|
||
resharper_csharp_space_before_method_parentheses = false
|
||
resharper_csharp_space_before_empty_method_parentheses = false
|
||
resharper_csharp_space_before_typeof_parentheses = false
|
||
resharper_csharp_space_before_default_parentheses = false
|
||
resharper_csharp_space_before_checked_parentheses = false
|
||
resharper_csharp_space_before_sizeof_parentheses = false
|
||
resharper_csharp_space_before_nameof_parentheses = false
|
||
resharper_csharp_space_before_new_parentheses = false
|
||
resharper_csharp_space_between_keyword_and_expression = true
|
||
resharper_csharp_space_between_keyword_and_type = false
|
||
|
||
# Within parentheses in statements
|
||
|
||
resharper_csharp_space_within_if_parentheses = false
|
||
resharper_csharp_space_within_while_parentheses = false
|
||
resharper_csharp_space_within_catch_parentheses = false
|
||
resharper_csharp_space_within_switch_parentheses = false
|
||
resharper_csharp_space_within_for_parentheses = false
|
||
resharper_csharp_space_within_foreach_parentheses = false
|
||
resharper_csharp_space_within_using_parentheses = false
|
||
resharper_csharp_space_within_lock_parentheses = false
|
||
resharper_csharp_space_within_fixed_parentheses = false
|
||
|
||
# Within other parentheses
|
||
|
||
resharper_csharp_space_within_parentheses = false
|
||
resharper_csharp_space_between_typecast_parentheses = false
|
||
resharper_csharp_space_between_method_declaration_parameter_list_parentheses = false
|
||
resharper_csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
|
||
resharper_csharp_space_between_method_call_parameter_list_parentheses = false
|
||
resharper_csharp_space_between_method_call_empty_parameter_list_parentheses = false
|
||
resharper_csharp_space_within_typeof_parentheses = false
|
||
resharper_csharp_space_within_default_parentheses = false
|
||
resharper_csharp_space_within_checked_parentheses = false
|
||
resharper_csharp_space_within_sizeof_parentheses = false
|
||
resharper_csharp_space_within_nameof_parentheses = false
|
||
resharper_csharp_space_within_new_parentheses = false
|
||
|
||
# Around array brackets
|
||
|
||
resharper_csharp_space_before_array_access_brackets = false
|
||
resharper_csharp_space_before_open_square_brackets = false
|
||
resharper_csharp_space_before_array_rank_brackets = false
|
||
resharper_csharp_space_within_array_access_brackets = false
|
||
resharper_csharp_space_between_square_brackets = false
|
||
resharper_csharp_space_within_array_rank_brackets = false
|
||
resharper_csharp_space_within_array_rank_empty_brackets = false
|
||
resharper_csharp_space_between_empty_square_bracket = false
|
||
|
||
# Around angle brackets
|
||
|
||
resharper_csharp_space_before_type_parameter_angle = false
|
||
resharper_csharp_space_before_type_argument_angle = false
|
||
resharper_csharp_space_within_type_parameter_angles = false
|
||
resharper_csharp_space_within_type_argument_angles = false
|
||
|
||
### ReSharper code style for XMLDOC ###
|
||
|
||
## Tabs and indents
|
||
|
||
resharper_xmldoc_indent_style = space
|
||
# ReSharper currently ignores this setting. See https://youtrack.jetbrains.com/issue/RSRP-465678/XMLDOC-indent-settings-ignored.
|
||
resharper_xmldoc_indent_size = 2
|
||
resharper_xmldoc_tab_width = 2
|
||
resharper_xmldoc_alignment_tab_fill_style = use_spaces
|
||
resharper_xmldoc_allow_far_alignment = true
|
||
|
||
## Line wrapping
|
||
|
||
resharper_xmldoc_max_line_length = 140
|
||
resharper_xmldoc_wrap_tags_and_pi = false
|
||
|
||
## Processing instructions
|
||
|
||
resharper_xmldoc_spaces_around_eq_in_pi_attribute = false
|
||
resharper_xmldoc_space_after_last_pi_attribute = false
|
||
resharper_xmldoc_pi_attribute_style = on_single_line
|
||
resharper_xmldoc_pi_attributes_indent = align_by_first_attribute
|
||
resharper_xmldoc_blank_line_after_pi = false
|
||
|
||
## Inside of tag header
|
||
|
||
resharper_xmldoc_spaces_around_eq_in_attribute = false
|
||
resharper_xmldoc_space_after_last_attribute = false
|
||
resharper_xmldoc_space_before_self_closing = false
|
||
resharper_xmldoc_attribute_style = do_not_touch
|
||
resharper_xmldoc_attribute_indent = align_by_first_attribute
|
||
|
||
## Tag content
|
||
|
||
resharper_xmldoc_keep_user_linebreaks = true
|
||
resharper_xmldoc_linebreaks_inside_tags_for_multiline_elements = true
|
||
resharper_xmldoc_linebreaks_inside_tags_for_elements_with_child_elements = false
|
||
resharper_xmldoc_spaces_inside_tags = false
|
||
resharper_xmldoc_wrap_text = false
|
||
resharper_xmldoc_wrap_around_elements = false
|
||
# ReSharper currently ignores the 'resharper_xmldoc_indent_size' setting. Once https://youtrack.jetbrains.com/issue/RSRP-465678/XMLDOC-indent-settings-ignored
|
||
# is fixed, we should change the value of this setting to 'one_indent'.
|
||
resharper_xmldoc_indent_child_elements = zero_indent
|
||
resharper_xmldoc_indent_text = zero_indent
|
||
|
||
## Around tags
|
||
|
||
resharper_xmldoc_max_blank_lines_between_tags = 1
|
||
resharper_xmldoc_linebreak_before_multiline_elements = true
|
||
resharper_xmldoc_linebreak_before_singleline_elements = false
|
||
|
||
[*.{xml,xsd,csproj,targets,proj,props,runsettings,config}]
|
||
|
||
#### ReSharper code style for XML ####
|
||
|
||
## Tabs and indents
|
||
|
||
resharper_xml_indent_style = space
|
||
resharper_xml_indent_size = 4
|
||
resharper_xml_tab_width = 4
|
||
resharper_xml_alignment_tab_fill_style = use_spaces
|
||
resharper_xml_allow_far_alignment = true
|
||
|
||
## Line wrapping
|
||
|
||
resharper_xml_wrap_tags_and_pi = false
|
||
|
||
## Processing instructions
|
||
|
||
resharper_xml_spaces_around_eq_in_pi_attribute = false
|
||
resharper_xml_space_after_last_pi_attribute = false
|
||
resharper_xml_pi_attribute_style = on_single_line
|
||
resharper_xml_pi_attributes_indent = align_by_first_attribute
|
||
resharper_xml_blank_line_after_pi = false
|
||
|
||
## Inside of tag header
|
||
|
||
resharper_xml_spaces_around_eq_in_attribute = false
|
||
resharper_xml_space_after_last_attribute = false
|
||
resharper_xml_space_before_self_closing = true
|
||
resharper_xml_attribute_style = do_not_touch
|
||
resharper_xml_attribute_indent = align_by_first_attribute
|
||
|
||
## Tag content
|
||
|
||
resharper_xml_keep_user_linebreaks = true
|
||
resharper_xml_linebreaks_inside_tags_for_multiline_elements = false
|
||
resharper_xml_linebreaks_inside_tags_for_elements_with_child_elements = false
|
||
resharper_xml_linebreaks_inside_tags_for_elements_longer_than = false
|
||
resharper_xml_spaces_inside_tags = false
|
||
resharper_xml_wrap_text = false
|
||
resharper_xml_wrap_around_elements = false
|
||
resharper_xml_indent_child_elements = one_indent
|
||
resharper_xml_indent_text = zero_indent
|
||
resharper_xml_max_blank_lines_between_tags = 1
|
||
resharper_xml_linebreak_before_multiline_elements = false
|
||
resharper_xml_linebreak_before_singleline_elements = false
|
||
|
||
## Other
|
||
|
||
resharper_xml_insert_final_newline = true
|