aws-samples / amazon-ecr-continuous-scan
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
  • 61% duplication:
    • 663 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 405 duplicated lines
  • 40 duplicates
system61% (405 lines)
Duplication per Extension
go61% (320 lines)
yaml59% (85 lines)
Duplication per Component (primary)
summary83% (98 lines)
findings63% (95 lines)
ROOT59% (85 lines)
configs48% (76 lines)
start-scan53% (51 lines)

Duplication Between Components (50+ lines)

G findings findings summary summary findings--summary 172 start-scan start-scan findings--start-scan 90 start-scan--summary 102 configs configs configs--findings 86 configs--summary 92 configs--start-scan 50

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 40 duplicates...
Size#FoldersFilesLinesCode
73 x 2 findings
summary
main.go
main.go
25:129 (48%)
24:128 (62%)
view
18 x 2 configs
summary
main.go
main.go
76:102 (11%)
52:77 (15%)
view
18 x 2 configs
start-scan
main.go
main.go
76:102 (11%)
87:112 (18%)
view
18 x 2 configs
findings
main.go
main.go
76:102 (11%)
53:78 (12%)
view
18 x 2 start-scan
summary
main.go
main.go
87:112 (18%)
52:77 (15%)
view
18 x 2 findings
start-scan
main.go
main.go
53:78 (12%)
87:112 (18%)
view
16 x 2 configs
findings
main.go
main.go
23:46 (10%)
25:48 (10%)
view
16 x 2 configs
summary
main.go
main.go
23:46 (10%)
24:47 (13%)
view
15 x 2 ROOT
ROOT
template.yaml
template.yaml
70:84 (10%)
100:114 (10%)
view
14 x 2 ROOT
ROOT
template.yaml
template.yaml
71:84 (9%)
130:143 (9%)
view
14 x 2 ROOT
ROOT
template.yaml
template.yaml
101:114 (9%)
130:143 (9%)
view
13 x 2 findings
summary
main.go
main.go
176:190 (8%)
134:148 (11%)
view
12 x 2 findings
start-scan
main.go
main.go
91:102 (8%)
44:55 (12%)
view
12 x 2 start-scan
summary
main.go
main.go
44:55 (12%)
90:101 (10%)
view
9 x 2 configs
findings
main.go
main.go
188:198 (5%)
214:224 (6%)
view
9 x 2 ROOT
ROOT
template.yaml
template.yaml
60:68 (6%)
90:98 (6%)
view
8 x 2 findings
start-scan
main.go
main.go
181:189 (5%)
123:131 (8%)
view
8 x 2 start-scan
summary
main.go
main.go
123:131 (8%)
139:147 (6%)
view
8 x 2 configs
configs
main.go
main.go
153:160 (5%)
181:188 (5%)
view
7 x 2 findings
start-scan
main.go
main.go
25:37 (4%)
20:32 (7%)
view
Duplicated Units
The list of top 3 duplicated units.
See data for all 3 unit duplicates...
Size#FoldersFilesLinesCode
47 x 2 findings
summary
main.go
main.go
81:130 
80:129 
view
21 x 4 start-scan
configs
findings
summary
main.go
main.go
main.go
main.go
87:113 
76:103 
53:79 
52:78 
view
9 x 3 configs
findings
summary
main.go
main.go
main.go
38:47 
40:49 
39:48 
view