awslabs / aws-cloudformation-iam-policy-validator
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
  • 10% duplication:
    • 2,734 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 278 duplicated lines
  • 32 duplicates
system10% (278 lines)
Duplication per Extension
py10% (278 lines)
Duplication per Component (primary)
cfn_policy_validator/parsers/utils21% (76 lines)
cfn_policy_validator/parsers/resource15% (66 lines)
cfn_policy_validator/parsers11% (56 lines)
cfn_policy_validator/parsers/utils/intrinsic_functions10% (38 lines)
cfn_policy_validator/validation4% (26 lines)
cfn_policy_validator5% (16 lines)
ROOT0% (0 lines)
cfn_policy_validator/cfn_tools0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 32 duplicates...
Size#FoldersFilesLinesCode
10 x 2 cfn_policy_validator/parsers/utils
cfn_policy_validator/parsers/utils
arn_generator_schemas.py
arn_generator_schemas.py
55:64 (11%)
70:79 (11%)
view
10 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers/utils
identity_schemas.py
arn_generator_schemas.py
77:86 (6%)
24:33 (11%)
view
9 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers/utils
identity_schemas.py
arn_generator_schemas.py
52:60 (6%)
6:14 (10%)
view
9 x 2 cfn_policy_validator/par...ils/intrinsic_functions
cfn_policy_validator/par...ils/intrinsic_functions
fn_join_evaluator.py
fn_split_evaluator.py
26:34 (45%)
23:31 (50%)
view
8 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers
identity_schemas.py
identity_schemas.py
52:59 (5%)
77:84 (5%)
view
8 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers/utils
identity_schemas.py
arn_generator_schemas.py
77:84 (5%)
6:13 (9%)
view
8 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers/utils
identity_schemas.py
arn_generator_schemas.py
33:40 (5%)
6:13 (9%)
view
8 x 2 cfn_policy_validator/parsers/resource
cfn_policy_validator/parsers/resource
sns.py
sqs.py
34:41 (21%)
41:48 (19%)
view
8 x 2 cfn_policy_validator/parsers/utils
cfn_policy_validator/parsers/utils
arn_generator_schemas.py
arn_generator_schemas.py
6:13 (9%)
24:31 (9%)
view
8 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers
identity_schemas.py
identity_schemas.py
33:40 (5%)
77:84 (5%)
view
8 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers
identity_schemas.py
identity_schemas.py
42:49 (5%)
86:93 (5%)
view
8 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers/utils
identity_schemas.py
arn_generator_schemas.py
33:40 (5%)
24:31 (9%)
view
8 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers/resource
identity_schemas.py
s3.py
96:103 (5%)
86:93 (7%)
view
8 x 2 cfn_policy_validator/parsers/utils
cfn_policy_validator/parsers/utils
arn_generator_schemas.py
arn_generator_schemas.py
41:48 (9%)
84:91 (9%)
view
8 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers/utils
identity_schemas.py
arn_generator_schemas.py
52:59 (5%)
24:31 (9%)
view
8 x 2 cfn_policy_validator/parsers/resource
cfn_policy_validator/parsers/resource
lambda_aws.py
lambda_aws.py
101:108 (5%)
182:189 (5%)
view
8 x 2 cfn_policy_validator/parsers
cfn_policy_validator/parsers
identity_schemas.py
identity_schemas.py
33:40 (5%)
52:59 (5%)
view
8 x 2 cfn_policy_validator
cfn_policy_validator
__init__.py
__init__.py
113:120 (12%)
128:135 (12%)
view
7 x 2 cfn_policy_validator/validation
cfn_policy_validator/validation
validator.py
validator.py
361:369 (1%)
547:555 (1%)
view
7 x 2 cfn_policy_validator/parsers/resource
cfn_policy_validator/parsers/resource
sns.py
sqs.py
43:49 (18%)
50:56 (17%)
view