Skip to content

Commit

Permalink
Add code style validation
Browse files Browse the repository at this point in the history
  • Loading branch information
Alexander01998 committed Dec 17, 2023
1 parent bc4d120 commit aa6ff05
Show file tree
Hide file tree
Showing 6 changed files with 571 additions and 1 deletion.
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Disable LF normalization
* -text
2 changes: 1 addition & 1 deletion .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
- name: Execute Gradle build
run: ./gradlew build
run: ./gradlew build spotlessCheck
- name: VirusTotal scan
if: github.event_name == 'push'
uses: crazy-max/ghaction-virustotal@v4
Expand Down
11 changes: 11 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ plugins {
id 'maven-publish'
id 'com.matthewprenger.cursegradle' version '1.4.0'
id "com.modrinth.minotaur" version "2.+"
id 'com.diffplug.spotless' version '6.23.3'
}

def ENV = System.getenv()
Expand Down Expand Up @@ -64,6 +65,16 @@ jar {
}
}

spotless {
java {
removeUnusedImports()
indentWithTabs()
trimTrailingWhitespace()
eclipse().configFile(file("codestyle/formatter.xml"))
lineEndings('WINDOWS')
}
}

// configure the maven publication
publishing {
publications {
Expand Down
144 changes: 144 additions & 0 deletions codestyle/cleanup.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<profiles version="2">
<profile kind="CleanUpProfile" name="Wurst-Imperium 2022-06" version="2">
<setting id="cleanup.use_autoboxing" value="true"/>
<setting id="cleanup.remove_redundant_semicolons" value="true"/>
<setting id="cleanup.system_property_file_separator" value="true"/>
<setting id="cleanup.objects_equals" value="true"/>
<setting id="cleanup.primitive_parsing" value="true"/>
<setting id="cleanup.remove_trailing_whitespaces" value="true"/>
<setting id="cleanup.remove_unused_private_fields" value="true"/>
<setting id="cleanup.try_with_resource" value="true"/>
<setting id="cleanup.system_property" value="false"/>
<setting id="cleanup.add_missing_nls_tags" value="false"/>
<setting id="cleanup.stringbuilder" value="false"/>
<setting id="cleanup.push_down_negation" value="false"/>
<setting id="cleanup.system_property_path_separator" value="true"/>
<setting id="cleanup.use_var" value="false"/>
<setting id="cleanup.use_blocks_only_for_return_and_throw" value="false"/>
<setting id="cleanup.convert_functional_interfaces" value="true"/>
<setting id="cleanup.make_type_abstract_if_missing_method" value="false"/>
<setting id="cleanup.remove_private_constructors" value="true"/>
<setting id="cleanup.evaluate_nullable" value="true"/>
<setting id="cleanup.strictly_equal_or_different" value="false"/>
<setting id="cleanup.system_property_boolean" value="true"/>
<setting id="cleanup.embedded_if" value="true"/>
<setting id="cleanup.join" value="true"/>
<setting id="cleanup.return_expression" value="false"/>
<setting id="cleanup.remove_unnecessary_casts" value="true"/>
<setting id="cleanup.redundant_falling_through_block_end" value="true"/>
<setting id="cleanup.overridden_assignment_move_decl" value="true"/>
<setting id="cleanup.always_use_parentheses_in_expressions" value="false"/>
<setting id="cleanup.use_parentheses_in_expressions" value="true"/>
<setting id="cleanup.multi_catch" value="true"/>
<setting id="cleanup.if_condition" value="true"/>
<setting id="cleanup.comparison_statement" value="true"/>
<setting id="cleanup.use_this_for_non_static_method_access_only_if_necessary" value="true"/>
<setting id="cleanup.use_unboxing" value="true"/>
<setting id="cleanup.bitwise_conditional_expression" value="false"/>
<setting id="cleanup.remove_trailing_whitespaces_ignore_empty" value="false"/>
<setting id="cleanup.instanceof" value="false"/>
<setting id="cleanup.correct_indentation" value="true"/>
<setting id="cleanup.make_private_fields_final" value="true"/>
<setting id="cleanup.boolean_value_rather_than_comparison" value="true"/>
<setting id="cleanup.qualify_static_member_accesses_with_declaring_class" value="true"/>
<setting id="cleanup.no_string_creation" value="true"/>
<setting id="cleanup.add_missing_override_annotations_interface_methods" value="true"/>
<setting id="cleanup.substring" value="true"/>
<setting id="cleanup.lazy_logical_operator" value="false"/>
<setting id="cleanup.remove_unused_method_parameters" value="false"/>
<setting id="cleanup.valueof_rather_than_instantiation" value="true"/>
<setting id="cleanup.qualify_static_field_accesses_with_declaring_class" value="false"/>
<setting id="cleanup.pull_out_if_from_if_else" value="false"/>
<setting id="cleanup.use_anonymous_class_creation" value="false"/>
<setting id="cleanup.convert_to_enhanced_for_loop_if_loop_var_used" value="false"/>
<setting id="cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class" value="true"/>
<setting id="cleanup.break_loop" value="false"/>
<setting id="cleanup.useless_continue" value="true"/>
<setting id="cleanup.instanceof_keyword" value="false"/>
<setting id="cleanup.standard_comparison" value="false"/>
<setting id="cleanup.format_source_code" value="true"/>
<setting id="cleanup.remove_unused_imports" value="true"/>
<setting id="cleanup.use_lambda" value="true"/>
<setting id="cleanup.map_cloning" value="true"/>
<setting id="cleanup.no_super" value="true"/>
<setting id="cleanup.extract_increment" value="false"/>
<setting id="cleanup.always_use_this_for_non_static_field_access" value="false"/>
<setting id="cleanup.add_missing_annotations" value="true"/>
<setting id="cleanup.primitive_rather_than_wrapper" value="false"/>
<setting id="cleanup.remove_unnecessary_nls_tags" value="true"/>
<setting id="cleanup.remove_unused_private_methods" value="true"/>
<setting id="cleanup.primitive_serialization" value="true"/>
<setting id="cleanup.always_use_this_for_non_static_method_access" value="false"/>
<setting id="cleanup.qualify_static_member_accesses_through_instances_with_declaring_class" value="true"/>
<setting id="cleanup.sort_members" value="false"/>
<setting id="cleanup.insert_inferred_type_arguments" value="false"/>
<setting id="cleanup.add_missing_override_annotations" value="true"/>
<setting id="cleanup.system_property_line_separator" value="true"/>
<setting id="cleanup.static_inner_class" value="true"/>
<setting id="cleanup.use_directly_map_method" value="true"/>
<setting id="cleanup.add_all" value="false"/>
<setting id="cleanup.convert_to_enhanced_for_loop" value="true"/>
<setting id="cleanup.single_used_field" value="false"/>
<setting id="cleanup.collection_cloning" value="true"/>
<setting id="cleanup.comparing_on_criteria" value="true"/>
<setting id="cleanup.stringbuffer_to_stringbuilder" value="false"/>
<setting id="cleanup.do_while_rather_than_while" value="true"/>
<setting id="cleanup.remove_unused_private_types" value="true"/>
<setting id="cleanup.make_variable_declarations_final" value="false"/>
<setting id="cleanup.merge_conditional_blocks" value="false"/>
<setting id="cleanup.never_use_parentheses_in_expressions" value="true"/>
<setting id="cleanup.use_blocks" value="true"/>
<setting id="cleanup.array_with_curly" value="true"/>
<setting id="cleanup.remove_unnecessary_array_creation" value="true"/>
<setting id="cleanup.add_missing_deprecated_annotations" value="true"/>
<setting id="cleanup.operand_factorization" value="true"/>
<setting id="cleanup.qualify_static_method_accesses_with_declaring_class" value="false"/>
<setting id="cleanup.remove_trailing_whitespaces_all" value="true"/>
<setting id="cleanup.convert_to_switch_expressions" value="false"/>
<setting id="cleanup.remove_redundant_type_arguments" value="true"/>
<setting id="cleanup.number_suffix" value="true"/>
<setting id="cleanup.redundant_comparator" value="true"/>
<setting id="cleanup.remove_unused_private_members" value="true"/>
<setting id="cleanup.never_use_blocks" value="true"/>
<setting id="cleanup.organize_imports" value="true"/>
<setting id="cleanup.switch" value="false"/>
<setting id="cleanup.stringbuilder_for_local_vars" value="true"/>
<setting id="cleanup.make_parameters_final" value="false"/>
<setting id="cleanup.ternary_operator" value="true"/>
<setting id="cleanup.controlflow_merge" value="false"/>
<setting id="cleanup.unreachable_block" value="false"/>
<setting id="cleanup.always_use_blocks" value="false"/>
<setting id="cleanup.add_serial_version_id" value="false"/>
<setting id="cleanup.stringconcat_to_textblock" value="false"/>
<setting id="cleanup.invert_equals" value="false"/>
<setting id="cleanup.use_string_is_blank" value="true"/>
<setting id="cleanup.remove_unused_local_variables" value="true"/>
<setting id="cleanup.remove_redundant_modifiers" value="false"/>
<setting id="cleanup.system_property_file_encoding" value="true"/>
<setting id="cleanup.sort_members_all" value="false"/>
<setting id="cleanup.double_negation" value="true"/>
<setting id="cleanup.format_source_code_changes_only" value="false"/>
<setting id="cleanup.arrays_fill" value="true"/>
<setting id="cleanup.add_generated_serial_version_id" value="true"/>
<setting id="cleanup.plain_replacement" value="true"/>
<setting id="cleanup.precompile_regex" value="true"/>
<setting id="cleanup.useless_return" value="true"/>
<setting id="cleanup.simplify_lambda_expression_and_method_ref" value="true"/>
<setting id="cleanup.unlooped_while" value="true"/>
<setting id="cleanup.make_local_variable_final" value="false"/>
<setting id="cleanup.pull_up_assignment" value="false"/>
<setting id="cleanup.overridden_assignment" value="false"/>
<setting id="cleanup.else_if" value="true"/>
<setting id="cleanup.reduce_indentation" value="true"/>
<setting id="cleanup.use_this_for_non_static_method_access" value="true"/>
<setting id="cleanup.use_this_for_non_static_field_access" value="true"/>
<setting id="cleanup.use_this_for_non_static_field_access_only_if_necessary" value="true"/>
<setting id="cleanup.hash" value="true"/>
<setting id="cleanup.boolean_literal" value="true"/>
<setting id="cleanup.add_default_serial_version_id" value="false"/>
<setting id="cleanup.add_missing_methods" value="true"/>
<setting id="cleanup.primitive_comparison" value="true"/>
<setting id="cleanup.one_if_rather_than_duplicate_blocks_that_fall_through" value="false"/>
</profile>
</profiles>
12 changes: 12 additions & 0 deletions codestyle/codetemplates.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><templates><template autoinsert="false" context="newtype_context" deleted="false" description="Newly created files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.newtype" name="newtype">/*
* Copyright (c) 2019-${year} Wurst-Imperium and contributors.
*
* This source code is subject to the terms of the GNU General Public
* License, version 3. If a copy of the GPL was not distributed with this
* file, You can obtain one at: https://www.gnu.org/licenses/gpl-3.0.txt
*/
${filecomment}
${package_declaration}

${typecomment}
${type_declaration}</template></templates>
Loading

0 comments on commit aa6ff05

Please sign in to comment.