microsoft / SDCM
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
  • 16% duplication:
    • 1,254 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 209 duplicated lines
  • 19 duplicates
system16% (209 lines)
Duplication per Extension
ps146% (197 lines)
yml27% (12 lines)
Duplication per Component (primary)
Scripts47% (179 lines)
build40% (18 lines)
ROOT27% (12 lines)
SurfaceDevCenterManager0% (0 lines)
SurfaceDevCenterManager/Properties0% (0 lines)
SurfaceDevCenterManager/Utility0% (0 lines)

Duplication Between Components (50+ lines)

G Scripts Scripts build build Scripts--build 60

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 19 longest duplicates.
See data for all 19 duplicates...
Size#FoldersFilesLinesCode
19 x 2 Scripts
Scripts
Attestation.ps1
HLKx.ps1
33:54 (15%)
33:54 (15%)
view
16 x 2 Scripts
Scripts
Attestation.ps1
HLKx.ps1
71:87 (13%)
71:87 (13%)
view
15 x 2 Scripts
Scripts
Attestation.ps1
ShippingLabel.ps1
33:49 (12%)
54:70 (11%)
view
15 x 2 Scripts
Scripts
HLKx.ps1
ShippingLabel.ps1
33:49 (12%)
54:70 (11%)
view
10 x 2 Scripts
Scripts
Attestation.ps1
HLKx.ps1
19:31 (8%)
19:31 (8%)
view
9 x 2 Scripts
Scripts
Attestation.ps1
HLKx.ps1
103:112 (7%)
103:112 (7%)
view
8 x 2 Scripts
Scripts
Attestation.ps1
HLKx.ps1
119:127 (6%)
119:127 (6%)
view
8 x 2 Scripts
Scripts
Attestation.ps1
HLKx.ps1
130:139 (6%)
130:139 (6%)
view
6 x 2 Scripts
build
ShippingLabel.ps1
Set-AssemblyInfo.ps1
1:6 (4%)
1:6 (13%)
view
6 x 2 Scripts
build
ShippingLabel.ps1
Set-AssemblyInfo.ps1
73:79 (4%)
38:44 (13%)
view
6 x 2 Scripts
build
HLKx.ps1
Set-AssemblyInfo.ps1
1:6 (4%)
1:6 (13%)
view
6 x 2 Scripts
Scripts
HLKx.ps1
ShippingLabel.ps1
1:6 (4%)
1:6 (4%)
view
6 x 2 ROOT
ROOT
azure-pipelines-ci.yml
azure-pipelines.yml
6:12 (21%)
6:12 (37%)
view
6 x 2 Scripts
Scripts
Attestation.ps1
ShippingLabel.ps1
1:6 (4%)
1:6 (4%)
view
6 x 2 Scripts
build
Attestation.ps1
Set-AssemblyInfo.ps1
1:6 (4%)
1:6 (13%)
view
6 x 2 Scripts
build
Attestation.ps1
Set-AssemblyInfo.ps1
43:49 (4%)
30:36 (13%)
view
6 x 2 Scripts
Scripts
Attestation.ps1
HLKx.ps1
1:6 (4%)
1:6 (4%)
view
6 x 2 Scripts
build
ShippingLabel.ps1
Set-AssemblyInfo.ps1
64:70 (4%)
30:36 (13%)
view
6 x 2 Scripts
build
HLKx.ps1
Set-AssemblyInfo.ps1
43:49 (4%)
30:36 (13%)
view