microsoft / IIS.Compression
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:
    • 2,256 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 942 duplicated lines
  • 46 duplicates
system41% (942 lines)
Duplication per Extension
cpp60% (519 lines)
cxx60% (219 lines)
vcxproj40% (190 lines)
wxs8% (14 lines)
Duplication per Component (primary)
iisbrotli74% (321 lines)
iiszlib58% (308 lines)
CustomAction42% (227 lines)
brotli11% (36 lines)
zlib46% (36 lines)
Installer3% (14 lines)
ROOT0% (0 lines)
build0% (0 lines)

Duplication Between Components (50+ lines)

G iisbrotli iisbrotli iiszlib iiszlib iisbrotli--iiszlib 434 brotli brotli zlib zlib brotli--zlib 70 CustomAction CustomAction CustomAction--iisbrotli 58 CustomAction--iiszlib 50

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 46 duplicates...
Size#FoldersFilesLinesCode
50 x 2 iisbrotli
iisbrotli
iisbrotli.cpp
iisbrotli.cpp
147:222 (17%)
274:349 (17%)
view
39 x 2 iiszlib
iiszlib
cxx
iiszlib.cxx
iiszlib.cxx
214:271 (10%)
328:385 (10%)
view
35 x 2 iisbrotli
iiszlib
iisbrotli.cpp
iiszlib.cxx
398:448 (11%)
505:555 (9%)
view
34 x 2 CustomAction
CustomAction
iiscompressionCA.cpp
iiscompressionCA.cpp
74:120 (12%)
269:315 (12%)
view
28 x 2 iisbrotli
iiszlib
dllmain.cpp
dllmain.cpp
9:45 (51%)
12:48 (33%)
view
26 x 2 CustomAction
CustomAction
iiscompressionCA.cpp
iiscompressionCA.cpp
197:240 (9%)
392:435 (9%)
view
20 x 2 iisbrotli
iiszlib
iisbrotli.cpp
iiszlib.cxx
36:75 (6%)
57:96 (5%)
view
19 x 2 iisbrotli
iiszlib
vcxproj
iisbrotli.vcxproj
iiszlib.vcxproj
1:22 (24%)
1:22 (24%)
view
18 x 2 CustomAction
iisbrotli
vcxproj
iiscompressionCA.vcxproj
iisbrotli.vcxproj
3:25 (18%)
3:25 (22%)
view
18 x 2 iiszlib
iiszlib
cxx
iiszlib.cxx
iiszlib.cxx
276:300 (4%)
405:429 (4%)
view
17 x 2 CustomAction
iiszlib
vcxproj
iiscompressionCA.vcxproj
iiszlib.vcxproj
3:22 (17%)
3:22 (21%)
view
17 x 2 brotli
zlib
vcxproj
brotli.vcxproj
zlib.vcxproj
1:20 (13%)
1:20 (21%)
view
14 x 2 iisbrotli
iiszlib
vcxproj
iisbrotli.vcxproj
iiszlib.vcxproj
51:67 (17%)
27:43 (17%)
view
14 x 2 CustomAction
brotli
vcxproj
iiscompressionCA.vcxproj
brotli.vcxproj
7:25 (14%)
5:23 (10%)
view
14 x 2 iisbrotli
iiszlib
iisbrotli.cpp
iiszlib.cxx
248:267 (4%)
302:321 (3%)
view
14 x 2 iiszlib
zlib
vcxproj
iiszlib.vcxproj
zlib.vcxproj
7:25 (17%)
5:23 (17%)
view
14 x 2 brotli
iisbrotli
vcxproj
brotli.vcxproj
iisbrotli.vcxproj
5:23 (10%)
7:25 (17%)
view
13 x 2 iisbrotli
zlib
vcxproj
iisbrotli.vcxproj
zlib.vcxproj
7:22 (16%)
5:20 (16%)
view
13 x 2 brotli
iiszlib
vcxproj
brotli.vcxproj
iiszlib.vcxproj
5:20 (10%)
7:22 (16%)
view
13 x 2 CustomAction
zlib
vcxproj
iiscompressionCA.vcxproj
zlib.vcxproj
7:22 (13%)
5:20 (16%)
view