diff --git a/.editorconfig b/.editorconfig index 9c929d72fe6..2cd15b6196b 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,4 +1,4 @@ -root = true +root = true [*] end_of_line = crlf @@ -80,3 +80,207 @@ dotnet_naming_rule.private_const_fields_ignore_camel_case_leading_underscore.sev dotnet_naming_rule.private_const_fields_ignore_camel_case_leading_underscore.symbols = private_const_fields dotnet_naming_rule.private_const_fields_ignore_camel_case_leading_underscore.style = camel_case_leading_underscore +# StyleCop +# Rules are listed at https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/StyleCop.Analyzers/StyleCop.Analyzers.CodeFixes/rulesets/StyleCopAnalyzersDefault.ruleset + +# StyleCop: Spacing Rules +[*.cs] +dotnet_diagnostic.SA1000.severity = none # Keywords should be spaced correctly. +dotnet_diagnostic.SA1001.severity = suggestion # Commas should be spaced correctly. +dotnet_diagnostic.SA1002.severity = none # Semicolons should be spaced correctly. +dotnet_diagnostic.SA1003.severity = suggestion # Symbols should be spaced correctly. +dotnet_diagnostic.SA1004.severity = suggestion # Documentation lines should begin with single space. +dotnet_diagnostic.SA1005.severity = suggestion # Single line comment should begin with a space. +dotnet_diagnostic.SA1006.severity = none # Preprocessor keywords should not be preceded by space. +dotnet_diagnostic.SA1007.severity = none # Operator keyword should be followed by space. +dotnet_diagnostic.SA1008.severity = none # Opening parenthesis should not be followed by a space. +dotnet_diagnostic.SA1009.severity = none # Closing parenthesis should be spaced correctly. +dotnet_diagnostic.SA1010.severity = none # Opening square brackets should be spaced correctly. +dotnet_diagnostic.SA1011.severity = none # Closing square brackets should be spaced correctly. +dotnet_diagnostic.SA1012.severity = none # Opening braces should be spaced correctly. +dotnet_diagnostic.SA1013.severity = none # Closing braces should be spaced correctly. +dotnet_diagnostic.SA1014.severity = none # Opening generic brackets should be spaced correctly. +dotnet_diagnostic.SA1015.severity = none # Closing generic brackets should be spaced correctly. +dotnet_diagnostic.SA1016.severity = none # Opening attribute brackets should be spaced correctly. +dotnet_diagnostic.SA1017.severity = none # Closing attribute brackets should be spaced correctly. +dotnet_diagnostic.SA1018.severity = none # Nullable type symbols should be spaced correctly. +dotnet_diagnostic.SA1019.severity = none # Member access symbols should be spaced correctly. +dotnet_diagnostic.SA1020.severity = none # Increment decrement symbols should be spaced correctly. +dotnet_diagnostic.SA1021.severity = none # Negative signs should be spaced correctly. +dotnet_diagnostic.SA1022.severity = none # Positive signs should be spaced correctly. +dotnet_diagnostic.SA1023.severity = none # Dereference and access of symbols should be spaced correctly. +dotnet_diagnostic.SA1024.severity = none # Colons should be spaced correctly. +dotnet_diagnostic.SA1025.severity = none # Code should not contain multiple whitespace in a row +dotnet_diagnostic.SA1026.severity = none # The keyword 'new' should not be followed by a space or a blank line. +dotnet_diagnostic.SA1027.severity = none # Use tabs correctly +dotnet_diagnostic.SA1028.severity = none # Code should not contain trailing whitespace. + +# StyleCop: Readability Rules +dotnet_diagnostic.SA1100.severity = none # Do not prefix calls with base unless local implementation exists +dotnet_diagnostic.SA1101.severity = none # Prefix local calls with this. +dotnet_diagnostic.SA1102.severity = none # Query clause should follow previous clause. +dotnet_diagnostic.SA1103.severity = none # Query clauses should be on separate lines or all on one line. +dotnet_diagnostic.SA1104.severity = none # Query clause should begin on new line when previous clause spans multiple lines. +dotnet_diagnostic.SA1105.severity = none # Query clauses spanning multiple lines should begin on own line. +dotnet_diagnostic.SA1106.severity = none # Code should not contain empty statements. +dotnet_diagnostic.SA1107.severity = none # Code should not contain multiple statements on one line. +dotnet_diagnostic.SA1108.severity = none # Block statements should not contain embedded comments. +dotnet_diagnostic.SA1109.severity = none # Block statements should not contain embedded regions. +dotnet_diagnostic.SA1110.severity = none # Opening parenthesis or bracket should be on declaration line. +dotnet_diagnostic.SA1111.severity = none # Closing parenthesis should be on line of last parameter. +dotnet_diagnostic.SA1112.severity = none # Closing parenthesis should be on line of opening parenthesis. +dotnet_diagnostic.SA1113.severity = none # Comma should be on the same line as previous parameter. +dotnet_diagnostic.SA1114.severity = none # Parameter list should follow declaration. +dotnet_diagnostic.SA1115.severity = none # Parameter should follow comma . +dotnet_diagnostic.SA1116.severity = none # Split parameters should start on line after declaration. +dotnet_diagnostic.SA1117.severity = none # Parameters should be on same line or separate lines. +dotnet_diagnostic.SA1118.severity = none # The parameter spans multiple lines. +dotnet_diagnostic.SA1119.severity = none # Statement should not use unnecessary parenthesis. +dotnet_diagnostic.SA1120.severity = none # Comments should contain text. +dotnet_diagnostic.SA1121.severity = none # Use built-in type alias +dotnet_diagnostic.SA1122.severity = none # Use string.Empty for empty strings. +dotnet_diagnostic.SA1124.severity = none # Do not use regions. +dotnet_diagnostic.SA1125.severity = none # Use shorthand for nullable types. +dotnet_diagnostic.SA1126.severity = none # Prefix calls correctly. +dotnet_diagnostic.SA1127.severity = none # Generic type constraints should be on their own line. +dotnet_diagnostic.SA1128.severity = none # Generic type constraints should be on their own line. +dotnet_diagnostic.SA1129.severity = none # Do not use default value type constructor. +dotnet_diagnostic.SA1130.severity = none # Use lambda syntax. +dotnet_diagnostic.SA1131.severity = none # Use readable conditions. +dotnet_diagnostic.SA1132.severity = none # Each field should be declared on its own line +dotnet_diagnostic.SA1133.severity = none # Do not combine attributes. +dotnet_diagnostic.SA1134.severity = none # Attributes should not share line. +dotnet_diagnostic.SA1135.severity = none # Using directives should be qualified. +dotnet_diagnostic.SA1136.severity = none # Enum values should be on separate lines. +dotnet_diagnostic.SA1137.severity = none # Elements should have the same indentation. +dotnet_diagnostic.SA1138.severity = none # Indent elements correctly. +dotnet_diagnostic.SA1139.severity = none # Use literal suffix notation instead of casting. + +# StyleCop: Ordering Rules +dotnet_diagnostic.SA1200.severity = none # Using directives should be placed correctly. +dotnet_diagnostic.SA1201.severity = none # Elements should appear in the correct order. +dotnet_diagnostic.SA1202.severity = none # Elements should be ordered by access. +dotnet_diagnostic.SA1203.severity = none # Constants should appear before fields. +dotnet_diagnostic.SA1204.severity = none # Static elements should appear before instance elements. +dotnet_diagnostic.SA1205.severity = none # Partial elements should declare access. +dotnet_diagnostic.SA1206.severity = none # Declaration keywords should follow order. +dotnet_diagnostic.SA1207.severity = none # Protected should come before internal. +dotnet_diagnostic.SA1208.severity = none # System using directives should be placed before other using directives. +dotnet_diagnostic.SA1209.severity = none # Using alias directives should be placed after other using directives. +dotnet_diagnostic.SA1210.severity = none # Using directives should be ordered alphabetically by namespace. +dotnet_diagnostic.SA1211.severity = none # Using alias directives should be ordered alphabetically by alias name. +dotnet_diagnostic.SA1212.severity = none # Property accessors should follow order. +dotnet_diagnostic.SA1213.severity = none # Event accessors should follow order. +dotnet_diagnostic.SA1214.severity = none # Readonly fields should appear before non-readonly fields. +dotnet_diagnostic.SA1216.severity = none # Using static directives should be placed at the correct location. +dotnet_diagnostic.SA1217.severity = none # Using static directives should be ordered alphabetically. + +# StyleCop: Naming Rules +dotnet_diagnostic.SA1300.severity = none # Element 'requestDelegate' should begin with an uppercase letter. +dotnet_diagnostic.SA1301.severity = none # Element should begin with lower-case letter. +dotnet_diagnostic.SA1302.severity = none # Interface names should begin with I. +dotnet_diagnostic.SA1303.severity = none # Const field names should begin with upper-case letter. +dotnet_diagnostic.SA1304.severity = none # Non-private readonly fields should begin with upper-case letter. +dotnet_diagnostic.SA1305.severity = none # Field names should not use Hungarian notation. +dotnet_diagnostic.SA1306.severity = none # Field names should begin with lower-case letter. +dotnet_diagnostic.SA1307.severity = none # Accessible fields should begin with upper-case letter. +dotnet_diagnostic.SA1308.severity = none # Variable names should not be prefixed. +dotnet_diagnostic.SA1309.severity = none # Field names should not begin with underscore. +dotnet_diagnostic.SA1310.severity = none # Field names should not contain underscore. +dotnet_diagnostic.SA1311.severity = none # Static readonly fields should begin with upper-case letter. +dotnet_diagnostic.SA1312.severity = none # Variable '_' should begin with lower-case letter. +dotnet_diagnostic.SA1313.severity = none # Parameter '_' should begin with lower-case letter. +dotnet_diagnostic.SA1314.severity = none # Type parameter names should begin with T. + +# StyleCop: Maintainability Rules +dotnet_diagnostic.SA1400.severity = none # Access modifier should be declared. +dotnet_diagnostic.SA1401.severity = none # Fields should be privat. +dotnet_diagnostic.SA1402.severity = none # File may only contain a single type. +dotnet_diagnostic.SA1403.severity = none # File may only contain a single namespace. +dotnet_diagnostic.SA1404.severity = none # Code analysis suppression should have justification. +dotnet_diagnostic.SA1405.severity = none # Debug.Assert should provide message text. +dotnet_diagnostic.SA1406.severity = none # Debug.Fail should provide message text. +dotnet_diagnostic.SA1407.severity = none # Arithmetic expressions should declare precedence. +dotnet_diagnostic.SA1408.severity = none # Conditional expressions should declare precedence. +dotnet_diagnostic.SA1409.severity = none # Remove unnecessary code. +dotnet_diagnostic.SA1410.severity = none # Remove delegate parenthesis when possible. +dotnet_diagnostic.SA1411.severity = none # Attribute constructor should not use unnecessary parenthesis. +dotnet_diagnostic.SA1412.severity = none # Store files as UTF-8 with byte order mark. +dotnet_diagnostic.SA1413.severity = none # Use trailing comma in multi-line initializers. + +# StyleCop: Layout Rules +dotnet_diagnostic.SA1500.severity = none # Braces for multi-line statements should not share line. +dotnet_diagnostic.SA1501.severity = none # Statement should not be on a single line. +dotnet_diagnostic.SA1502.severity = none # Element should not be on a single line. +dotnet_diagnostic.SA1503.severity = none # Braces should not be omitted. +dotnet_diagnostic.SA1504.severity = none # All accessors should be single-line or multi-line. +dotnet_diagnostic.SA1505.severity = none # A closing brace should not be preceded by a blank line. +dotnet_diagnostic.SA1506.severity = none # Element documentation headers should not be followed by blank line. +dotnet_diagnostic.SA1507.severity = none # Code should not contain multiple blank lines in a row. +dotnet_diagnostic.SA1508.severity = none # Closing braces should not be preceded by blank line. +dotnet_diagnostic.SA1509.severity = none # Opening braces should not be preceded by blank line. +dotnet_diagnostic.SA1510.severity = none # Chained statement blocks should not be preceded by blank line. +dotnet_diagnostic.SA1511.severity = none # While-do footer should not be preceded by blank line. +dotnet_diagnostic.SA1512.severity = none # Single-line comments should not be followed by blank line. +dotnet_diagnostic.SA1513.severity = none # Closing brace should be followed by blank line. +dotnet_diagnostic.SA1514.severity = none # Element documentation header should be preceded by blank line. +dotnet_diagnostic.SA1515.severity = none # Single-line comment should be preceded by blank line. +dotnet_diagnostic.SA1516.severity = none # Elements should be separated by blank line. +dotnet_diagnostic.SA1517.severity = none # Code should not contain blank lines at start of file. +dotnet_diagnostic.SA1518.severity = none # Use line endings correctly at end of file. +dotnet_diagnostic.SA1519.severity = none # Braces should not be omitted from multi-line child statement. +dotnet_diagnostic.SA1520.severity = none # Use braces consistently. + +# StyleCop: Documentation Rules +dotnet_diagnostic.SA1600.severity = none # Elements should be documented. +dotnet_diagnostic.SA1601.severity = none # Partial elements should be documented. +dotnet_diagnostic.SA1602.severity = none # Enumeration items should be documented. +dotnet_diagnostic.SA1603.severity = none # Documentation should contain valid XML. +dotnet_diagnostic.SA1604.severity = none # Element documentation should have summary. +dotnet_diagnostic.SA1605.severity = none # Partial element documentation should have summary. +dotnet_diagnostic.SA1606.severity = none # Element documentation should have summary text. +dotnet_diagnostic.SA1607.severity = none # Partial element documentation should have summary text. +dotnet_diagnostic.SA1608.severity = none # Element documentation should not have default summary. +dotnet_diagnostic.SA1609.severity = none # Property documentation should have value. +dotnet_diagnostic.SA1610.severity = none # Property documentation should have value text. +dotnet_diagnostic.SA1611.severity = none # Element parameters should be documented. +dotnet_diagnostic.SA1612.severity = none # Element parameter documentation should match element parameters. +dotnet_diagnostic.SA1613.severity = none # Element parameter documentation should declare parameter name. +dotnet_diagnostic.SA1614.severity = none # Element parameter documentation should have text. +dotnet_diagnostic.SA1615.severity = none # Element return value should be documented. +dotnet_diagnostic.SA1616.severity = none # Element return value documentation should have text. +dotnet_diagnostic.SA1617.severity = none # Void return value should not be documented. +dotnet_diagnostic.SA1618.severity = none # The documentation for type parameter 'T' is missing. +dotnet_diagnostic.SA1619.severity = none # Generic type parameters should be documented partial class. +dotnet_diagnostic.SA1620.severity = none # Generic type parameter documentation should match type parameters. +dotnet_diagnostic.SA1621.severity = none # Generic type parameter documentation should declare parameter name. +dotnet_diagnostic.SA1622.severity = none # Generic type parameter documentation should have text. +dotnet_diagnostic.SA1623.severity = none # Property summary documentation should match accessors. +dotnet_diagnostic.SA1624.severity = none # Property summary documentation should omit accessor with restricted access. +dotnet_diagnostic.SA1625.severity = none # Element documentation should not be copied and pasted. +dotnet_diagnostic.SA1626.severity = none # Single-line comments should not use documentation style slashes. +dotnet_diagnostic.SA1627.severity = none # Documentation text should not be empty. +dotnet_diagnostic.SA1628.severity = none # Documentation text should begin with a capital letter. +dotnet_diagnostic.SA1629.severity = suggestion # Documentation text should end with a period. +dotnet_diagnostic.SA1630.severity = none # Documentation text should contain whitespace. +dotnet_diagnostic.SA1631.severity = none # Documentation should meet character percentage. +dotnet_diagnostic.SA1632.severity = none # Documentation text should meet minimum character length. +dotnet_diagnostic.SA1633.severity = none # File should have header. +dotnet_diagnostic.SA1634.severity = none # File header should show copyright. +dotnet_diagnostic.SA1635.severity = none # File header should have copyright text. +dotnet_diagnostic.SA1636.severity = none # File header copyright text should match. +dotnet_diagnostic.SA1137.severity = none # File header should contain file name. +dotnet_diagnostic.SA1638.severity = none # File header file name documentation should match file name. +dotnet_diagnostic.SA1639.severity = none # File header should have summary. +dotnet_diagnostic.SA1640.severity = none # File header should have valid company text. +dotnet_diagnostic.SA1641.severity = none # File header company name text should match. +dotnet_diagnostic.SA1642.severity = none # Constructor summary documentation should begin with standard text. +dotnet_diagnostic.SA1643.severity = none # Destructor summary documentation should begin with standard text. +dotnet_diagnostic.SA1644.severity = none # Documentation headers should not contain blank lines. +dotnet_diagnostic.SA1645.severity = none # Included documentation file does not exist. +dotnet_diagnostic.SA1646.severity = none # Included documentation XPath does not exist. +dotnet_diagnostic.SA1647.severity = none # Include node does not contain valid file and path. +dotnet_diagnostic.SA1648.severity = none # Inheritdoc should be used with inheriting class. +dotnet_diagnostic.SA1649.severity = none # File name should match first type name. +dotnet_diagnostic.SA1650.severity = none # Element documentation should be spelled correctly. +dotnet_diagnostic.SA1651.severity = none # Do not use placeholder elements. diff --git a/src/OrchardCore.Build/Dependencies.props b/src/OrchardCore.Build/Dependencies.props index fcf1e0b4a06..eebcbba7542 100644 --- a/src/OrchardCore.Build/Dependencies.props +++ b/src/OrchardCore.Build/Dependencies.props @@ -54,6 +54,7 @@ + diff --git a/src/OrchardCore.Build/OrchardCore.Commons.props b/src/OrchardCore.Build/OrchardCore.Commons.props index bc1bb79b762..df4d3d3c814 100644 --- a/src/OrchardCore.Build/OrchardCore.Commons.props +++ b/src/OrchardCore.Build/OrchardCore.Commons.props @@ -50,4 +50,8 @@ + + + + diff --git a/src/OrchardCore.Modules/OrchardCore.Localization/AdminMenu.cs b/src/OrchardCore.Modules/OrchardCore.Localization/AdminMenu.cs index 6a093fd21be..d2841a1c40c 100644 --- a/src/OrchardCore.Modules/OrchardCore.Localization/AdminMenu.cs +++ b/src/OrchardCore.Modules/OrchardCore.Localization/AdminMenu.cs @@ -22,7 +22,7 @@ public AdminMenu(IStringLocalizer localizer) S = localizer; } - /// + /// public Task BuildNavigationAsync(string name, NavigationBuilder builder) { if (String.Equals(name, "admin", StringComparison.OrdinalIgnoreCase)) diff --git a/src/OrchardCore.Modules/OrchardCore.Notifications/Migrations/NotificationMigrations.cs b/src/OrchardCore.Modules/OrchardCore.Notifications/Migrations/NotificationMigrations.cs index 75b2cadfd65..713eca98401 100644 --- a/src/OrchardCore.Modules/OrchardCore.Notifications/Migrations/NotificationMigrations.cs +++ b/src/OrchardCore.Modules/OrchardCore.Notifications/Migrations/NotificationMigrations.cs @@ -15,8 +15,8 @@ public int Create() .Column("IsRead") .Column("ReadAtUtc") .Column("CreatedAtUtc") - .Column("Content", column => column.WithLength(NotificationConstants.NotificationIndexContentLength)) - , collection: NotificationConstants.NotificationCollection + .Column("Content", column => column.WithLength(NotificationConstants.NotificationIndexContentLength)), + collection: NotificationConstants.NotificationCollection ); SchemaBuilder.AlterIndexTable(table => table diff --git a/src/OrchardCore/OrchardCore.Apis.GraphQL.Client/ContentTypeCreateResourceBuilder.cs b/src/OrchardCore/OrchardCore.Apis.GraphQL.Client/ContentTypeCreateResourceBuilder.cs index 356271a9851..3f0ffc19d7e 100644 --- a/src/OrchardCore/OrchardCore.Apis.GraphQL.Client/ContentTypeCreateResourceBuilder.cs +++ b/src/OrchardCore/OrchardCore.Apis.GraphQL.Client/ContentTypeCreateResourceBuilder.cs @@ -1,3 +1,4 @@ +using System; using System.Collections.Generic; using System.Text; @@ -55,7 +56,7 @@ internal string Build() for (var i = 0; i < _contentPartBuilders.Count; i++) { - sbo.Append(_contentPartBuilders[i].Build()).AppendLine((i == (_contentPartBuilders.Count - 1)) ? "" : ","); + sbo.Append(_contentPartBuilders[i].Build()).AppendLine((i == (_contentPartBuilders.Count - 1)) ? String.Empty : ","); } sbo.Append('}').AppendLine(); diff --git a/src/OrchardCore/OrchardCore.Localization.Abstractions/CultureDictionaryRecord.cs b/src/OrchardCore/OrchardCore.Localization.Abstractions/CultureDictionaryRecord.cs index d579f98fb34..50a2f66493a 100644 --- a/src/OrchardCore/OrchardCore.Localization.Abstractions/CultureDictionaryRecord.cs +++ b/src/OrchardCore/OrchardCore.Localization.Abstractions/CultureDictionaryRecord.cs @@ -11,7 +11,7 @@ public class CultureDictionaryRecord /// Creates new instance of . /// /// The message Id. - /// a list of translations + /// a list of translations. public CultureDictionaryRecord(string messageId, params string[] translations) : this(messageId, null, translations) { @@ -23,7 +23,7 @@ public CultureDictionaryRecord(string messageId, params string[] translations) /// /// The message Id. /// The message context. - /// a list of translations + /// a list of translations. public CultureDictionaryRecord(string messageId, string context, string[] translations) { Key = GetKey(messageId, context); diff --git a/src/OrchardCore/OrchardCore.OpenId.Core/OpenIdExtensions.cs b/src/OrchardCore/OrchardCore.OpenId.Core/OpenIdExtensions.cs index d032b008b0e..d92c9e05de2 100644 --- a/src/OrchardCore/OrchardCore.OpenId.Core/OpenIdExtensions.cs +++ b/src/OrchardCore/OrchardCore.OpenId.Core/OpenIdExtensions.cs @@ -46,14 +46,10 @@ public static OpenIddictCoreBuilder UseOrchardManagers(this OpenIddictCoreBuilde // Register proxy delegates so that the Orchard managers can be directly // resolved from the DI using the non-generic, Orchard-specific interfaces. - builder.Services.TryAddScoped(provider => (IOpenIdApplicationManager) - provider.GetRequiredService()); - builder.Services.TryAddScoped(provider => (IOpenIdAuthorizationManager) - provider.GetRequiredService()); - builder.Services.TryAddScoped(provider => (IOpenIdScopeManager) - provider.GetRequiredService()); - builder.Services.TryAddScoped(provider => (IOpenIdTokenManager) - provider.GetRequiredService()); + builder.Services.TryAddScoped(provider => (IOpenIdApplicationManager)provider.GetRequiredService()); + builder.Services.TryAddScoped(provider => (IOpenIdAuthorizationManager)provider.GetRequiredService()); + builder.Services.TryAddScoped(provider => (IOpenIdScopeManager)provider.GetRequiredService()); + builder.Services.TryAddScoped(provider => (IOpenIdTokenManager)provider.GetRequiredService()); return builder; }