microsoft / botbuilder-tools
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
  • 35% duplication:
    • 20,441 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 7,202 duplicated lines
  • 18,693 duplicates
system35% (7,202 lines)
Duplication per Extension
ts47% (6,691 lines)
js8% (449 lines)
cs7% (38 lines)
cmd64% (24 lines)
Duplication per Component (primary)
packages/LUIS/src51% (5,490 lines)
packages/MSBot/src34% (1,201 lines)
packages/Ludown/lib9% (384 lines)
packages/LUISGen/src7% (38 lines)
packages/QnAMaker/lib4% (33 lines)
packages/Chatdown/lib6% (32 lines)
packages/LUIS80% (24 lines)
BuildUtilities0% (0 lines)
build0% (0 lines)
packages/LUIS/swagger0% (0 lines)
packages/Ludown/ChitChat0% (0 lines)
packages/Ludown0% (0 lines)
packages/QnAMaker0% (0 lines)

Duplication Between Components (50+ lines)

G packages/Chatdown/lib packages/Chatdown/lib packages/QnAMaker/lib packages/QnAMaker/lib packages/Chatdown/lib--packages/QnAMaker/lib 64 packages/MSBot/src packages/MSBot/src packages/Chatdown/lib--packages/MSBot/src 54 packages/Ludown/lib packages/Ludown/lib packages/Chatdown/lib--packages/Ludown/lib 52 packages/MSBot/src--packages/QnAMaker/lib 56 packages/Ludown/lib--packages/QnAMaker/lib 52

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 18,693 duplicates...
Size#FoldersFilesLinesCode
41 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1846:1899 (1%)
1906:1959 (1%)
view
40 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1721:1767 (1%)
1906:1952 (1%)
view
40 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1721:1767 (1%)
1846:1892 (1%)
view
33 x 2 packages/MSBot/src
packages/MSBot/src
msbot-connect-blob.ts
msbot-connect-cosmosdb.ts
46:93 (39%)
49:96 (36%)
view
33 x 2 packages/MSBot/src
packages/MSBot/src
msbot-connect-appinsights.ts
msbot-connect-blob.ts
48:95 (37%)
46:93 (39%)
view
33 x 2 packages/MSBot/src
packages/MSBot/src
msbot-connect-appinsights.ts
msbot-connect-cosmosdb.ts
48:95 (37%)
49:96 (36%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1721:1759 (1%)
3167:3205 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1721:1759 (1%)
3221:3259 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1906:1944 (1%)
3167:3205 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1906:1944 (1%)
3221:3259 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1966:2004 (1%)
3221:3259 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1966:2004 (1%)
3167:3205 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1846:1884 (1%)
3167:3205 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1846:1884 (1%)
3221:3259 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
2180:2218 (1%)
3221:3259 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
2180:2218 (1%)
3167:3205 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1721:1759 (1%)
1966:2004 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1906:1944 (1%)
1966:2004 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1721:1759 (1%)
2180:2218 (1%)
view
32 x 2 packages/LUIS/src/models
packages/LUIS/src/models
mappers.ts
mappers.ts
1906:1944 (1%)
2180:2218 (1%)
view
Duplicated Units
The list of top 3 duplicated units.
See data for all 3 unit duplicates...
Size#FoldersFilesLinesCode
27 x 3 packages/Chatdown/lib
packages/Ludown/lib
packages/QnAMaker/lib
read-text-file.js
read-text-file.js
read-text-file.js
4:40 
4:40 
4:40 
view
7 x 2 packages/MSBot/src
packages/MSBot/src
msbot-clone-services.ts
msbot-create.ts
1199:1206 
192:199 
view
6 x 26 packages/MSBot/src
packages/MSBot/src
packages/MSBot/src
packages/MSBot/src
packages/MSBot/src
packages/MSBot/src
packages/MSBot/src
packages/MSBot/src
packages/MSBot/src
packages/MSBot/src
...
msbot-clone.ts
msbot-connect-blob.ts
msbot-connect-bot.ts
msbot-connect-cosmosdb.ts
msbot-connect-dispatch.ts
msbot-connect-endpoint.ts
msbot-connect-file.ts
msbot-connect-generic.ts
msbot-connect-luis.ts
msbot-connect-qna.ts
...
29:36 
120:127 
141:148 
133:140 
138:145 
118:125 
79:86 
97:104 
122:129 
118:125 
...
view