microsoft / mixed-reality-extension-sdk
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
  • 6% duplication:
    • 12,627 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 788 duplicated lines
  • 135 duplicates
system6% (788 lines)
Duplication per Extension
ts6% (788 lines)
Duplication per Component (primary)
packages/sdk/src/internal11% (326 lines)
packages/common/src/math6% (304 lines)
packages/sdk/src/asset7% (52 lines)
packages/sdk/src/core4% (40 lines)
packages/sdk/src/actor1% (27 lines)
packages/sdk/src/animation3% (18 lines)
packages/sdk/src/user5% (12 lines)
packages/sdk/src/util2% (9 lines)
design/images0% (0 lines)
packages/altspacevr-extras/src0% (0 lines)
packages/common/src0% (0 lines)
packages/gltf-gen/src0% (0 lines)
packages/gltf-gen/src/geometry0% (0 lines)
packages/scripts0% (0 lines)
packages/sdk/src0% (0 lines)
scripts0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 135 duplicates...
Size#FoldersFilesLinesCode
23 x 2 packages/common/src/math
packages/common/src/math
matrix.ts
matrix.ts
1324:1354 (1%)
1385:1415 (1%)
view
16 x 2 packages/common/src/math
packages/common/src/math
matrix.ts
matrix.ts
835:850 (1%)
870:885 (1%)
view
15 x 2 packages/common/src/math
packages/common/src/math
matrix.ts
matrix.ts
120:144 (1%)
239:255 (1%)
view
12 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
260:271 (1%)
351:362 (1%)
view
12 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
785:796 (1%)
832:843 (1%)
view
11 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
502:512 (1%)
574:584 (1%)
view
11 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
502:512 (1%)
1175:1185 (1%)
view
11 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
574:584 (1%)
1175:1185 (1%)
view
9 x 2 packages/sdk/src/actor
packages/sdk/src/animation
actor.ts
animation.ts
693:701 (1%)
231:239 (3%)
view
9 x 2 packages/sdk/src/actor
packages/sdk/src/util
text.ts
boxAlignment.ts
9:17 (14%)
9:25 (42%)
view
9 x 2 packages/common/src/math
packages/common/src/math
quaternion.ts
vector3.ts
802:811 (1%)
358:367 (1%)
view
9 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
224:232 (1%)
260:268 (1%)
view
9 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
354:362 (1%)
788:796 (1%)
view
9 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
224:232 (1%)
351:359 (1%)
view
9 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
263:271 (1%)
788:796 (1%)
view
9 x 2 packages/sdk/src/actor
packages/sdk/src/animation
actor.ts
animation.ts
680:688 (1%)
218:226 (3%)
view
9 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
354:362 (1%)
835:843 (1%)
view
9 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
263:271 (1%)
835:843 (1%)
view
8 x 2 packages/sdk/src/internal/adapters/multipeer
packages/sdk/src/internal/adapters/multipeer
rules.ts
rules.ts
505:512 (<1%)
607:614 (<1%)
view
8 x 2 packages/sdk/src/core
packages/sdk/src/core
multipeerAdapter.ts
websocketAdapter.ts
81:89 (9%)
48:56 (22%)
view
Duplicated Units
The list of top 5 duplicated units.
See data for all 5 unit duplicates...
Size#FoldersFilesLinesCode
13 x 2 packages/sdk/src/core
packages/sdk/src/core
multipeerAdapter.ts
websocketAdapter.ts
76:91 
43:58 
view
6 x 2 packages/common/src/math
packages/common/src/math
quaternion.ts
vector4.ts
74:80 
65:71 
view
6 x 2 packages/common/src/math
packages/common/src/math
quaternion.ts
vector4.ts
145:151 
482:488 
view
6 x 2 packages/common/src/math
packages/common/src/math
quaternion.ts
vector4.ts
210:216 
243:249 
view
6 x 2 packages/common/src/math
packages/common/src/math
quaternion.ts
vector4.ts
238:244 
257:263 
view