microsoft / ClearScript
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
  • 41% duplication:
    • 57,163 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 23,836 duplicated lines
  • 6,767 duplicates
system41% (23,836 lines)
Duplication per Extension
cs44% (22,049 lines)
vcxproj78% (392 lines)
cpp10% (355 lines)
js84% (341 lines)
filters98% (320 lines)
DotSettings96% (256 lines)
h3% (75 lines)
ps140% (36 lines)
vbs22% (12 lines)
Duplication per Component (primary)
ClearScript44% (12,934 lines)
ClearScriptTest46% (9,320 lines)
ClearScriptV817% (1,142 lines)
ROOT49% (256 lines)
ClearScriptBenchmarks40% (90 lines)
ClearScriptConsole46% (58 lines)
NuGet31% (36 lines)
Misc0% (0 lines)
NetCore0% (0 lines)
NetFramework0% (0 lines)
NetStandard0% (0 lines)
UWP0% (0 lines)
Unix0% (0 lines)

Duplication Between Components (50+ lines)

G ClearScript ClearScript ClearScriptV8 ClearScriptV8 ClearScript--ClearScriptV8 83

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 6,767 duplicates...
Size#FoldersFilesLinesCode
3452 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
87:6044 (37%)
43:6000 (99%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.Generated.cs
6053:7048 (3%)
10021:11016 (3%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
13989:14984 (3%)
57:1052 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
10021:11016 (3%)
57:1052 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.Generated.cs
10021:11016 (3%)
12005:13000 (3%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
6053:7048 (3%)
2041:3036 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
4069:5064 (3%)
2041:3036 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.Generated.cs
10021:11016 (3%)
13989:14984 (3%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
4069:5064 (3%)
57:1052 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.UWP.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
57:1052 (9%)
2041:3036 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
13989:14984 (3%)
4025:5020 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
12005:13000 (3%)
2041:3036 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.Generated.cs
8037:9032 (3%)
10021:11016 (3%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.Generated.cs
12005:13000 (3%)
13989:14984 (3%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.Generated.cs
101:1096 (3%)
6053:7048 (3%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
12005:13000 (3%)
4025:5020 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
6053:7048 (3%)
57:1052 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
10021:11016 (3%)
4025:5020 (9%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.Generated.cs
101:1096 (3%)
10021:11016 (3%)
view
345 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
13989:14984 (3%)
2041:3036 (9%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 230 unit duplicates...
Size#FoldersFilesLinesCode
804 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
1099:2082 
1055:2038 
view
804 x 2 ClearScript/V8/SplitProxy
ClearScript/V8/SplitProxy
V8SplitProxyNative.Generated.cs
V8SplitProxyNative.UWP.Generated.cs
3083:4066 
3039:4022 
view
60 x 2 ClearScriptTest
ClearScriptTest
JScriptCoreEngineTest.cs
JScriptEngineTest.cs
1563:1632 
1562:1631 
view
60 x 2 ClearScriptTest
ClearScriptTest
VBScriptCoreEngineTest.cs
VBScriptEngineTest.cs
1694:1763 
1693:1762 
view
60 x 2 ClearScriptTest
ClearScriptTest
VBScriptCoreEngineTest.cs
VBScriptEngineTest.cs
2020:2089 
2019:2088 
view
59 x 2 ClearScriptTest
ClearScriptTest
JScriptCoreEngineTest.cs
JScriptEngineTest.cs
1409:1477 
1408:1476 
view
59 x 2 ClearScriptTest
ClearScriptTest
JScriptCoreEngineTest.cs
JScriptEngineTest.cs
1887:1955 
1886:1954 
view
59 x 2 ClearScriptTest
ClearScriptTest
VBScriptCoreEngineTest.cs
VBScriptEngineTest.cs
1540:1608 
1539:1607 
view
58 x 2 ClearScriptTest
ClearScriptTest
JScriptCoreEngineTest.cs
JScriptEngineTest.cs
1736:1803 
1735:1802 
view
58 x 2 ClearScriptTest
ClearScriptTest
VBScriptCoreEngineTest.cs
VBScriptEngineTest.cs
1867:1934 
1866:1933 
view
53 x 2 ClearScriptTest
ClearScriptTest
Misc.NetStandard.cs
Misc.Unix.NetStandard.cs
21:79 
21:79 
view
43 x 2 ClearScriptTest
ClearScriptTest
VBScriptCoreEngineTest.cs
VBScriptEngineTest.cs
2611:2662 
2671:2722 
view
42 x 2 ClearScriptTest
ClearScriptTest
BugFixTest.cs
BugFixTest.cs
839:889 
945:995 
view
39 x 2 ClearScriptTest
ClearScriptTest
JScriptCoreModuleTest.cs
JScriptModuleTest.cs
231:279 
231:279 
view
37 x 2 ClearScriptTest
ClearScriptTest
AccessContextTest.cs
AccessContextTest.cs
138:180 
228:270 
view
37 x 2 ClearScriptTest
ClearScriptTest
VBScriptCoreEngineTest.cs
VBScriptEngineTest.cs
2242:2286 
2302:2346 
view
37 x 3 ClearScriptTest
ClearScriptTest
ClearScriptTest
VBScriptCoreEngineTest.cs
VBScriptCoreEngineTest.cs
VBScriptEngineTest.cs
2289:2333 
2336:2380 
2349:2393 
view
34 x 2 ClearScriptTest
ClearScriptTest
JScriptCoreEngineTest.cs
JScriptEngineTest.cs
2106:2146 
2157:2197 
view
34 x 3 ClearScriptTest
ClearScriptTest
ClearScriptTest
JScriptCoreEngineTest.cs
JScriptCoreEngineTest.cs
JScriptEngineTest.cs
2149:2189 
2192:2232 
2200:2240 
view
32 x 3 ClearScriptTest
ClearScriptTest
ClearScriptTest
JScriptCoreEngineTest.cs
JScriptEngineTest.cs
V8ScriptEngineTest.Windows.cs
1523:1560 
1522:1559 
191:228 
view