awslabs / aws-config-rdk
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
  • 38% duplication:
    • 5,517 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 2,146 duplicated lines
  • 90 duplicates
system38% (2,146 lines)
Duplication per Extension
py43% (1,814 lines)
cs95% (168 lines)
tf40% (164 lines)
Duplication per Component (primary)
rdk22% (650 lines)
rdk/template/runtime/python3.8100% (236 lines)
rdk/template/runtime/python3.6100% (236 lines)
rdk/template/runtime/python3.9100% (236 lines)
rdk/template/runtime/python3.7100% (236 lines)
rdk/template/runtime/python3.6-managed91% (176 lines)
rdk/template/runtime/dotnetcore2.095% (84 lines)
rdk/template/runtime/dotnetcore1.095% (84 lines)
rdk/template/terraform/0.1240% (82 lines)
rdk/template/terraform/0.1140% (82 lines)
rdk/template/runtime/python3.6-lib100% (11 lines)
rdk/template/runtime/python3.8-lib100% (11 lines)
rdk/template/runtime/python3.7-lib100% (11 lines)
rdk/template/runtime/python3.9-lib100% (11 lines)
rdk-workshop0% (0 lines)
rdk/template/runtime/nodejs4.30% (0 lines)
rdk/template/runtime/java80% (0 lines)
testing0% (0 lines)
ROOT0% (0 lines)
integration/config-opscenter-integration-example0% (0 lines)

Duplication Between Components (50+ lines)

G rdk/template/runtime/python3.7 rdk/template/runtime/python3.7 rdk/template/runtime/python3.9 rdk/template/runtime/python3.9 rdk/template/runtime/python3.7--rdk/template/runtime/python3.9 472 rdk/template/runtime/python3.8 rdk/template/runtime/python3.8 rdk/template/runtime/python3.7--rdk/template/runtime/python3.8 472 rdk/template/runtime/python3.8--rdk/template/runtime/python3.9 472 rdk/template/runtime/python3.6 rdk/template/runtime/python3.6 rdk/template/runtime/python3.6--rdk/template/runtime/python3.7 472 rdk/template/runtime/python3.6--rdk/template/runtime/python3.9 472 rdk/template/runtime/python3.6--rdk/template/runtime/python3.8 472 rdk/template/runtime/dotnetcore1.0 rdk/template/runtime/dotnetcore1.0 rdk/template/runtime/dotnetcore2.0 rdk/template/runtime/dotnetcore2.0 rdk/template/runtime/dotnetcore1.0--rdk/template/runtime/dotnetcore2.0 168 rdk/template/terraform/0.11 rdk/template/terraform/0.11 rdk/template/terraform/0.12 rdk/template/terraform/0.12 rdk/template/terraform/0.11--rdk/template/terraform/0.12 144

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 90 duplicates...
Size#FoldersFilesLinesCode
236 x 2 rdk/template/runtime/python3.7
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
7:388 (100%)
7:388 (100%)
view
236 x 2 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rule_code.py
rule_code.py
7:388 (100%)
7:388 (100%)
view
236 x 2 rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
7:388 (100%)
7:388 (100%)
view
236 x 2 rdk/template/runtime/python3.6
rdk/template/runtime/python3.7
rule_code.py
rule_code.py
7:388 (100%)
7:388 (100%)
view
236 x 2 rdk/template/runtime/python3.8
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
7:388 (100%)
7:388 (100%)
view
236 x 2 rdk/template/runtime/python3.6
rdk/template/runtime/python3.8
rule_code.py
rule_code.py
7:388 (100%)
7:388 (100%)
view
88 x 2 rdk/template/runtime/pyt...naged/managed-rule-code
rdk/template/runtime/pyt...naged/managed-rule-code
rule_code.py
rule_util.py
14:130 (86%)
10:126 (96%)
view
84 x 2 rdk/template/runtime/dotnetcore1.0
rdk/template/runtime/dotnetcore2.0
CustomConfigHandler.cs
CustomConfigHandler.cs
21:186 (100%)
21:186 (100%)
view
60 x 2 rdk
rdk
rdk.py
rdk.py
1421:1483 (2%)
1778:1840 (2%)
view
41 x 2 rdk/template/terraform/0.11
rdk/template/terraform/0.12
config_rule.tf
config_rule.tf
16:60 (28%)
16:61 (28%)
view
30 x 2 rdk
rdk
rdk.py
rdk.py
1233:1262 (1%)
1675:1704 (1%)
view
23 x 2 rdk
rdk
rdk.py
rdk.py
978:1007 (<1%)
1031:1060 (<1%)
view
20 x 2 rdk
rdk
rdk.py
rdk.py
320:340 (<1%)
350:370 (<1%)
view
19 x 2 rdk
rdk
rdk.py
rdk.py
1291:1314 (<1%)
1543:1567 (<1%)
view
18 x 2 rdk
rdk
rdk.py
rdk.py
1207:1229 (<1%)
1649:1671 (<1%)
view
17 x 2 rdk
rdk
rdk.py
rdk.py
1486:1505 (<1%)
1844:1862 (<1%)
view
17 x 2 rdk/template/terraform/0.11
rdk/template/terraform/0.12
config_rule.tf
config_rule.tf
139:158 (11%)
139:158 (11%)
view
15 x 2 rdk
rdk
rdk.py
rdk.py
1652:1669 (<1%)
1966:1983 (<1%)
view
15 x 2 rdk
rdk
rdk.py
rdk.py
1210:1227 (<1%)
1966:1983 (<1%)
view
15 x 2 rdk
rdk
rdk.py
rdk.py
1302:1322 (<1%)
1363:1383 (<1%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 22 unit duplicates...
Size#FoldersFilesLinesCode
73 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
28 x 2 rdk/template/runtime/dotnetcore2.0
rdk/template/runtime/dotnetcore1.0
CustomConfigHandler.cs
CustomConfigHandler.cs
80:115 
80:115 
view
27 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
17 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
13 x 2 rdk/template/runtime/dotnetcore2.0
rdk/template/runtime/dotnetcore1.0
CustomConfigHandler.cs
CustomConfigHandler.cs
160:177 
160:177 
view
12 x 2 rdk/template/runtime/pyt...naged/managed-rule-code
rdk/template/runtime/pyt...naged/managed-rule-code
rule_code.py
rule_util.py
0:0 
0:0 
view
12 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
10 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
10 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
8 x 2 rdk/template/runtime/pyt...naged/managed-rule-code
rdk/template/runtime/pyt...naged/managed-rule-code
rule_code.py
rule_util.py
0:0 
0:0 
view
14 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
16 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
14 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
8 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
7 x 2 rdk/template/runtime/dotnetcore2.0
rdk/template/runtime/dotnetcore1.0
CustomConfigHandler.cs
CustomConfigHandler.cs
122:129 
122:129 
view
7 x 2 rdk/template/runtime/pyt...naged/managed-rule-code
rdk/template/runtime/pyt...naged/managed-rule-code
rule_code.py
rule_util.py
0:0 
0:0 
view
7 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
7 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view
6 x 2 rdk/template/runtime/dotnetcore2.0
rdk/template/runtime/dotnetcore1.0
CustomConfigHandler.cs
CustomConfigHandler.cs
72:78 
72:78 
view
8 x 4 rdk/template/runtime/python3.7
rdk/template/runtime/python3.8
rdk/template/runtime/python3.6
rdk/template/runtime/python3.9
rule_code.py
rule_code.py
rule_code.py
rule_code.py
0:0 
0:0 
0:0 
0:0 
view