aws-quickstart / quickstart-cloud9-ide
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
  • 98% duplication:
    • 71,592 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 70,820 duplicated lines
  • 2,435 duplicates
system98% (70,820 lines)
Duplication per Extension
py99% (70,527 lines)
yaml30% (277 lines)
yml61% (16 lines)
Duplication per Component (primary)
functions/source/c9InstanceProfile/idna99% (10,508 lines)
functions/source/c9DiskResize/idna99% (10,508 lines)
functions/source/c9bootstrap/idna99% (10,508 lines)
functions/source/c9bootstrap/urllib399% (5,629 lines)
functions/source/c9InstanceProfile/urllib399% (5,629 lines)
functions/source/c9DiskResize/urllib399% (5,629 lines)
functions/source/c9bootstrap/chardet99% (4,609 lines)
functions/source/c9InstanceProfile/chardet99% (4,609 lines)
functions/source/c9DiskResize/chardet99% (4,609 lines)
functions/source/c9InstanceProfile/requests99% (2,395 lines)
functions/source/c9DiskResize/requests99% (2,395 lines)
functions/source/c9bootstrap/requests99% (2,395 lines)
functions/source/c9InstanceProfile/crhelper99% (337 lines)
functions/source/c9DiskResize/crhelper99% (337 lines)
functions/source/c9bootstrap/crhelper99% (337 lines)
templates30% (277 lines)
functions/source/c9bootstrap74% (43 lines)
functions/source/c9DiskResize71% (43 lines)
ci61% (16 lines)
functions/source/c9InstanceProfile18% (7 lines)
functions/source/c9bootstrap/certifi0% (0 lines)
functions/source/c9InstanceProfile/certifi0% (0 lines)
functions/source/c9DiskResize/certifi0% (0 lines)

Duplication Between Components (50+ lines)

G functions/source/c9InstanceProfile/idna functions/source/c9InstanceProfile/idna functions/source/c9bootstrap/idna functions/source/c9bootstrap/idna functions/source/c9InstanceProfile/idna--functions/source/c9bootstrap/idna 21016 functions/source/c9DiskResize/idna functions/source/c9DiskResize/idna functions/source/c9DiskResize/idna--functions/source/c9InstanceProfile/idna 21016 functions/source/c9DiskResize/idna--functions/source/c9bootstrap/idna 21016 functions/source/c9DiskResize/urllib3 functions/source/c9DiskResize/urllib3 functions/source/c9bootstrap/urllib3 functions/source/c9bootstrap/urllib3 functions/source/c9DiskResize/urllib3--functions/source/c9bootstrap/urllib3 11258 functions/source/c9InstanceProfile/urllib3 functions/source/c9InstanceProfile/urllib3 functions/source/c9DiskResize/urllib3--functions/source/c9InstanceProfile/urllib3 11258 functions/source/c9InstanceProfile/urllib3--functions/source/c9bootstrap/urllib3 11258 functions/source/c9DiskResize/chardet functions/source/c9DiskResize/chardet functions/source/c9bootstrap/chardet functions/source/c9bootstrap/chardet functions/source/c9DiskResize/chardet--functions/source/c9bootstrap/chardet 9218 functions/source/c9InstanceProfile/chardet functions/source/c9InstanceProfile/chardet functions/source/c9DiskResize/chardet--functions/source/c9InstanceProfile/chardet 9218 functions/source/c9InstanceProfile/chardet--functions/source/c9bootstrap/chardet 9218 functions/source/c9DiskResize/requests functions/source/c9DiskResize/requests functions/source/c9InstanceProfile/requests functions/source/c9InstanceProfile/requests functions/source/c9DiskResize/requests--functions/source/c9InstanceProfile/requests 4790 functions/source/c9bootstrap/requests functions/source/c9bootstrap/requests functions/source/c9DiskResize/requests--functions/source/c9bootstrap/requests 4790 functions/source/c9InstanceProfile/requests--functions/source/c9bootstrap/requests 4790 functions/source/c9InstanceProfile/crhelper functions/source/c9InstanceProfile/crhelper functions/source/c9bootstrap/crhelper functions/source/c9bootstrap/crhelper functions/source/c9InstanceProfile/crhelper--functions/source/c9bootstrap/crhelper 674 functions/source/c9DiskResize/crhelper functions/source/c9DiskResize/crhelper functions/source/c9DiskResize/crhelper--functions/source/c9InstanceProfile/crhelper 674 functions/source/c9DiskResize/crhelper--functions/source/c9bootstrap/crhelper 674 functions/source/c9DiskResize functions/source/c9DiskResize functions/source/c9bootstrap functions/source/c9bootstrap functions/source/c9DiskResize--functions/source/c9bootstrap 86

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 2,435 duplicates...
Size#FoldersFilesLinesCode
8120 x 2 functions/source/c9InstanceProfile/idna
functions/source/c9bootstrap/idna
uts46data.py
uts46data.py
7:8205 (100%)
7:8205 (100%)
view
8120 x 2 functions/source/c9DiskResize/idna
functions/source/c9InstanceProfile/idna
uts46data.py
uts46data.py
7:8205 (100%)
7:8205 (100%)
view
8120 x 2 functions/source/c9DiskResize/idna
functions/source/c9bootstrap/idna
uts46data.py
uts46data.py
7:8205 (100%)
7:8205 (100%)
view
1977 x 2 functions/source/c9InstanceProfile/idna
functions/source/c9bootstrap/idna
idnadata.py
idnadata.py
3:1979 (100%)
3:1979 (100%)
view
1977 x 2 functions/source/c9DiskResize/idna
functions/source/c9bootstrap/idna
idnadata.py
idnadata.py
3:1979 (100%)
3:1979 (100%)
view
1977 x 2 functions/source/c9DiskResize/idna
functions/source/c9InstanceProfile/idna
idnadata.py
idnadata.py
3:1979 (100%)
3:1979 (100%)
view
676 x 2 functions/source/c9DiskResize/urllib3/packages
functions/source/c9bootstrap/urllib3/packages
six.py
six.py
31:1021 (100%)
31:1021 (100%)
view
676 x 2 functions/source/c9DiskResize/urllib3/packages
functions/source/c9Insta...rofile/urllib3/packages
six.py
six.py
31:1021 (100%)
31:1021 (100%)
view
676 x 2 functions/source/c9Insta...rofile/urllib3/packages
functions/source/c9bootstrap/urllib3/packages
six.py
six.py
31:1021 (100%)
31:1021 (100%)
view
543 x 2 functions/source/c9DiskResize/urllib3
functions/source/c9bootstrap/urllib3
connectionpool.py
connectionpool.py
12:1051 (100%)
12:1051 (100%)
view
543 x 2 functions/source/c9DiskResize/urllib3
functions/source/c9InstanceProfile/urllib3
connectionpool.py
connectionpool.py
12:1051 (100%)
12:1051 (100%)
view
543 x 2 functions/source/c9InstanceProfile/urllib3
functions/source/c9bootstrap/urllib3
connectionpool.py
connectionpool.py
12:1051 (100%)
12:1051 (100%)
view
498 x 2 functions/source/c9DiskResize/requests
functions/source/c9InstanceProfile/requests
models.py
models.py
22:953 (100%)
22:953 (100%)
view
498 x 2 functions/source/c9DiskResize/requests
functions/source/c9bootstrap/requests
models.py
models.py
22:953 (100%)
22:953 (100%)
view
498 x 2 functions/source/c9InstanceProfile/requests
functions/source/c9bootstrap/requests
models.py
models.py
22:953 (100%)
22:953 (100%)
view
496 x 2 functions/source/c9DiskResize/urllib3/contrib
functions/source/c9InstanceProfile/urllib3/contrib
securetransport.py
securetransport.py
67:870 (100%)
67:870 (100%)
view
496 x 2 functions/source/c9InstanceProfile/urllib3/contrib
functions/source/c9bootstrap/urllib3/contrib
securetransport.py
securetransport.py
67:870 (100%)
67:870 (100%)
view
496 x 2 functions/source/c9DiskResize/urllib3/contrib
functions/source/c9bootstrap/urllib3/contrib
securetransport.py
securetransport.py
67:870 (100%)
67:870 (100%)
view
476 x 2 functions/source/c9DiskResize/requests
functions/source/c9InstanceProfile/requests
utils.py
utils.py
29:977 (100%)
29:977 (100%)
view
476 x 2 functions/source/c9DiskResize/requests
functions/source/c9bootstrap/requests
utils.py
utils.py
29:977 (100%)
29:977 (100%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 524 unit duplicates...
Size#FoldersFilesLinesCode
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view
102 x 3 functions/source/c9bootstrap/idna
functions/source/c9InstanceProfile/idna
functions/source/c9DiskResize/idna
uts46data.py
uts46data.py
uts46data.py
0:0 
0:0 
0:0 
view