microsoft / pxt-calliope
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
  • 8% duplication:
    • 9,847 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 878 duplicated lines
  • 177 duplicates
system8% (878 lines)
Duplication per Extension
js18% (499 lines)
ts5% (272 lines)
tsx41% (60 lines)
cs4% (21 lines)
less9% (14 lines)
cpp1% (12 lines)
Duplication per Component (primary)
editor/prepend20% (499 lines)
libs/core9% (258 lines)
editor10% (60 lines)
clients/winuploader4% (21 lines)
theme9% (14 lines)
sim/visuals<1% (12 lines)
libs/cpp-test58% (7 lines)
libs/hello100% (7 lines)
clients/macuploader0% (0 lines)
docfiles0% (0 lines)
fieldeditors0% (0 lines)
libs/blocksprj0% (0 lines)
libs/bluetooth0% (0 lines)
libs/bluetoothprj0% (0 lines)
libs/devices0% (0 lines)
libs/lang-test10% (0 lines)
libs/motor0% (0 lines)
libs/radio0% (0 lines)
libs/servo0% (0 lines)
libs/test-snippets0% (0 lines)
libs/tsprj0% (0 lines)
pxtwapp/pxtwapp0% (0 lines)
resources/generateleds0% (0 lines)
sim0% (0 lines)
sim/public0% (0 lines)
sim/state0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 177 duplicates...
Size#FoldersFilesLinesCode
55 x 2 libs/core
libs/core
compass.ts
compass.ts
58:112 (22%)
116:170 (22%)
view
55 x 2 libs/core
libs/core
compass.ts
compass.ts
2:56 (22%)
172:226 (22%)
view
38 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
2060:2102 (1%)
2281:2323 (1%)
view
38 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
1302:1344 (1%)
2281:2323 (1%)
view
38 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
1302:1344 (1%)
2060:2102 (1%)
view
37 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
892:933 (1%)
1302:1343 (1%)
view
37 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
1175:1216 (1%)
1302:1343 (1%)
view
37 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
892:933 (1%)
1175:1216 (1%)
view
37 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
892:933 (1%)
2281:2322 (1%)
view
37 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
1175:1216 (1%)
2281:2322 (1%)
view
37 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
892:933 (1%)
2060:2101 (1%)
view
37 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
1175:1216 (1%)
2060:2101 (1%)
view
36 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
217:256 (1%)
352:391 (1%)
view
36 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
352:391 (1%)
1780:1819 (1%)
view
36 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
217:256 (1%)
1643:1682 (1%)
view
36 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
1643:1682 (1%)
1780:1819 (1%)
view
36 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
217:256 (1%)
1780:1819 (1%)
view
36 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
352:391 (1%)
1643:1682 (1%)
view
35 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
1179:1216 (1%)
1782:1819 (1%)
view
35 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
69:107 (1%)
1177:1215 (1%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
21 x 2 editor/prepend
editor/prepend
dapjs.js
dapjs.js
85:106 
233:254 
view
7 x 3 clients/winuploader/Microbit.Uploader
clients/winuploader/Microbit.Uploader
clients/winuploader/Microbit.Uploader
LicenseDialog.Designer.cs
MainForm.Designer.cs
Settings.Designer.cs
14:21 
14:21 
14:21 
view