-
Notifications
You must be signed in to change notification settings - Fork 42
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
658 changed files
with
74,969 additions
and
42,285 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,212 @@ | ||
# Configuration copied from the .NET foundation | ||
# https://github.com/dotnet/runtime/blob/main/.editorconfig | ||
|
||
# top-most EditorConfig file | ||
root = true | ||
|
||
# Default settings: | ||
# A newline ending every file | ||
# Use 4 spaces as indentation | ||
[*] | ||
insert_final_newline = true | ||
indent_style = space | ||
indent_size = 4 | ||
trim_trailing_whitespace = true | ||
|
||
[project.json] | ||
indent_size = 2 | ||
|
||
# Generated code | ||
[*{_AssemblyInfo.cs,.notsupported.cs}] | ||
generated_code = true | ||
|
||
# C# files | ||
[*.cs] | ||
# New line preferences | ||
csharp_new_line_before_open_brace = all | ||
csharp_new_line_before_else = true | ||
csharp_new_line_before_catch = true | ||
csharp_new_line_before_finally = true | ||
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 preferences | ||
csharp_indent_block_contents = true | ||
csharp_indent_braces = false | ||
csharp_indent_case_contents = true | ||
csharp_indent_case_contents_when_block = true | ||
csharp_indent_switch_labels = true | ||
csharp_indent_labels = one_less_than_current | ||
|
||
# Modifier preferences | ||
csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async:suggestion | ||
|
||
# avoid this. unless absolutely necessary | ||
dotnet_style_qualification_for_field = false:suggestion | ||
dotnet_style_qualification_for_property = false:suggestion | ||
dotnet_style_qualification_for_method = false:suggestion | ||
dotnet_style_qualification_for_event = false:suggestion | ||
|
||
# Types: use keywords instead of BCL types, and permit var only when the type is clear | ||
csharp_style_var_for_built_in_types = false:suggestion | ||
csharp_style_var_when_type_is_apparent = false:none | ||
csharp_style_var_elsewhere = false:suggestion | ||
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion | ||
dotnet_style_predefined_type_for_member_access = true:suggestion | ||
|
||
# name all constant fields using PascalCase | ||
dotnet_naming_rule.constant_fields_should_be_pascal_case.severity = suggestion | ||
dotnet_naming_rule.constant_fields_should_be_pascal_case.symbols = constant_fields | ||
dotnet_naming_rule.constant_fields_should_be_pascal_case.style = pascal_case_style | ||
dotnet_naming_symbols.constant_fields.applicable_kinds = field | ||
dotnet_naming_symbols.constant_fields.required_modifiers = const | ||
dotnet_naming_style.pascal_case_style.capitalization = pascal_case | ||
|
||
# static fields should have s_ prefix | ||
dotnet_naming_rule.static_fields_should_have_prefix.severity = suggestion | ||
dotnet_naming_rule.static_fields_should_have_prefix.symbols = static_fields | ||
dotnet_naming_rule.static_fields_should_have_prefix.style = static_prefix_style | ||
dotnet_naming_symbols.static_fields.applicable_kinds = field | ||
dotnet_naming_symbols.static_fields.required_modifiers = static | ||
dotnet_naming_symbols.static_fields.applicable_accessibilities = private, internal, private_protected | ||
dotnet_naming_style.static_prefix_style.required_prefix = s_ | ||
dotnet_naming_style.static_prefix_style.capitalization = camel_case | ||
|
||
# internal and private fields should be _camelCase | ||
dotnet_naming_rule.camel_case_for_private_internal_fields.severity = suggestion | ||
dotnet_naming_rule.camel_case_for_private_internal_fields.symbols = private_internal_fields | ||
dotnet_naming_rule.camel_case_for_private_internal_fields.style = camel_case_underscore_style | ||
dotnet_naming_symbols.private_internal_fields.applicable_kinds = field | ||
dotnet_naming_symbols.private_internal_fields.applicable_accessibilities = private, internal | ||
dotnet_naming_style.camel_case_underscore_style.required_prefix = _ | ||
dotnet_naming_style.camel_case_underscore_style.capitalization = camel_case | ||
|
||
# Code style defaults | ||
csharp_style_namespace_declarations = file_scoped:warning | ||
csharp_using_directive_placement = outside_namespace:error | ||
dotnet_sort_system_directives_first = true | ||
csharp_prefer_braces = true:silent | ||
csharp_preserve_single_line_blocks = true:none | ||
csharp_preserve_single_line_statements = false:none | ||
csharp_prefer_static_local_function = true:suggestion | ||
csharp_prefer_simple_using_statement = false:none | ||
csharp_style_prefer_switch_expression = true:suggestion | ||
dotnet_style_readonly_field = true:suggestion | ||
|
||
# Expression-level preferences | ||
dotnet_style_object_initializer = true:suggestion | ||
dotnet_style_collection_initializer = true:suggestion | ||
dotnet_style_explicit_tuple_names = true:suggestion | ||
dotnet_style_coalesce_expression = true:suggestion | ||
dotnet_style_null_propagation = true:suggestion | ||
dotnet_style_prefer_is_null_check_over_reference_equality_method = true:suggestion | ||
dotnet_style_prefer_inferred_tuple_names = true:suggestion | ||
dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion | ||
dotnet_style_prefer_auto_properties = true:suggestion | ||
dotnet_style_prefer_conditional_expression_over_assignment = true:silent | ||
dotnet_style_prefer_conditional_expression_over_return = true:silent | ||
csharp_prefer_simple_default_expression = true:suggestion | ||
|
||
# Expression-bodied members | ||
csharp_style_expression_bodied_methods = true:silent | ||
csharp_style_expression_bodied_constructors = true:silent | ||
csharp_style_expression_bodied_operators = true:silent | ||
csharp_style_expression_bodied_properties = true:silent | ||
csharp_style_expression_bodied_indexers = true:silent | ||
csharp_style_expression_bodied_accessors = true:silent | ||
csharp_style_expression_bodied_lambdas = true:silent | ||
csharp_style_expression_bodied_local_functions = true:silent | ||
|
||
# Pattern matching | ||
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion | ||
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion | ||
csharp_style_inlined_variable_declaration = true:suggestion | ||
|
||
# Null checking preferences | ||
csharp_style_throw_expression = true:suggestion | ||
csharp_style_conditional_delegate_call = true:suggestion | ||
|
||
# Other features | ||
csharp_style_prefer_index_operator = false:none | ||
csharp_style_prefer_range_operator = false:none | ||
csharp_style_pattern_local_over_anonymous_function = false:none | ||
|
||
# Space preferences | ||
csharp_space_after_cast = false | ||
csharp_space_after_colon_in_inheritance_clause = true | ||
csharp_space_after_comma = true | ||
csharp_space_after_dot = false | ||
csharp_space_after_keywords_in_control_flow_statements = true | ||
csharp_space_after_semicolon_in_for_statement = true | ||
csharp_space_around_binary_operators = before_and_after | ||
csharp_space_around_declaration_statements = do_not_ignore | ||
csharp_space_before_colon_in_inheritance_clause = true | ||
csharp_space_before_comma = false | ||
csharp_space_before_dot = false | ||
csharp_space_before_open_square_brackets = false | ||
csharp_space_before_semicolon_in_for_statement = false | ||
csharp_space_between_empty_square_brackets = false | ||
csharp_space_between_method_call_empty_parameter_list_parentheses = false | ||
csharp_space_between_method_call_name_and_opening_parenthesis = false | ||
csharp_space_between_method_call_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_declaration_parameter_list_parentheses = false | ||
csharp_space_between_parentheses = false | ||
csharp_space_between_square_brackets = false | ||
|
||
# Organize usings | ||
dotnet_separate_import_directive_groups = true | ||
dotnet_sort_system_directives_first = true | ||
|
||
# No null check simplification suggestions | ||
dotnet_diagnostic.IDE0031.severity = none | ||
dotnet_diagnostic.IDE0041.severity = none | ||
|
||
# No Auto Property recommendation | ||
dotnet_diagnostic.IDE0032.severity = none | ||
|
||
# No Readonly recommendation, As it can behave strangely with serialization | ||
dotnet_diagnostic.IDE0044.severity = none | ||
|
||
# No primary constructor suggestions | ||
dotnet_diagnostic.IDE0290.severity = none | ||
|
||
# License header | ||
file_header_template = This file is part of the Prowl Game Engine\nLicensed under the MIT License. See the LICENSE file in the project root for details. | ||
|
||
# C++ Files | ||
[*.{cpp,h,in}] | ||
curly_bracket_next_line = true | ||
indent_brace_style = Allman | ||
|
||
# Xml project files | ||
[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,nativeproj,locproj}] | ||
indent_size = 2 | ||
|
||
[*.{csproj,vbproj,proj,nativeproj,locproj}] | ||
charset = utf-8 | ||
|
||
# Xml build files | ||
[*.builds] | ||
indent_size = 2 | ||
|
||
# Xml files | ||
[*.{xml,stylecop,resx,ruleset}] | ||
indent_size = 2 | ||
|
||
# Xml config files | ||
[*.{props,targets,config,nuspec}] | ||
indent_size = 2 | ||
|
||
# YAML config files | ||
[*.{yml,yaml}] | ||
indent_size = 2 | ||
|
||
# Shell scripts | ||
[*.sh] | ||
end_of_line = lf | ||
|
||
[*.{cmd,bat}] | ||
end_of_line = crlf |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,28 +1,69 @@ | ||
# This workflow will build a .NET project | ||
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net | ||
|
||
name: Build | ||
name: Build and Test | ||
|
||
on: | ||
push: | ||
branches: [ "main" ] | ||
pull_request: | ||
branches: [ "main" ] | ||
|
||
jobs: | ||
build: | ||
test: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
# Clone repo and submodules | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: true | ||
|
||
# Install .NET | ||
- name: Setup .NET | ||
uses: actions/setup-dotnet@v4 | ||
with: | ||
dotnet-version: 8.x | ||
|
||
# For caching purposes, restore dependencies in a dedicated step | ||
- name: Restore dependencies | ||
run: dotnet restore | ||
|
||
# Build | ||
- name: Build | ||
run: dotnet build --no-restore | ||
|
||
# Test | ||
- name: Test | ||
run: dotnet test | ||
|
||
publish: | ||
runs-on: ubuntu-latest | ||
|
||
needs: test | ||
|
||
strategy: | ||
matrix: | ||
runtime: [linux-x64, win-x64, osx-x64] | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Setup .NET | ||
uses: actions/setup-dotnet@v3 | ||
with: | ||
dotnet-version: 8.0.x | ||
|
||
- name: Restore dependencies | ||
run: dotnet restore | ||
|
||
- name: Build | ||
run: dotnet build --no-restore | ||
# Clone repo and submodules | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: true | ||
|
||
# Install .NET | ||
- name: Setup .NET | ||
uses: actions/setup-dotnet@v4 | ||
with: | ||
dotnet-version: 8.x | ||
|
||
# Publish | ||
- name: Publish | ||
run: dotnet publish ./Prowl.Editor/Prowl.Editor.csproj --configuration Release --output ./publish/${{ matrix.runtime }}/Prowl --runtime ${{ matrix.runtime }} --framework net8.0 | ||
|
||
# Save the resulting folder as artifacts | ||
- name: Upload artifact | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: ${{ matrix.runtime }} | ||
path: ./publish/${{ matrix.runtime }}/Prowl | ||
retention-days: 30 |
Oops, something went wrong.