microsoft / appcenter-cli
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
  • 12% duplication:
    • 11,442 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,464 duplicated lines
  • 270 duplicates
system12% (1,464 lines)
Duplication per Extension
ts13% (1,448 lines)
js3% (16 lines)
Duplication per Component (primary)
src/commands/distribute23% (415 lines)
src/commands/codepush16% (351 lines)
src/commands/analytics25% (221 lines)
src/commands/orgs26% (185 lines)
src/commands/apps28% (86 lines)
src/commands/build11% (56 lines)
src/commands/tokens28% (54 lines)
src/util/misc9% (44 lines)
src/commands/crashes3% (24 lines)
scripts3% (16 lines)
appcenter-file-upload-client-node/src1% (12 lines)
appcenter-file-upload-client-node0% (0 lines)
appcenter-file-upload-client-node/src/model0% (0 lines)
ROOT0% (0 lines)
src/commands0% (0 lines)
src/commands/lib0% (0 lines)
src/commands/profile0% (0 lines)
src/commands/telemetry0% (0 lines)
src0% (0 lines)
src/util/apis0% (0 lines)
src/util/commandline0% (0 lines)
src/util/continuous-polling0% (0 lines)
src/util/interaction0% (0 lines)
src/util/portal0% (0 lines)
src/util/profile0% (0 lines)
src/util/token-store0% (0 lines)

Duplication Between Components (50+ lines)

G src/commands/apps src/commands/apps src/commands/orgs src/commands/orgs src/commands/apps--src/commands/orgs 159 src/commands/distribute src/commands/distribute src/commands/distribute--src/commands/orgs 111 src/commands/build src/commands/build src/commands/build--src/commands/distribute 54 src/commands/analytics src/commands/analytics src/commands/analytics--src/commands/build 53

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 270 duplicates...
Size#FoldersFilesLinesCode
27 x 2 src/commands/apps
src/commands/orgs/apps
create.ts
create.ts
50:79 (31%)
52:81 (30%)
view
19 x 2 src/commands/distribute/releases
src/commands/distribute/releases
delete.ts
show.ts
41:60 (28%)
37:56 (25%)
view
18 x 2 src/commands/analytics
src/commands/analytics
audience.ts
sessions.ts
25:47 (6%)
27:49 (8%)
view
18 x 2 src/commands/distribute/groups
src/commands/distribute/stores
publish.ts
publish.ts
56:82 (30%)
38:64 (40%)
view
17 x 2 src/commands/distribute/groups
src/commands/distribute/groups
update.ts
update.ts
194:212 (8%)
225:243 (8%)
view
17 x 2 src/commands/distribute/releases
src/commands/distribute/releases
edit-notes.ts
edit.ts
53:70 (19%)
53:70 (24%)
view
16 x 2 src/commands/distribute/groups
src/commands/distribute
publish.ts
release.ts
10:27 (27%)
41:58 (3%)
view
14 x 2 src/commands/codepush
src/commands/codepush
release-electron.ts
release-react.ts
129:151 (11%)
169:191 (8%)
view
13 x 2 src/util/misc
src/util/misc
process-helper.ts
process-helper.ts
15:30 (28%)
49:64 (28%)
view
12 x 2 src/commands/crashes
src/commands/crashes
upload-mappings.ts
upload-symbols.ts
61:78 (22%)
107:124 (6%)
view
12 x 2 src/commands/distribute/releases
src/commands/distribute/releases
edit-notes.ts
show.ts
49:62 (13%)
33:46 (15%)
view
12 x 2 src/commands/codepush
src/commands/codepush
release-cordova.ts
release-react.ts
37:50 (14%)
129:142 (6%)
view
11 x 2 src/commands/distribute/groups
src/commands/distribute/releases
create.ts
show.ts
2:12 (11%)
2:12 (14%)
view
11 x 2 src/commands/build
src/commands/build
download.ts
queue.ts
2:12 (6%)
2:12 (16%)
view
11 x 2 src/commands/distribute/groups
src/commands/distribute/releases
create.ts
add-destination.ts
2:12 (11%)
2:12 (8%)
view
11 x 2 src/commands/build
src/commands/build
download.ts
logs.ts
2:12 (6%)
2:12 (13%)
view
11 x 2 src/commands/distribute/groups
src/commands/distribute/releases
create.ts
delete.ts
2:12 (11%)
2:12 (16%)
view
11 x 2 src/commands/distribute/groups
src/commands/distribute/releases
update.ts
add-destination.ts
2:12 (5%)
2:12 (8%)
view
11 x 2 src/commands/build
src/commands/distribute
logs.ts
release.ts
2:12 (13%)
2:12 (2%)
view
11 x 2 src/commands/distribute/groups
src/commands/distribute/releases
delete.ts
show.ts
2:12 (27%)
2:12 (14%)
view
Duplicated Units
The list of top 5 duplicated units.
See data for all 5 unit duplicates...
Size#FoldersFilesLinesCode
14 x 2 src/commands/distribute
src/commands/distribute/releases
release.ts
edit-notes.ts
302:316 
94:108 
view
12 x 2 src/commands/crashes
src/commands/crashes
upload-mappings.ts
upload-symbols.ts
66:81 
112:127 
view
11 x 2 src/util/misc
src/util/misc
fs-helper.ts
promisfied-fs.ts
28:41 
188:201 
view
9 x 2 src/commands/codepush/lib
src/commands/codepush/lib
electron-utils.ts
react-native-utils.ts
89:98 
565:574 
view
7 x 2 scripts
scripts
all-command-help.js
get-commands.js
21:28 
22:29 
view