Skip to content

Commit

Permalink
Merge branch 'release/0.37.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
coenm committed Oct 13, 2020
2 parents b59673b + 3587f88 commit 83b45cb
Show file tree
Hide file tree
Showing 125 changed files with 4,130 additions and 1 deletion.
252 changes: 252 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,252 @@
root = true

# Don't use tabs for indentation.
[*]
indent_style = space

# Code files
[*.{cs,csx,vb,vbx}]
indent_size = 4
insert_final_newline = true
charset = utf-8-bom
trim_trailing_whitespace = true

# Xml project files
[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj}]
indent_size = 2

# Xml config files
[*.{props,targets,ruleset,config,nuspec,resx,vsixmanifest,vsct}]
indent_size = 2

# Xaml files
[*.xaml]
indent_size = 2

###############################
# .NET Coding Conventions #
###############################

[*.cs]
# Organize usings
dotnet_sort_system_directives_first = true

# CSharp code style settings
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

dotnet_style_predefined_type_for_locals_parameters_members = true : suggestion
dotnet_style_predefined_type_for_member_access = true : suggestion

# Modifier preferences
csharp_preferred_modifier_order = public, private, protected, internal, static, extern, new, virtual, abstract, sealed, override, readonly, unsafe, volatile, async
dotnet_style_require_accessibility_modifiers = always : suggestion
dotnet_style_readonly_field = true : warning

# Parentheses preferences
dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity : none
dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity : none
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity : none
dotnet_style_parentheses_in_other_operators = never_if_unnecessary : none

# Expression-level preferences
dotnet_style_object_initializer = true : suggestion
dotnet_style_collection_initializer = true : suggestion
dotnet_style_explicit_tuple_names = 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 : silent
dotnet_style_prefer_is_null_check_over_reference_equality_method = true : silent
dotnet_style_prefer_conditional_expression_over_assignment = true : suggestion
dotnet_style_prefer_conditional_expression_over_return = true : suggestion

# Implicit and explicit types

csharp_style_var_for_built_in_types = false : none
csharp_style_var_when_type_is_apparent = true : suggestion
csharp_style_var_elsewhere = false : silent

# Expression-bodied members
csharp_style_expression_bodied_methods = when_on_single_line : silent
csharp_style_expression_bodied_constructors = when_on_single_line : silent
csharp_style_expression_bodied_operators = when_on_single_line : silent
csharp_style_expression_bodied_properties = true : suggestion
csharp_style_expression_bodied_indexers = true : suggestion
csharp_style_expression_bodied_accessors = true : suggestion

# Pattern matching
csharp_style_pattern_matching_over_is_with_cast_check = true : suggestion
csharp_style_pattern_matching_over_as_with_null_check = true : suggestion

# Inlined variable declarations
csharp_style_inlined_variable_declaration = true : warning

# Expression-level preferences
csharp_prefer_simple_default_expression = true : suggestion
csharp_style_deconstructed_variable_declaration = false : none
csharp_style_pattern_local_over_anonymous_function = true : suggestion

# "Null" checking preferences
csharp_style_throw_expression = true : silent
csharp_style_conditional_delegate_call = true : suggestion

# Code block preferences
csharp_prefer_braces = false : none

###############################
# C# Formatting Rules #
###############################

# Newline options
csharp_new_line_before_open_brace = control_blocks, local_functions, methods, types, properties, accessors
csharp_new_line_before_else = false : warning
csharp_new_line_before_catch = true : warning
csharp_new_line_before_finally = true : warning
csharp_new_line_before_members_in_object_initializers = true : suggestion
csharp_new_line_before_members_in_anonymous_types = true : suggestion
csharp_new_line_between_query_expression_clauses = true : warning

# Indentation options
csharp_indent_case_contents = true
csharp_indent_switch_labels = true
csharp_indent_labels = flush_left

# Spacing options
csharp_space_after_cast = false
csharp_space_after_keywords_in_control_flow_statements = true
csharp_space_between_method_declaration_parameter_list_parentheses = false
csharp_space_between_method_call_parameter_list_parentheses = false
csharp_space_between_parentheses = none
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_empty_parameter_list_parentheses = false
csharp_space_between_method_call_name_and_opening_parenthesis = false
csharp_space_between_method_call_empty_parameter_list_parentheses = false

# Wrapping options
csharp_preserve_single_line_statements = true
csharp_preserve_single_line_blocks = true


###############################
# Naming Conventions #
###############################

dotnet_naming_style.UpperCamelCase.capitalization = pascal_case

dotnet_naming_style.IUpperCamelCase.capitalization = pascal_case
dotnet_naming_style.IUpperCamelCase.required_prefix = I

dotnet_naming_style.TUpperCamelCase.capitalization = pascal_case
dotnet_naming_style.TUpperCamelCase.required_prefix = T

dotnet_naming_style.lowerCamelCase.capitalization = camel_case

dotnet_naming_style.ALL_UPPER.capitalization = all_upper
dotnet_naming_style.ALL_UPPER.word_separator = _

dotnet_naming_style._lowerCamelCase.capitalization = camel_case
dotnet_naming_style._lowerCamelCase.required_prefix = _

# Types and namespaces (UpperCamelCase)
dotnet_naming_symbols.types_and_namespaces.applicable_kinds = namespace, class, struct, enum
dotnet_naming_symbols.types_and_namespaces.applicable_accessibilities = *
dotnet_naming_rule.types_and_namespaces.style = UpperCamelCase
dotnet_naming_rule.types_and_namespaces.symbols = types_and_namespaces
dotnet_naming_rule.types_and_namespaces.severity = warning

# Interfaces (IUpperCamelCase)
dotnet_naming_symbols.interfaces.applicable_kinds = interface
dotnet_naming_symbols.interfaces.applicable_accessibilities = *
dotnet_naming_rule.interfaces.style = IUpperCamelCase
dotnet_naming_rule.interfaces.symbols = interfaces
dotnet_naming_rule.interfaces.severity = warning

# Type parameters (TUpperCamelCase)
dotnet_naming_symbols.type_parameters.applicable_kinds = type_parameter
dotnet_naming_symbols.type_parameters.applicable_accessibilities = *
dotnet_naming_rule.type_parameters.style = TUpperCamelCase
dotnet_naming_rule.type_parameters.symbols = type_parameters
dotnet_naming_rule.type_parameters.severity = warning

# Constant fields (ALL_UPPER)
dotnet_naming_symbols.constant_field.applicable_kinds = field
dotnet_naming_symbols.constant_field.required_modifiers = const
dotnet_naming_rule.constant_field.style = ALL_UPPER
dotnet_naming_rule.constant_field.symbols = constant_field
dotnet_naming_rule.constant_field.severity = warning

# Fields (private) (_lowerCamelCase)
dotnet_naming_symbols.private_instance_field.applicable_kinds = field
dotnet_naming_symbols.private_instance_field.applicable_accessibilities = private
dotnet_naming_rule.private_instance_field.style = _lowerCamelCase
dotnet_naming_rule.private_instance_field.symbols = private_instance_field
dotnet_naming_rule.private_instance_field.severity = warning

# Fields (not private) (UpperCamelCase[_lowerCamelCase])
dotnet_naming_symbols.public_fields.applicable_kinds = field
dotnet_naming_symbols.public_fields.applicable_accessibilities = public,internal,protected,protected_internal
dotnet_naming_rule.public_fields.style = UpperCamelCase
dotnet_naming_rule.public_fields.symbols = public_fields
dotnet_naming_rule.public_fields.severity = suggestion

# Methods, properties and events (UpperCamelCase)
dotnet_naming_symbols.methods_properties_events.applicable_kinds = method,property,event
dotnet_naming_symbols.methods_properties_events.applicable_accessibilities = *
dotnet_naming_rule.methods_properties_events.style = UpperCamelCase
dotnet_naming_rule.methods_properties_events.symbols = methods_properties_events
dotnet_naming_rule.methods_properties_events.severity = warning

# Constants (ALL_UPPER)
dotnet_naming_symbols.constant_symbols.applicable_kinds = *
dotnet_naming_symbols.constant_symbols.applicable_accessibilities = *
dotnet_naming_symbols.constant_symbols.required_modifiers = const
dotnet_naming_rule.constants.style = ALL_UPPER
dotnet_naming_rule.constants.symbols = constant_symbols
dotnet_naming_rule.constants.severity = warning

# Local functions (UpperCamelCase)
dotnet_naming_symbols.local_functions.applicable_kinds = local_function
dotnet_naming_symbols.local_functions.applicable_accessibilities = local
dotnet_naming_rule.local_functions.style = UpperCamelCase
dotnet_naming_rule.local_functions.symbols = local_functions
dotnet_naming_rule.local_functions.severity = warning

# Local variables (lowerCamelCase)
dotnet_naming_symbols.local_variables.applicable_kinds = local
dotnet_naming_symbols.local_variables.applicable_accessibilities = local
dotnet_naming_rule.local_variables.style = lowerCamelCase
dotnet_naming_rule.local_variables.symbols = local_variables
dotnet_naming_rule.local_variables.severity = warning

# Parameter (lowerCamelCase)
dotnet_naming_symbols.parameter.applicable_kinds = parameter
dotnet_naming_symbols.parameters.applicable_accessibilities = *
dotnet_naming_rule.parameters.style = lowerCamelCase
dotnet_naming_rule.parameters.symbols = parameters
dotnet_naming_rule.parameters.severity = warning

# All other entities (UpperCamelCase)
dotnet_naming_symbols.all.applicable_kinds = *
dotnet_naming_symbols.all.applicable_accessibilities = *
dotnet_naming_rule.all.style = UpperCamelCase
dotnet_naming_rule.all.symbols = all
dotnet_naming_rule.all.severity = silent

# SA1101: Prefix local calls with this
dotnet_diagnostic.SA1101.severity = none

# SA1503: Braces should not be omitted
dotnet_diagnostic.SA1503.severity = none

# SA1309: Field names should not begin with underscore
dotnet_diagnostic.SA1309.severity = none

# SA1600: Elements should be documented
dotnet_diagnostic.SA1600.severity = silent

# SA1633: File should have header
dotnet_diagnostic.SA1633.severity = none
10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -348,3 +348,13 @@ MigrationBackup/

# Ionide (cross platform F# VS Code tools) working folder
.ionide/
src/PdfGenerator/costura32/
src/PdfGenerator/costura64/
example/*.pdf
example/**/*.pdf
*.lnk
Microsoft.Office.Interop.Word.dll
*.diff


*.received.*
9 changes: 9 additions & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<RestoreSources>
https://api.nuget.org/v3/index.json;
https://nuget.devexpress.com/GoFpbFP9YVNRtd1GIIs9Lw5Lzcx1LaHpPAbIc21ZoTHARlTaiU/api
</RestoreSources>
</PropertyGroup>
</Project>
4 changes: 4 additions & 0 deletions Directory.Build.targets
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Project>
<Import Project="build\Packages.targets" />
</Project>
Loading

0 comments on commit 83b45cb

Please sign in to comment.