microsoft / sarif-visualstudio-extension
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
  • 5% duplication:
    • 10,526 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 543 duplicated lines
  • 36 duplicates
system5% (543 lines)
Duplication per Extension
cs3% (253 lines)
xaml7% (137 lines)
props88% (74 lines)
ps15% (44 lines)
vsixmanifest39% (35 lines)
Duplication per Component (primary)
src/Sarif.Viewer.VisualStudio.Core3% (326 lines)
src86% (74 lines)
src/Sarif.Sarifer.Core6% (52 lines)
scripts8% (44 lines)
src/Sarif.Sarifer.202268% (20 lines)
src/Sarif.Viewer.VisualStudio.202245% (14 lines)
src/Sarif.Viewer.VisualStudio25% (7 lines)
src/Sarif.Sarifer23% (6 lines)
ROOT0% (0 lines)
src/Sarif.Viewer.VisualStudio.Interop0% (0 lines)

Duplication Between Components (50+ lines)

G src/Sarif.Sarifer.Core src/Sarif.Sarifer.Core src/Sarif.Viewer.VisualStudio.Core src/Sarif.Viewer.VisualStudio.Core src/Sarif.Sarifer.Core--src/Sarif.Viewer.VisualStudio.Core 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 36 duplicates...
Size#FoldersFilesLinesCode
25 x 2 src
src
props
build.props
build2022.props
1:44 (59%)
1:44 (59%)
view
20 x 2 src/Sarif.Viewer.VisualStudio.Core/ErrorList
src/Sarif.Viewer.VisualStudio.Core/ErrorList
ErrorListService.cs
ErrorListService.cs
283:308 (5%)
329:354 (5%)
view
17 x 2 src/Sarif.Viewer.VisualStudio.Core/Views
src/Sarif.Viewer.VisualStudio.Core/Views
xaml
Locations.xaml
Locations.xaml
50:69 (15%)
121:140 (15%)
view
16 x 2 src/Sarif.Sarifer.Core/Options
src/Sarif.Viewer.VisualStudio.Core/Options
xaml
SariferOptionsControl.xaml
SarifViewerOptionsControl.xaml
14:35 (27%)
14:35 (43%)
view
14 x 2 src/Sarif.Sarifer.2022
src/Sarif.Viewer.VisualStudio.2022
vsixmanifest
source.extension.vsixmanifest
source.extension.vsixmanifest
15:34 (60%)
11:30 (58%)
view
12 x 2 src
src
props
build.props
build2022.props
51:68 (28%)
51:68 (28%)
view
11 x 2 src/Sarif.Viewer.VisualStudio.Core/Models
src/Sarif.Viewer.VisualStudio.Core/Models
LocationModel.cs
StackFrameModel.cs
37:63 (19%)
107:133 (11%)
view
10 x 2 src/Sarif.Sarifer.Core/Options
src/Sarif.Viewer.VisualStudio.Core/Options
xaml
SariferOptionsControl.xaml
SarifViewerOptionsControl.xaml
2:11 (17%)
2:11 (27%)
view
9 x 2 scripts
scripts
BuildPackagesFromSigningDirectory.ps1
Run-Tests.ps1
7:16 (21%)
10:19 (26%)
view
9 x 2 src/Sarif.Viewer.VisualStudio.Core/Controls
src/Sarif.Viewer.VisualStudio.Core/Themes
xaml
InternetHyperlink.xaml
DefaultStyles.xaml
12:20 (18%)
111:119 (9%)
view
7 x 2 src/Sarif.Viewer.VisualStudio.2022
src/Sarif.Viewer.VisualStudio
vsixmanifest
source.extension.vsixmanifest
source.extension.vsixmanifest
21:29 (29%)
15:23 (33%)
view
7 x 2 src/Sarif.Viewer.VisualStudio.Core/Models
src/Sarif.Viewer.VisualStudio.Core/Models
LocationModel.cs
StackFrameModel.cs
67:79 (12%)
155:167 (7%)
view
7 x 2 src/Sarif.Sarifer.Core
src/Sarif.Sarifer.Core
BackgroundAnalyzerBase.cs
BackgroundAnalyzerBase.cs
81:96 (8%)
133:148 (8%)
view
7 x 2 src/Sarif.Viewer.VisualStudio.Core/Controls
src/Sarif.Viewer.VisualStudio.Core/Themes
xaml
InternetHyperlink.xaml
DefaultStyles.xaml
33:39 (14%)
92:98 (7%)
view
7 x 2 src/Sarif.Viewer.VisualStudio.Core/Models
src/Sarif.Viewer.VisualStudio.Core/Models
FixModel.cs
RuleModel.cs
21:34 (38%)
60:72 (8%)
view
7 x 2 src/Sarif.Viewer.VisualStudio.Core/Models
src/Sarif.Viewer.VisualStudio.Core/Models
RuleModel.cs
ToolModel.cs
43:55 (8%)
13:25 (20%)
view
7 x 2 src/Sarif.Viewer.VisualStudio.Core/Models
src/Sarif.Viewer.VisualStudio.Core/Models
LocationModel.cs
StackFrameModel.cs
25:37 (12%)
26:38 (7%)
view
7 x 2 src/Sarif.Viewer.VisualStudio.Core/Models
src/Sarif.Viewer.VisualStudio.Core/Models
LocationCollection.cs
StackCollection.cs
74:87 (12%)
18:31 (58%)
view
7 x 2 scripts
scripts
BuildAndTest.ps1
BuildPackagesFromSigningDirectory.ps1
98:105 (4%)
36:43 (17%)
view
7 x 2 src/Sarif.Viewer.VisualStudio.Core/Views
src/Sarif.Viewer.VisualStudio.Core/Views
xaml
Information.xaml
Information.xaml
16:22 (3%)
103:109 (3%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
12 x 2 src/Sarif.Viewer.VisualStudio.Core/Sarif
src/Sarif.Viewer.VisualStudio.Core/Sarif
Fix.Extensions.cs
Fix.Extensions.cs
16:31 
33:48 
view
7 x 2 src/Sarif.Viewer.VisualStudio.Core
src/Sarif.Viewer.VisualStudio.Core
DelegateCommand.cs
DelegateCommand.cs
153:160 
206:213 
view