facebookincubator / fizz
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
  • 7% duplication:
    • 28,819 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 2,274 duplicated lines
  • 173 duplicates
system7% (2,274 lines)
Duplication per Extension
cpp9% (1,078 lines)
h8% (692 lines)
py4% (274 lines)
cmake10% (230 lines)
Duplication per Component (primary)
fizz/client15% (501 lines)
build/fbcode_builder5% (494 lines)
fizz/server13% (460 lines)
fizz/tool10% (252 lines)
fizz/protocol4% (142 lines)
fizz/crypto5% (117 lines)
fizz/util25% (114 lines)
fizz/extensions5% (98 lines)
fizz/experimental4% (50 lines)
fizz/record1% (36 lines)
fizz/cmake5% (10 lines)
build0% (0 lines)

Duplication Between Components (50+ lines)

G fizz/client fizz/client fizz/server fizz/server fizz/client--fizz/server 803 fizz/extensions fizz/extensions fizz/protocol fizz/protocol fizz/extensions--fizz/protocol 172

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 50 longest duplicates.
See data for all 173 duplicates...
Size#FoldersFilesLinesCode
45 x 2 fizz/client
fizz/server
286:337 (2%)
283:335 (2%)
view
39 x 2 fizz/util
fizz/util
109:147 (21%)
187:225 (21%)
view
29 x 2 fizz/client
fizz/server
178:208 (1%)
148:178 (1%)
view
24 x 2 fizz/tool
fizz/tool
605:634 (3%)
802:831 (2%)
view
24 x 2 fizz/extensions/javacrypto
fizz/protocol
30:64 (28%)
50:84 (22%)
view
19 x 2 fizz/extensions/javacrypto
fizz/protocol
90:114 (22%)
122:146 (18%)
view
18 x 2 fizz/client
fizz/server
2071:2091 (1%)
2043:2063 (1%)
view
16 x 2 fizz/client
fizz/server
108:159 (6%)
109:160 (7%)
view
16 x 2 fizz/client
fizz/server
265:283 (<1%)
262:280 (<1%)
view
16 x 2 fizz/client
fizz/server
431:460 (6%)
349:371 (7%)
view
15 x 2 fizz/client
fizz/server
67:81 (17%)
92:106 (15%)
view
15 x 2 fizz/tool
fizz/tool
640:656 (2%)
843:859 (1%)
view
15 x 2 fizz/client
fizz/server
245:262 (<1%)
242:259 (<1%)
view
15 x 2 build/fbcode_builder/CMake
build/fbcode_builder/CMake
171:185 (8%)
40:54 (15%)
view
14 x 2 build/fbcode_builder/getdeps
build/fbcode_builder/getdeps
722:735 (1%)
1208:1221 (1%)
view
14 x 2 fizz/experimental/batcher
fizz/experimental/batcher
174:191 (8%)
227:244 (8%)
view
14 x 2 fizz/client
fizz/client
823:836 (<1%)
852:869 (<1%)
view
13 x 2 fizz/client
fizz/server
84:96 (15%)
106:118 (13%)
view
13 x 2 fizz/util
fizz/util
98:110 (7%)
156:168 (7%)
view
13 x 2 build/fbcode_builder/getdeps
build/fbcode_builder/getdeps
78:92 (7%)
136:149 (7%)
view
13 x 2 fizz/client
fizz/server
157:174 (6%)
100:117 (13%)
view
13 x 2 build/fbcode_builder/CMake
build/fbcode_builder/CMake
1:13 (52%)
1:13 (38%)
view
13 x 2 fizz/client
fizz/server
2101:2114 (<1%)
2073:2086 (<1%)
view
12 x 2 fizz/client
fizz/client
1946:1957 (<1%)
2065:2076 (<1%)
view
12 x 2 fizz/client
fizz/client
1933:1944 (<1%)
2095:2106 (<1%)
view
12 x 2 fizz/server
fizz/server
1919:1930 (<1%)
2037:2048 (<1%)
view
12 x 2 fizz/extensions/delegatedcred
fizz/protocol
44:61 (27%)
173:190 (10%)
view
12 x 2 fizz/client
fizz/client
454:467 (2%)
537:550 (2%)
view
12 x 2 fizz/client
fizz/server
2254:2266 (<1%)
2117:2129 (<1%)
view
11 x 2 fizz/tool
fizz/tool
518:528 (1%)
706:716 (1%)
view
11 x 2 fizz/client
fizz/server
275:286 (2%)
181:192 (4%)
view
11 x 2 fizz/client
fizz/server
1207:1218 (<1%)
1327:1338 (<1%)
view
11 x 2 build/fbcode_builder/CMake
build/fbcode_builder/CMake
115:127 (4%)
180:192 (4%)
view
11 x 2 fizz/client
fizz/server
46:72 (8%)
69:92 (6%)
view
11 x 2 fizz/client
fizz/server
2238:2249 (<1%)
2101:2112 (<1%)
view
11 x 2 build/fbcode_builder/CMake
build/fbcode_builder/CMake
86:97 (6%)
53:64 (11%)
view
10 x 2 fizz/extensions/javacrypto
fizz/protocol
118:135 (11%)
150:167 (9%)
view
10 x 2 fizz/client
fizz/server
1771:1781 (<1%)
1856:1866 (<1%)
view
10 x 2 build/fbcode_builder/CMake
fizz/cmake
2:12 (14%)
2:12 (20%)
view
10 x 2 build/fbcode_builder/getdeps
build/fbcode_builder/getdeps
489:498 (1%)
501:510 (1%)
view
10 x 2 fizz/tool
fizz/tool
742:753 (1%)
236:246 (5%)
view
10 x 2 fizz/server
fizz/server
1608:1617 (<1%)
1633:1642 (<1%)
view
10 x 2 fizz/client
fizz/server
344:354 (<1%)
359:369 (<1%)
view
10 x 2 fizz/record
fizz/record
55:70 (12%)
116:131 (12%)
view
9 x 2 fizz/crypto/aead
fizz/crypto/aead
438:446 (2%)
454:462 (2%)
view
9 x 2 build/fbcode_builder/CMake
build/fbcode_builder/CMake
27:35 (5%)
29:38 (12%)
view
9 x 2 fizz/client
fizz/server
280:288 (6%)
367:375 (5%)
view
9 x 2 fizz/client
fizz/server
48:58 (26%)
40:50 (29%)
view
9 x 2 fizz/client
fizz/server
2041:2051 (<1%)
2014:2024 (<1%)
view
9 x 2 build/fbcode_builder/getdeps
build/fbcode_builder/getdeps
291:299 (1%)
328:336 (1%)
view
Duplicated Units
The list of top 8 duplicated units.
See data for all 8 unit duplicates...
Size#FoldersFilesLinesCode
32 x 2 fizz/server
fizz/client
147:180 
177:210 
view
23 x 2 fizz/protocol
fizz/extensions/javacrypto
121:147 
89:115 
view
18 x 2 fizz/server
fizz/client
296:316 
298:318 
view
18 x 2 fizz/server
fizz/client
318:337 
320:339 
view
9 x 2 fizz/server
fizz/client
361:371 
346:356 
view
8 x 2 fizz/protocol
fizz/extensions/javacrypto
150:162 
118:130 
view
6 x 2 fizz/experimental/ktls
fizz/client
41:48 
1988:1995 
view
6 x 2 fizz/record
fizz/record
167:174 
46:53 
view