diff --git a/.editorconfig b/.editorconfig index 3848020..ed9d022 100644 --- a/.editorconfig +++ b/.editorconfig @@ -14,22 +14,28 @@ indent_size = 2 indent_style = space trim_trailing_whitespace = false -[*.{csproj,props,targets,slnx}] +[*.{csproj,props,targets,slnx,config}] indent_size = 2 indent_style = space -[nuget.config] -indent_size = 2 -indent_style = space +[*.{cs,vb}] +#### code quality rule overrides #### + +#> Identifiers should not match keywords +dotnet_diagnostic.CA1716.severity = suggestion + +#### code style rule default severity #### +dotnet_analyzer_diagnostic.category-style.severity = warning + +#> Use top-level statements +dotnet_diagnostic.IDE0210.severity = none #### .NET Coding Conventions #### [*.{cs,vb}] - # Organize usings file_header_template = Copyright (c) The Geekeey Authors\nSPDX-License-Identifier: EUPL-1.2 dotnet_separate_import_directive_groups = true dotnet_sort_system_directives_first = true -dotnet_diagnostic.IDE0005.severity = suggestion # https://github.com/dotnet/roslyn/issues/41640 # this. and Me. preferences dotnet_style_qualification_for_event = false @@ -51,9 +57,8 @@ dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity dotnet_style_require_accessibility_modifiers = for_non_interface_members # Expression-level preferences - dotnet_diagnostic.IDE0270.severity = none -dotnet_style_coalesce_expression = true # IDE0029,IDE0030,IDE0270 +dotnet_style_coalesce_expression = true dotnet_style_collection_initializer = true dotnet_style_explicit_tuple_names = true @@ -64,16 +69,17 @@ dotnet_style_prefer_auto_properties = true dotnet_style_prefer_compound_assignment = true dotnet_diagnostic.IDE0045.severity = suggestion -dotnet_style_prefer_conditional_expression_over_assignment = true # IDE0045 +dotnet_style_prefer_conditional_expression_over_assignment = true + dotnet_diagnostic.IDE0046.severity = suggestion -dotnet_style_prefer_conditional_expression_over_return = true # IDE0046 +dotnet_style_prefer_conditional_expression_over_return = true dotnet_style_prefer_inferred_anonymous_type_member_names = true dotnet_style_prefer_inferred_tuple_names = true dotnet_style_prefer_is_null_check_over_reference_equality_method = true dotnet_style_prefer_simplified_boolean_expressions = true dotnet_style_prefer_simplified_interpolation = true -dotnet_style_namespace_match_folder = false # resharper: resharper_check_namespace_highlighting +dotnet_style_namespace_match_folder = false # Field preferences dotnet_style_readonly_field = true @@ -132,8 +138,8 @@ csharp_style_prefer_range_operator = true csharp_style_throw_expression = true dotnet_diagnostic.IDE0058.severity = suggestion -csharp_style_unused_value_assignment_preference = discard_variable # IDE0058 -csharp_style_unused_value_expression_statement_preference = discard_variable # IDE0058 +csharp_style_unused_value_assignment_preference = discard_variable +csharp_style_unused_value_expression_statement_preference = discard_variable # 'using' directive preferences csharp_using_directive_placement = outside_namespace @@ -401,19 +407,3 @@ dotnet_naming_style.s_camelcase.required_prefix = s_ dotnet_naming_style.s_camelcase.required_suffix = dotnet_naming_style.s_camelcase.word_separator = dotnet_naming_style.s_camelcase.capitalization = camel_case - -[*.{cs,vb}] -dotnet_analyzer_diagnostic.category-style.severity = warning -dotnet_analyzer_diagnostic.category-design.severity = warning -dotnet_analyzer_diagnostic.category-globalization.severity = notice -dotnet_analyzer_diagnostic.category-naming.severity = warning -dotnet_analyzer_diagnostic.category-performance.severity = warning -dotnet_analyzer_diagnostic.category-reliability.severity = warning -dotnet_analyzer_diagnostic.category-security.severity = warning -dotnet_analyzer_diagnostic.category-usage.severity = warning -dotnet_analyzer_diagnostic.category-maintainability.severity = warning - -dotnet_diagnostic.CA1716.severity = none # Identifiers should not match keywords -dotnet_diagnostic.CA1816.severity = suggestion # Dispose methods should call SuppressFinalize -dotnet_diagnostic.CA1848.severity = none # Use the LoggerMessage delegates -dotnet_diagnostic.IDE0210.severity = none # Use top-level statements diff --git a/.forgejo/workflows/default.yml b/.forgejo/workflows/default.yml index a007574..51c054c 100644 --- a/.forgejo/workflows/default.yml +++ b/.forgejo/workflows/default.yml @@ -34,6 +34,10 @@ jobs: run: | dotnet pack -p:ContinuousIntegrationBuild=true + - name: dotnet format --verify-no-changes + run: | + dotnet format --no-restore --verify-no-changes --verbosity normal + - name: dotnet test run: | - dotnet test -p:ContinuousIntegrationBuild=true \ No newline at end of file + dotnet test -p:ContinuousIntegrationBuild=true diff --git a/.forgejo/workflows/release.yml b/.forgejo/workflows/release.yml index 603a9d6..36f7097 100644 --- a/.forgejo/workflows/release.yml +++ b/.forgejo/workflows/release.yml @@ -29,8 +29,12 @@ jobs: run: | dotnet test -p:ContinuousIntegrationBuild=true + - name: dotnet format --verify-no-changes + run: | + dotnet format --no-restore --verify-no-changes --verbosity normal + - name: dotnet nuget push run: | # The token used here is only intended to publish packages dotnet nuget push -k "${{ secrets.geekeey_package_registry }}" \ - artifacts/package/release/Geekeey.*.nupkg \ No newline at end of file + artifacts/package/release/Geekeey.*.nupkg diff --git a/Directory.Build.props b/Directory.Build.props index 7996aa7..3f87bff 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -13,6 +13,7 @@ + Recommended true nullable true @@ -34,4 +35,4 @@ moderate all - \ No newline at end of file + diff --git a/src/process.tests/Geekeey.Process.Tests.csproj b/src/process.tests/Geekeey.Process.Tests.csproj index 101ad05..3b510ec 100644 --- a/src/process.tests/Geekeey.Process.Tests.csproj +++ b/src/process.tests/Geekeey.Process.Tests.csproj @@ -6,10 +6,6 @@ false - - Geekeey.Process - - @@ -19,4 +15,4 @@ - \ No newline at end of file + diff --git a/src/process/Buffered/BufferedCommandResult.cs b/src/process/Buffered/BufferedCommandResult.cs index 1ab4750..4d90700 100644 --- a/src/process/Buffered/BufferedCommandResult.cs +++ b/src/process/Buffered/BufferedCommandResult.cs @@ -42,7 +42,7 @@ public partial class BufferedCommandResult : CommandResult public partial class BufferedCommandResult { /// - /// Converts the result to a string value that corresponds to the property. + /// Converts the result to a string value that corresponds to the property. /// public static implicit operator string(BufferedCommandResult result) { diff --git a/src/process/CommandResult.cs b/src/process/CommandResult.cs index 17c66fa..433e62e 100644 --- a/src/process/CommandResult.cs +++ b/src/process/CommandResult.cs @@ -47,7 +47,7 @@ public partial class CommandResult public partial class CommandResult { /// - /// Converts the result to an integer value that corresponds to the property. + /// Converts the result to an integer value that corresponds to the property. /// public static implicit operator int(CommandResult result) { @@ -55,7 +55,7 @@ public partial class CommandResult } /// - /// Converts the result to a boolean value that corresponds to the property. + /// Converts the result to a boolean value that corresponds to the property. /// public static implicit operator bool(CommandResult result) { diff --git a/src/process/Geekeey.Process.csproj b/src/process/Geekeey.Process.csproj index 209f3c2..ef1e89d 100644 --- a/src/process/Geekeey.Process.csproj +++ b/src/process/Geekeey.Process.csproj @@ -7,7 +7,6 @@ - Geekeey.Process true true @@ -30,4 +29,4 @@ - \ No newline at end of file +