microsoft / VSSDK-Analyzers
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
  • 9% duplication:
    • 2,509 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 236 duplicated lines
  • 21 duplicates
system9% (236 lines)
Duplication per Extension
ps19% (102 lines)
yml20% (81 lines)
cs5% (53 lines)
Duplication per Component (primary)
azure-pipelines12% (75 lines)
src/Microsoft.VisualStudio.SDK.Analyzers.CodeFixes/tools75% (72 lines)
src/Microsoft.VisualStudio.SDK.Analyzers6% (53 lines)
tools5% (22 lines)
ROOT8% (14 lines)
azure-pipelines/artifacts0% (0 lines)
azure-pipelines/variables0% (0 lines)
src0% (0 lines)
src/Microsoft.VisualStudio.SDK.Analyzers.CodeFixes0% (0 lines)
src/Microsoft.VisualStudio.SDK.Analyzers.CodeFixes/build0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 21 duplicates...
Size#FoldersFilesLinesCode
20 x 2 src/Microsoft.VisualStud...alyzers.CodeFixes/tools
src/Microsoft.VisualStud...alyzers.CodeFixes/tools
install.ps1
uninstall.ps1
15:36 (44%)
15:36 (39%)
view
10 x 2 src/Microsoft.VisualStudio.SDK.Analyzers
src/Microsoft.VisualStudio.SDK.Analyzers
VSSDK001DeriveFromAsyncPackageAnalyze...
VSSDK003SupportAsyncToolWindowAnalyze...
31:51 (30%)
34:54 (17%)
view
10 x 2 azure-pipelines
azure-pipelines
official.yml
release.yml
88:97 (10%)
59:68 (14%)
view
9 x 2 azure-pipelines
azure-pipelines
official.yml
release.yml
78:86 (9%)
49:57 (13%)
view
8 x 2 ROOT
tools
init.ps1
Install-DotNetSdk.ps1
13:20 (8%)
10:17 (4%)
view
8 x 2 src/Microsoft.VisualStud...alyzers.CodeFixes/tools
src/Microsoft.VisualStud...alyzers.CodeFixes/tools
install.ps1
install.ps1
11:18 (17%)
42:49 (17%)
view
7 x 2 src/Microsoft.VisualStud...alyzers.CodeFixes/tools
src/Microsoft.VisualStud...alyzers.CodeFixes/tools
install.ps1
uninstall.ps1
38:44 (15%)
38:44 (13%)
view
7 x 2 src/Microsoft.VisualStudio.SDK.Analyzers
src/Microsoft.VisualStudio.SDK.Analyzers
VSSDK002PackageRegistrationMatchesBas...
VSSDK007ThreadHelperJTFRunAsync.cs
43:60 (14%)
37:54 (3%)
view
7 x 2 src/Microsoft.VisualStudio.SDK.Analyzers
src/Microsoft.VisualStudio.SDK.Analyzers
VSSDK002PackageRegistrationMatchesBas...
VSSDK003SupportAsyncToolWindowAnalyze...
43:60 (14%)
37:54 (12%)
view
7 x 2 tools
tools
Check-DotNetRuntime.ps1
Check-DotNetSdk.ps1
12:19 (18%)
7:14 (20%)
view
7 x 2 src/Microsoft.VisualStudio.SDK.Analyzers
src/Microsoft.VisualStudio.SDK.Analyzers
VSSDK001DeriveFromAsyncPackageAnalyze...
VSSDK002PackageRegistrationMatchesBas...
34:51 (21%)
43:60 (14%)
view
7 x 2 src/Microsoft.VisualStudio.SDK.Analyzers
src/Microsoft.VisualStudio.SDK.Analyzers
VSSDK001DeriveFromAsyncPackageAnalyze...
VSSDK007ThreadHelperJTFRunAsync.cs
34:51 (21%)
37:54 (3%)
view
7 x 2 src/Microsoft.VisualStudio.SDK.Analyzers
src/Microsoft.VisualStudio.SDK.Analyzers
VSSDK003SupportAsyncToolWindowAnalyze...
VSSDK007ThreadHelperJTFRunAsync.cs
37:54 (12%)
37:54 (3%)
view
7 x 2 azure-pipelines
azure-pipelines
official.yml
release.yml
80:86 (7%)
17:23 (10%)
view
7 x 2 azure-pipelines
azure-pipelines
release.yml
release.yml
17:23 (10%)
51:57 (10%)
view
6 x 2 src/Microsoft.VisualStud...alyzers.CodeFixes/tools
src/Microsoft.VisualStud...alyzers.CodeFixes/tools
install.ps1
uninstall.ps1
8:13 (13%)
8:13 (11%)
view
6 x 2 src/Microsoft.VisualStudio.SDK.Analyzers
src/Microsoft.VisualStudio.SDK.Analyzers
VSSDK004ProvideAutoLoadAttributeAnaly...
VSSDK005UseJoinableTaskContextSinglet...
34:46 (13%)
34:46 (21%)
view
6 x 2 src/Microsoft.VisualStudio.SDK.Analyzers
src/Microsoft.VisualStudio.SDK.Analyzers
VSSDK004ProvideAutoLoadAttributeAnaly...
VSSDK006CheckServicesExistAnalyzer.cs
33:43 (13%)
33:43 (4%)
view
6 x 2 azure-pipelines
azure-pipelines
official.yml
release-deployment-prep.yml
54:59 (6%)
3:8 (66%)
view
6 x 2 ROOT
azure-pipelines
azure-pipelines.yml
official.yml
6:11 (31%)
5:10 (6%)
view
Duplicated Units
The list of top 1 duplicated units.
See data for all 1 unit duplicate
Size#FoldersFilesLinesCode
13 x 2 src/Microsoft.VisualStudio.SDK.Analyzers
src/Microsoft.VisualStudio.SDK.Analyzers
Utils.cs
Utils.cs
25:38 
45:58 
view