awslabs / aws-gov-cloud-import
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:
    • 3,026 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 902 duplicated lines
  • 167 duplicates
system29% (902 lines)
Duplication per Extension
js32% (794 lines)
html17% (108 lines)
Duplication per Component (primary)
browser/scripts16% (109 lines)
ROOT17% (108 lines)
lambda/appStatus74% (86 lines)
lambda/importImage72% (80 lines)
lambda/importImageStatus40% (74 lines)
lambda/ec2Run30% (69 lines)
lambda/removeS3Image84% (64 lines)
lambda/listGovBuckets81% (58 lines)
lambda/initStepFunction79% (46 lines)
lambda/initS3Sync83% (46 lines)
ec27% (34 lines)
lambda/snsPublish39% (33 lines)
lambda/moveStatus37% (22 lines)
browser62% (22 lines)
lambda/listComBuckets81% (22 lines)
lambda/snsSubscribe34% (16 lines)
lambda/makeVolume15% (13 lines)
lambda/moveImage0% (0 lines)
lambda/makeVolumeStatus0% (0 lines)
lambda/cleanUp0% (0 lines)

Duplication Between Components (50+ lines)

G lambda/importImage lambda/importImage lambda/importImageStatus lambda/importImageStatus lambda/importImage--lambda/importImageStatus 131 lambda/removeS3Image lambda/removeS3Image lambda/importImage--lambda/removeS3Image 121 lambda/listGovBuckets lambda/listGovBuckets lambda/importImage--lambda/listGovBuckets 76 lambda/importImageStatus--lambda/removeS3Image 92 lambda/importImageStatus--lambda/listGovBuckets 56 lambda/appStatus lambda/appStatus lambda/appStatus--lambda/importImage 96 lambda/appStatus--lambda/importImageStatus 76 lambda/appStatus--lambda/removeS3Image 96 lambda/appStatus--lambda/listGovBuckets 76 lambda/initS3Sync lambda/initS3Sync lambda/initStepFunction lambda/initStepFunction lambda/initS3Sync--lambda/initStepFunction 92 lambda/listGovBuckets--lambda/removeS3Image 90 lambda/ec2Run lambda/ec2Run lambda/ec2Run--lambda/importImage 77 lambda/ec2Run--lambda/importImageStatus 58 lambda/ec2Run--lambda/removeS3Image 70

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 167 duplicates...
Size#FoldersFilesLinesCode
24 x 2 lambda/importImage
lambda/importImageStatus
index.js
index.js
12:42 (21%)
15:45 (12%)
view
24 x 2 lambda/importImage
lambda/removeS3Image
index.js
index.js
99:125 (21%)
59:85 (31%)
view
23 x 2 lambda/appStatus
lambda/importImage
index.js
index.js
19:46 (20%)
15:42 (20%)
view
23 x 2 lambda/appStatus
lambda/importImageStatus
index.js
index.js
19:46 (20%)
18:45 (12%)
view
22 x 2 lambda/listGovBuckets
lambda/removeS3Image
index.js
index.js
17:43 (30%)
17:43 (28%)
view
19 x 2 lambda/appStatus
lambda/removeS3Image
index.js
index.js
109:129 (16%)
65:85 (25%)
view
19 x 2 lambda/appStatus
lambda/importImage
index.js
index.js
109:129 (16%)
105:125 (17%)
view
19 x 2 lambda/initS3Sync
lambda/initStepFunction
index.js
index.js
33:61 (34%)
32:60 (32%)
view
15 x 2 lambda/importImageStatus
lambda/removeS3Image
index.js
index.js
27:45 (8%)
25:43 (19%)
view
15 x 2 lambda/importImage
lambda/listGovBuckets
index.js
index.js
24:42 (13%)
25:43 (21%)
view
15 x 2 lambda/importImageStatus
lambda/removeS3Image
index.js
index.js
198:212 (8%)
71:85 (19%)
view
15 x 2 lambda/appStatus
lambda/removeS3Image
index.js
index.js
28:46 (13%)
25:43 (19%)
view
15 x 2 lambda/initS3Sync
lambda/initStepFunction
index.js
index.js
66:85 (27%)
69:88 (25%)
view
15 x 2 lambda/appStatus
lambda/listGovBuckets
index.js
index.js
28:46 (13%)
25:43 (21%)
view
15 x 2 lambda/appStatus
lambda/importImageStatus
index.js
index.js
115:129 (13%)
198:212 (8%)
view
15 x 2 lambda/importImage
lambda/importImageStatus
index.js
index.js
111:125 (13%)
198:212 (8%)
view
15 x 2 lambda/importImage
lambda/removeS3Image
index.js
index.js
24:42 (13%)
25:43 (19%)
view
15 x 2 lambda/importImageStatus
lambda/listGovBuckets
index.js
index.js
27:45 (8%)
25:43 (21%)
view
14 x 2 ROOT
ROOT
index.html
index.html
599:613 (2%)
642:656 (2%)
view
14 x 2 lambda/listComBuckets
lambda/listGovBuckets
index.js
index.js
15:32 (51%)
54:71 (19%)
view
Duplicated Units
The list of top 9 duplicated units.
See data for all 9 unit duplicates...
Size#FoldersFilesLinesCode
43 x 2 browser/scripts
browser/scripts
gov-cloud-import-browser.js
gov-cloud-import-browser.js
718:769 
771:822 
view
17 x 2 lambda/initStepFunction
lambda/initS3Sync
index.js
index.js
36:56 
37:57 
view
15 x 5 lambda/removeS3Image
lambda/appStatus
lambda/importImage
lambda/listGovBuckets
lambda/importImageStatus
index.js
index.js
index.js
index.js
index.js
29:44 
32:47 
28:43 
29:44 
31:46 
view
15 x 2 lambda/ec2Run
lambda/ec2Run
index.js
index.js
111:127 
129:145 
view
14 x 2 ec2
ec2
gov-cloud-import.js
gov-cloud-import.js
318:334 
423:439 
view
12 x 2 browser/scripts
browser/scripts
gov-cloud-import-browser.js
gov-cloud-import-browser.js
54:66 
69:81 
view
11 x 2 browser/scripts
browser/scripts
gov-cloud-import-browser.js
gov-cloud-import-browser.js
655:670 
672:687 
view
10 x 4 lambda/snsPublish
lambda/appStatus
lambda/importImage
lambda/importImageStatus
index.js
index.js
index.js
index.js
17:27 
19:29 
15:25 
18:28 
view
6 x 3 browser/scripts
lambda/ec2Run
ec2
gov-cloud-import-browser.js
index.js
gov-cloud-import.js
10:16 
25:31 
63:69 
view