awslabs / serverless-rules
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 29% duplication:
    • 1,905 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 554 duplicated lines
  • 111 duplicates
system29% (554 lines)
Duplication per Extension
go39% (546 lines)
py1% (8 lines)
Duplication per Component (primary)
tflint-ruleset-aws-serverless/rules40% (546 lines)
cfn-lint-serverless/cfn_lint_serverless/rules2% (8 lines)
ROOT0% (0 lines)
cfn-lint-serverless/cfn_lint_serverless0% (0 lines)
cfn-lint-serverless0% (0 lines)
tflint-ruleset-aws-serverless0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 111 duplicates...
Size#FoldersFilesLinesCode
37 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_cloudwatch_event_target_no_dlq.go
aws_sfn_state_machine_tracing.go
49:99 (64%)
50:100 (58%)
view
32 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_event_invoke_config_async_...
aws_lambda_event_source_mapping_failu...
205:250 (18%)
70:117 (42%)
view
32 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_api_gateway_stage_structured_logg...
aws_apigatewayv2_stage_structured_log...
51:94 (64%)
51:94 (64%)
view
28 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_api_gateway_stage_tracing.go
aws_appsync_graphql_api_tracing.go
47:80 (63%)
45:78 (63%)
view
25 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_cloudwatch_event_target_no_dlq.go
aws_lambda_event_source_mapping_failu...
69:104 (43%)
100:136 (33%)
view
23 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_function_default_memory.go
aws_sns_topic_subscription_redrive_po...
47:77 (58%)
49:79 (58%)
view
23 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_sns_topic_subscription_redrive_po...
aws_sqs_queue_redrive_policy.go
49:79 (58%)
47:77 (58%)
view
23 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_function_default_timeout.go
aws_sqs_queue_redrive_policy.go
47:77 (58%)
47:77 (58%)
view
23 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_function_default_timeout.go
aws_sns_topic_subscription_redrive_po...
47:77 (58%)
49:79 (58%)
view
23 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_function_default_memory.go
aws_sqs_queue_redrive_policy.go
47:77 (58%)
47:77 (58%)
view
23 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_function_default_memory.go
aws_lambda_function_default_timeout.go
47:77 (58%)
47:77 (58%)
view
23 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_event_source_mapping_failu...
aws_sfn_state_machine_tracing.go
100:131 (30%)
70:100 (36%)
view
21 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_cloudwatch_event_target_no_dlq.go
aws_sqs_queue_redrive_policy.go
77:104 (36%)
50:77 (53%)
view
21 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_event_source_mapping_failu...
aws_sqs_queue_redrive_policy.go
109:136 (28%)
50:77 (53%)
view
21 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_cloudwatch_event_target_no_dlq.go
aws_lambda_function_default_memory.go
77:104 (36%)
50:77 (53%)
view
21 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_event_source_mapping_failu...
aws_lambda_function_default_memory.go
109:136 (28%)
50:77 (53%)
view
21 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_event_source_mapping_failu...
aws_sns_topic_subscription_redrive_po...
109:136 (28%)
52:79 (53%)
view
21 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_cloudwatch_event_target_no_dlq.go
aws_lambda_function_default_timeout.go
77:104 (36%)
50:77 (53%)
view
21 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_cloudwatch_event_target_no_dlq.go
aws_sns_topic_subscription_redrive_po...
77:104 (36%)
52:79 (53%)
view
21 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_lambda_event_source_mapping_failu...
aws_lambda_function_default_timeout.go
109:136 (28%)
50:77 (53%)
view
Duplicated Units
The list of top 4 duplicated units.
See data for all 4 unit duplicates...
Size#FoldersFilesLinesCode
38 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_apigatewayv2_stage_structured_log...
aws_api_gateway_stage_structured_logg...
49:95 
49:95 
view
32 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_api_gateway_stage_tracing.go
aws_appsync_graphql_api_tracing.go
46:81 
44:79 
view
28 x 4 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_sqs_queue_redrive_policy.go
aws_lambda_function_default_memory.go
aws_lambda_function_default_timeout.go
aws_sns_topic_subscription_redrive_po...
46:78 
46:78 
46:78 
48:80 
view
22 x 2 tflint-ruleset-aws-serverless/rules
tflint-ruleset-aws-serverless/rules
aws_apigatewayv2_stage_logging.go
aws_api_gateway_stage_logging.go
46:71 
46:71 
view