diff --git a/.nuget/packages.config b/.nuget/packages.config
deleted file mode 100644
index 0901fde..0000000
--- a/.nuget/packages.config
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/ClrHeapAllocationAnalyzer.sln b/ClrHeapAllocationAnalyzer.sln
index 1991abb..97273b2 100644
--- a/ClrHeapAllocationAnalyzer.sln
+++ b/ClrHeapAllocationAnalyzer.sln
@@ -1,15 +1,10 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
-VisualStudioVersion = 14.0.22823.1
+VisualStudioVersion = 14.0.23107.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClrHeapAllocationAnalyzer", "ClrHeapAllocationsAnalyzer\ClrHeapAllocationAnalyzer.csproj", "{EC7D2390-8B99-4D52-8733-45AF8616DC35}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{18E73244-762C-41D9-A62E-14C706675A06}"
- ProjectSection(SolutionItems) = preProject
- .nuget\packages.config = .nuget\packages.config
- EndProjectSection
-EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClrHeapAllocationsAnalyzer.Test", "ClrHeapAllocationsAnalyzer.Test\ClrHeapAllocationsAnalyzer.Test.csproj", "{9F29A769-B1F0-41E0-8944-B81EDF8C96E8}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClrHeapAllocationAnalyzer.Vsix", "ClrHeapAllocationsAnalyzer.Vsix\ClrHeapAllocationAnalyzer.Vsix.csproj", "{B1412F49-1ABA-4698-B928-451FDA8DAF85}"
diff --git a/ClrHeapAllocationsAnalyzer.Test/AllocationAnalyzerTests.cs b/ClrHeapAllocationsAnalyzer.Test/AllocationAnalyzerTests.cs
index 8479bd4..1335592 100644
--- a/ClrHeapAllocationsAnalyzer.Test/AllocationAnalyzerTests.cs
+++ b/ClrHeapAllocationsAnalyzer.Test/AllocationAnalyzerTests.cs
@@ -14,10 +14,10 @@ public abstract class AllocationAnalyzerTests
{
protected static readonly List references = new List
{
- MetadataReference.CreateFromAssembly(typeof(int).Assembly),
- MetadataReference.CreateFromAssembly(typeof(Console).Assembly),
- MetadataReference.CreateFromAssembly(typeof(Enumerable).Assembly),
- MetadataReference.CreateFromAssembly(typeof(IList<>).Assembly)
+ MetadataReference.CreateFromFile(typeof(int).Assembly.Location),
+ MetadataReference.CreateFromFile(typeof(Console).Assembly.Location),
+ MetadataReference.CreateFromFile(typeof(Enumerable).Assembly.Location),
+ MetadataReference.CreateFromFile(typeof(IList<>).Assembly.Location)
};
protected IList GetExpectedDescendants(IEnumerable nodes, ImmutableArray expected)
diff --git a/ClrHeapAllocationsAnalyzer.Test/ClrHeapAllocationsAnalyzer.Test.csproj b/ClrHeapAllocationsAnalyzer.Test/ClrHeapAllocationsAnalyzer.Test.csproj
index 0e94552..1040340 100644
--- a/ClrHeapAllocationsAnalyzer.Test/ClrHeapAllocationsAnalyzer.Test.csproj
+++ b/ClrHeapAllocationsAnalyzer.Test/ClrHeapAllocationsAnalyzer.Test.csproj
@@ -1,5 +1,5 @@
-
+
Debug
AnyCPU
@@ -10,7 +10,7 @@
Properties
ClrHeapAllocationAnalyzer.Test
ClrHeapAllocationAnalyzer.Test
- v4.5
+ v4.5.2
512
@@ -35,40 +35,28 @@
- ..\packages\Microsoft.CodeAnalysis.Common.1.0.0-rc2\lib\net45\Microsoft.CodeAnalysis.dll
+ ..\packages\Microsoft.CodeAnalysis.Common.1.0.0\lib\net45\Microsoft.CodeAnalysis.dll
True
- ..\packages\Microsoft.CodeAnalysis.CSharp.1.0.0-rc2\lib\net45\Microsoft.CodeAnalysis.CSharp.dll
- True
-
-
- ..\packages\Microsoft.CodeAnalysis.CSharp.1.0.0-rc2\lib\net45\Microsoft.CodeAnalysis.CSharp.Desktop.dll
+ ..\packages\Microsoft.CodeAnalysis.CSharp.1.0.0\lib\net45\Microsoft.CodeAnalysis.CSharp.dll
True
- ..\packages\Microsoft.CodeAnalysis.CSharp.Workspaces.1.0.0-rc2\lib\net45\Microsoft.CodeAnalysis.CSharp.Workspaces.dll
- True
-
-
- ..\packages\Microsoft.CodeAnalysis.CSharp.Workspaces.1.0.0-rc2\lib\net45\Microsoft.CodeAnalysis.CSharp.Workspaces.Desktop.dll
- True
-
-
- ..\packages\Microsoft.CodeAnalysis.Common.1.0.0-rc2\lib\net45\Microsoft.CodeAnalysis.Desktop.dll
+ ..\packages\Microsoft.CodeAnalysis.CSharp.Workspaces.1.0.0\lib\net45\Microsoft.CodeAnalysis.CSharp.Workspaces.dll
True
- ..\packages\Microsoft.CodeAnalysis.Workspaces.Common.1.0.0-rc2\lib\net45\Microsoft.CodeAnalysis.Workspaces.dll
+ ..\packages\Microsoft.CodeAnalysis.Workspaces.Common.1.0.0\lib\net45\Microsoft.CodeAnalysis.Workspaces.dll
True
- ..\packages\Microsoft.CodeAnalysis.Workspaces.Common.1.0.0-rc2\lib\net45\Microsoft.CodeAnalysis.Workspaces.Desktop.dll
+ ..\packages\Microsoft.CodeAnalysis.Workspaces.Common.1.0.0\lib\net45\Microsoft.CodeAnalysis.Workspaces.Desktop.dll
True
-
- ..\packages\System.Collections.Immutable.1.1.33-beta\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll
+
+ ..\packages\System.Collections.Immutable.1.1.36\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll
True
@@ -92,8 +80,8 @@
True
-
- ..\packages\System.Reflection.Metadata.1.0.18-beta\lib\portable-net45+win8\System.Reflection.Metadata.dll
+
+ ..\packages\System.Reflection.Metadata.1.0.21\lib\portable-net45+win8\System.Reflection.Metadata.dll
True
@@ -117,7 +105,10 @@
-
+
+
+ Designer
+
@@ -129,8 +120,8 @@
-
-
+
+
\ No newline at end of file
diff --git a/ClrHeapAllocationsAnalyzer/Diagnostic.nuspec b/ClrHeapAllocationsAnalyzer/Diagnostic.nuspec
index f645b7e..8764c63 100644
--- a/ClrHeapAllocationsAnalyzer/Diagnostic.nuspec
+++ b/ClrHeapAllocationsAnalyzer/Diagnostic.nuspec
@@ -2,7 +2,7 @@
ClrHeapAllocationAnalyzer
- 1.0.0.6
+ 1.0.0.7
Clr C# Heap Allocation Analyzer
mjsabby
mjsabby
@@ -15,9 +15,9 @@
The code-assist version that integrates with the Visual Studio 2015 IDE is here, https://visualstudiogallery.msdn.microsoft.com/23ef1a4d-bc9d-49f1-a84f-ca358daaf587
NOTE: This is the build analyzer.
- NOTE: You require ' ' ' ' Visual Studio 2015 CTP 6 ' ' ' ' for this to work.
+ NOTE: You require ' ' ' ' Visual Studio 2015 ' ' ' ' for this to work.
- A few fixes that were left out due to merge issue. False positive on method groups, and new array was missing.
+ Visual Studio 2015 RTM Update.
Copyright
clr allocations boxing closure displayclass delegate enumerator newobj roslyn analyzer diagnostic
@@ -26,7 +26,7 @@
true
-
+
diff --git a/ClrHeapAllocationsAnalyzer/packages.config b/ClrHeapAllocationsAnalyzer/packages.config
index 4db59e9..29291ec 100644
--- a/ClrHeapAllocationsAnalyzer/packages.config
+++ b/ClrHeapAllocationsAnalyzer/packages.config
@@ -1,11 +1,12 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ClrHeapAllocationsAnalyzer/tools/install.ps1 b/ClrHeapAllocationsAnalyzer/tools/install.ps1
index dae2440..8178834 100644
--- a/ClrHeapAllocationsAnalyzer/tools/install.ps1
+++ b/ClrHeapAllocationsAnalyzer/tools/install.ps1
@@ -1,18 +1,49 @@
param($installPath, $toolsPath, $package, $project)
-$analyzersPath = join-path $toolsPath "analyzers"
+$analyzersPaths = Join-Path (Join-Path (Split-Path -Path $toolsPath -Parent) "analyzers" ) * -Resolve
-# Install the language agnostic analyzers.
-foreach ($analyzerFilePath in Get-ChildItem $analyzersPath)
+foreach($analyzersPath in $analyzersPaths)
{
- $project.Object.AnalyzerReferences.Add($analyzerFilePath.FullName)
+ # Install the language agnostic analyzers.
+ if (Test-Path $analyzersPath)
+ {
+ foreach ($analyzerFilePath in Get-ChildItem $analyzersPath -Filter *.dll)
+ {
+ if($project.Object.AnalyzerReferences)
+ {
+ $project.Object.AnalyzerReferences.Add($analyzerFilePath.FullName)
+ }
+ }
+ }
}
-# Install language specific analyzers.
# $project.Type gives the language name like (C# or VB.NET)
-$languageAnalyzersPath = join-path $analyzersPath $project.Type
+$languageFolder = ""
+if($project.Type -eq "C#")
+{
+ $languageFolder = "cs"
+}
+if($project.Type -eq "VB.NET")
+{
+ $languageFolder = "vb"
+}
+if($languageFolder -eq "")
+{
+ return
+}
-foreach ($analyzerFilePath in Get-ChildItem $languageAnalyzersPath)
+foreach($analyzersPath in $analyzersPaths)
{
- $project.Object.AnalyzerReferences.Add($analyzerFilePath.FullName)
+ # Install language specific analyzers.
+ $languageAnalyzersPath = join-path $analyzersPath $languageFolder
+ if (Test-Path $languageAnalyzersPath)
+ {
+ foreach ($analyzerFilePath in Get-ChildItem $languageAnalyzersPath -Filter *.dll)
+ {
+ if($project.Object.AnalyzerReferences)
+ {
+ $project.Object.AnalyzerReferences.Add($analyzerFilePath.FullName)
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/ClrHeapAllocationsAnalyzer/tools/uninstall.ps1 b/ClrHeapAllocationsAnalyzer/tools/uninstall.ps1
index 5b6bd6d..9130bcb 100644
--- a/ClrHeapAllocationsAnalyzer/tools/uninstall.ps1
+++ b/ClrHeapAllocationsAnalyzer/tools/uninstall.ps1
@@ -1,18 +1,56 @@
param($installPath, $toolsPath, $package, $project)
-# Uninstall the language agnostic analyzers.
-$analyzersPath = join-path $toolsPath "analyzers"
+$analyzersPaths = Join-Path (Join-Path (Split-Path -Path $toolsPath -Parent) "analyzers" ) * -Resolve
-foreach ($analyzerFilePath in Get-ChildItem $analyzersPath)
+foreach($analyzersPath in $analyzersPaths)
{
- $project.Object.AnalyzerReferences.Remove($analyzerFilePath.FullName)
+ # Uninstall the language agnostic analyzers.
+ if (Test-Path $analyzersPath)
+ {
+ foreach ($analyzerFilePath in Get-ChildItem $analyzersPath -Filter *.dll)
+ {
+ if($project.Object.AnalyzerReferences)
+ {
+ $project.Object.AnalyzerReferences.Remove($analyzerFilePath.FullName)
+ }
+ }
+ }
}
-# Uninstall language specific analyzers.
# $project.Type gives the language name like (C# or VB.NET)
-$languageAnalyzersPath = join-path $analyzersPath $project.Type
+$languageFolder = ""
+if($project.Type -eq "C#")
+{
+ $languageFolder = "cs"
+}
+if($project.Type -eq "VB.NET")
+{
+ $languageFolder = "vb"
+}
+if($languageFolder -eq "")
+{
+ return
+}
-foreach ($analyzerFilePath in Get-ChildItem $languageAnalyzersPath)
+foreach($analyzersPath in $analyzersPaths)
{
- $project.Object.AnalyzerReferences.Remove($analyzerFilePath.FullName)
+ # Uninstall language specific analyzers.
+ $languageAnalyzersPath = join-path $analyzersPath $languageFolder
+ if (Test-Path $languageAnalyzersPath)
+ {
+ foreach ($analyzerFilePath in Get-ChildItem $languageAnalyzersPath -Filter *.dll)
+ {
+ if($project.Object.AnalyzerReferences)
+ {
+ try
+ {
+ $project.Object.AnalyzerReferences.Remove($analyzerFilePath.FullName)
+ }
+ catch
+ {
+
+ }
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/README.md b/README.md
index 767f138..9d500a7 100644
--- a/README.md
+++ b/README.md
@@ -13,6 +13,6 @@ You can find also it on the Visual Studio Gallery, https://visualstudiogallery.m
If you want it use it in your build: https://www.nuget.org/packages/ClrHeapAllocationAnalyzer/1.0.0.7
-**NOTE: Requires [Visual Studio 2015 RC](https://www.visualstudio.com/news/vs2015-vs)**
+**NOTE: Requires [Visual Studio 2015](https://www.visualstudio.com/news/vs2015-vs)**
![example](https://cloud.githubusercontent.com/assets/1930559/4606581/2a027d08-5225-11e4-8d4e-686c204a1267.png)
\ No newline at end of file