abapGit/abaplint.json

403 lines
11 KiB
JSON

{
"global": {
"files": "/{test,src}/**/*.*",
"skipGeneratedGatewayClasses": true,
"skipGeneratedPersistentClasses": true,
"skipGeneratedFunctionGroups": true
},
"dependencies": [
{
"folder": "/deps",
"files": "/**/*.*"
},
{
"url": "https://github.com/abaplint/deps",
"folder": "/lint_deps",
"files": "/src/**/*.*"
}
],
"syntax": {
"version": "v702",
"errorNamespace": "^(Z|Y|LT?CL_|TY_|LIF_|.*ABAPGIT)",
"globalConstants": [
"abap_func_exporting",
"abap_func_tables",
"cssf_formtype_text",
"seok_access_free",
"seok_access_modify",
"seok_pgmid_r3tr",
"sews_c_vif_version",
"skwfc_obtype_folder",
"skwfc_obtype_loio",
"so2_controller",
"ststc_c_type_dialog",
"ststc_c_type_object",
"ststc_c_type_parameters",
"ststc_c_type_report",
"swbm_c_op_delete_no_dialog",
"swbm_c_type_ddic_db_tabxinx",
"swbm_c_type_wdy_application",
"swbm_version_active",
"swbm_version_inactive",
"swfco_org_standard_task",
"swfco_org_workflow_template",
"wbmr_c_skwf_folder_class",
"wdyn_limu_component_controller",
"wdyn_limu_component_definition",
"wdyn_limu_component_view"
],
"globalMacros": []
},
"rules": {
"cds_legacy_view": true,
"superfluous_value": true,
"classic_exceptions_overlap": true,
"local_testclass_consistency": true,
"no_external_form_calls": false,
"no_inline_in_optional_branches": true,
"pragma_style": true,
"slow_parameter_passing": false,
"unnecessary_pragma": false,
"align_parameters": false,
"cds_parser_error": true,
"constant_classes": true,
"no_aliases": false,
"nrob_consistency": true,
"omit_preceding_zeros": true,
"prefer_corresponding": true,
"static_call_via_instance": false,
"unnecessary_chaining": false,
"unsecure_fae": false,
"identical_descriptions": false,
"modify_only_own_db_tables": false,
"no_yoda_conditions": false,
"no_chained_assignment": true,
"select_add_order_by": false,
"dangerous_statement": false,
"db_operation_in_loop": false,
"select_performance": false,
"max_one_method_parameter_per_line": true,
"unused_ddic": true,
"prefer_raise_exception_new": true,
"use_class_based_exceptions": true,
"uncaught_exception": true,
"intf_referencing_clas": false,
"method_implemented_twice": true,
"parser_702_chaining": true,
"sy_modification": {
"exclude": [
"zcl_abapgit_objects_program.clas.abap"
]
},
"call_transaction_authority_check": true,
"function_module_recommendations": false,
"method_overwrites_builtin": {
"exclude": [
"zcl_abapgit_stage.clas.abap",
"zif_abapgit_log.intf.abap"
]
},
"omit_parameter_name": false,
"omit_receiving": true,
"unused_methods": true,
"identical_contents": false,
"many_parentheses": true,
"prefer_xsdbool": true,
"prefer_is_not": false,
"use_bool_expression": true,
"check_subrc": false,
"cyclomatic_complexity": {
"max": 25
},
"identical_conditions": true,
"use_line_exists": true,
"line_break_style": true,
"forbidden_pseudo_and_pragma": {
"ignoreGlobalClassDefinition": true,
"ignoreGlobalInterface": true,
"pragmas": ["##NO_TEXT"],
"pseudo": ["#EC NOTEXT"]
},
"unused_types": {
"exclude": ["/aff_types/"]
},
"begin_single_include": true,
"names_no_dash": true,
"parser_missing_space": true,
"prefer_inline": false,
"reduce_string_templates": true,
"downport": false,
"line_break_multiple_parameters": true,
"unknown_types": true,
"forbidden_void_type": {
"check": ["^stringtab$", "^SYCHAR01$", "^char2$", "^char20$", "^int4$", "^SYREPID$",
"^flag$", "^char12$", "^char10$", "^char70$", "^char4$", "^sydatum$", "^syuzeit$",
"^syst_title$", "^sychar70$", "^char30$", "^char50$",
"^numc2$", "^sap_bool$", "^SYCHAR10$", "^sylangu$",
"^cl_blue_wb_utility$", "^boole_d$",
"^cl_srvd_wb_object_data$", "^cx_aff_", "^cl_aff_", "^if_aff_",
"^cl_wb_object_operator_factory$",
"^cl_aunit_assert$",
"^I18_A_LANGISO2$",
"^if_adt_lock_handle$",
"^cx_wb_object_operation_error$",
"^if_srvd_types$", "^xubname$",
"^if_wb_adt_plugin_resource_co$",
"^if_wb_object_data_selection_co$",
"^if_wb_object_operator$",
"^cl_abap_syst",
"^SABP_T_TADIR_KEYS$",
"^CL_OO_SOURCE$",
"^CL_SAUNIT_INTERNAL_RESULT$",
"^CL_AUCV_TEST_RUNNER_ABSTRACT$",
"^IF_SAUNIT_INTERNAL_RESULT$",
"^IF_SAUNIT_INTERNAL_RESULT_TYPE$",
"^CL_AUCV_TEST_RUNNER_STANDARD$"
]
},
"forbidden_identifier": true,
"try_without_catch": true,
"unused_variables": false,
"prefix_is_current_class": true,
"allowed_object_naming": true,
"check_comments": false,
"cyclic_oo": false,
"fully_type_constants": true,
"keep_single_parameter_on_one_line": true,
"prefer_returning_to_exporting": {
"exclude": ["/json/"]
},
"selection_screen_naming": true,
"sicf_consistency": true,
"sql_escape_host_variables": true,
"xml_consistency": true,
"newline_between_methods": false,
"chain_mainly_declarations": {
"definitions": true,
"write": true,
"move": true,
"refresh": true,
"unassign": true,
"sort": true,
"clear": true,
"hide": true,
"free": true,
"include": true,
"check": true
},
"check_abstract": true,
"check_text_elements": true,
"types_naming": {
"pattern": "^TY_.+$",
"exclude": ["/json/"]
},
"7bit_ascii": {
"exclude": [
"zcl_abapgit_git_commit.clas.testclasses.abap",
"zcl_abapgit_html_action_utils.clas.testclasses.abap"
]
},
"abapdoc": false,
"check_ddic": true,
"check_include": true,
"allowed_object_types": {
"allowed": [
"PROG",
"CLAS",
"INTF",
"FUGR",
"DEVC",
"TRAN",
"W3MI"
]
},
"ambiguous_statement": true,
"avoid_use": {
"define": true,
"testSeams": true,
"defaultKey": false,
"describeLines": true,
"break": true,
"statics": true
},
"begin_end_names": true,
"check_transformation_exists": true,
"check_syntax": true,
"class_attribute_names": {
"ignoreExceptions": true,
"ignoreInterfaces": false,
"statics": "^G._.*$",
"ignoreLocal": false,
"constants": "",
"instance": "^M._.*$"
},
"cloud_types": true,
"colon_missing_space": true,
"commented_code": {
"allowIncludeInFugr": false,
"exclude": ["otgr", "intf"]
},
"constructor_visibility_public": true,
"contains_tab": true,
"definitions_top": {
"exclude": ["/json/"]
},
"description_empty": {
"exclude": ["/test/"]
},
"double_space": false,
"empty_line_in_statement": {
"allowChained": true
},
"empty_statement": true,
"empty_structure": {
"loop": true,
"if": false,
"try": true,
"while": true,
"case": true,
"select": true,
"when": false,
"do": true,
"at": true
},
"exit_or_check": true,
"exporting": true,
"form_tables_obsolete": false,
"functional_writing": {
"ignoreExceptions": true
},
"global_class": true,
"identical_form_names": true,
"if_in_if": true,
"implement_methods": true,
"in_statement_indentation": false,
"indentation": {
"ignoreExceptions": true,
"alignTryCatch": false,
"selectionScreenBlockIndentation": false,
"globalClassSkipFirst": false,
"ignoreGlobalClassDefinition": false,
"ignoreGlobalInterface": false
},
"inline_data_old_versions": true,
"keyword_case": {
"style": "upper",
"ignoreExceptions": true,
"ignoreLowerClassImplmentationStatement": true,
"ignoreGlobalClassDefinition": false,
"ignoreGlobalInterface": false,
"ignoreKeywords": [],
"ignoreGlobalClassBoundaries": false,
"ignoreFunctionModuleName": false
},
"line_length": {
"length": 120,
"exclude": ["zcl_abapgit_object_pdts.clas.testclasses.abap", "/json/"]
},
"line_only_punc": {
"ignoreExceptions": true
},
"local_class_naming": {
"exception": "^LCX_.*$",
"local": "^LCL_.*$",
"test": "^LT.+$"
},
"local_variable_names": {
"expectedData": "^L._.*$",
"expectedConstant": "^LC_.*$",
"expectedFS": "^<L._.*>$",
"exclude": ["/json/"]
},
"main_file_contents": true,
"max_one_statement": true,
"message_exists": false,
"method_length": {
"statements": 100,
"checkForms": true,
"ignoreTestClasses": false,
"errorWhenEmpty": false
},
"method_parameter_names": {
"ignoreExceptions": true,
"importing": "^I._.*$",
"returning": "^R._.*$",
"changing": "^C._.*$",
"exporting": "^E._.*$",
"ignoreNames": [
"P_TASK"
],
"exclude": ["/json/"]
},
"mix_returning": true,
"msag_consistency": true,
"nesting": {
"depth": 6
},
"no_public_attributes": false,
"object_naming": {
"clas": "^ZC(L|X)\\_ABAPGIT\\_",
"intf": "^ZIF\\_ABAPGIT\\_",
"prog": "^ZABAPGIT",
"fugr": "^ZABAPGIT",
"tabl": "^Z",
"ttyp": "^Z",
"dtel": "^Z",
"doma": "^Z",
"msag": "^Z",
"tran": "^Z",
"enqu": "^EZ",
"auth": "^Z",
"pinf": "^Z",
"idoc": "^Z",
"ssfo": "^Z",
"ssst": "^Z",
"shlp": "^Z",
"xslt": "^Z"
},
"obsolete_statement": true,
"parser_error": true,
"preferred_compare_operator": {
"badOperators": [
"EQ",
"><",
"NE",
"GE",
"GT",
"LT",
"LE"
]
},
"release_idoc": true,
"remove_descriptions": {
"ignoreWorkflow": false,
"ignoreExceptions": false,
"exclude": ["/json/"]
},
"rfc_error_handling": false,
"sequential_blank": {
"lines": 4
},
"short_case": {
"length": 1,
"allow": [
"iv_action",
"sy"
]
},
"space_before_colon": true,
"space_before_dot": {
"ignoreGlobalDefinition": true,
"ignoreExceptions": true
},
"start_at_tab": true,
"superclass_final": true,
"tabl_enhancement_category": true,
"type_form_parameters": true,
"unreachable_code": true,
"use_new": true,
"when_others_last": true,
"whitespace_end": true
}
}