Skip to content

Commit 5a813cb

Browse files
committed
Updates
1 parent 86d3480 commit 5a813cb

File tree

5 files changed

+119
-11
lines changed

5 files changed

+119
-11
lines changed

.github/workflows/nuget.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
run: dotnet test --no-restore --verbosity normal
2929

3030
- name: Pack
31-
run: dotnet pack -c Release -p:Version=$GITHUB_REF_NAME;PackagePath=analyzers/dotnet/cs
31+
run: dotnet pack -c Release -p:Version=$GITHUB_REF_NAME
3232

3333
- name: Push NuGet Package
3434
run: dotnet nuget push Log1/bin/Release/*.nupkg -k ${{ secrets.NUGET_API_KEY }} -s https://api.nuget.org/v3/index.json

ConsoleApp1/ConsoleApp1.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@
1010
</PropertyGroup>
1111

1212
<ItemGroup>
13-
<!-- <PackageReference Include="Log1" Version="1.0.1" OutputItemType="Analyzer" /> -->
13+
<!--<PackageReference Include="Log1" Version="1.0.2" OutputItemType="Analyzer" />-->
1414
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
1515
<PackageReference Include="Microsoft.Extensions.Hosting" Version="7.0.1" />
1616
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="7.0.0" />
1717
</ItemGroup>
1818

19-
<ItemGroup>
19+
<ItemGroup>
2020
<ProjectReference Include="..\Log1\Log1.csproj" OutputItemType="Analyzer" />
21-
</ItemGroup>
21+
</ItemGroup>
2222

2323
<ItemGroup>
2424
<None Update="appSettings.json">

Log1/Log1.csproj

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,13 @@
22

33
<PropertyGroup>
44
<TargetFrameworks>netstandard2.0</TargetFrameworks>
5-
<EnforceExtendedAnalyzerRules>true</EnforceExtendedAnalyzerRules>
5+
<EnforceExtendedAnalyzerRules>true</EnforceExtendedAnalyzerRules>
66
<PackageDescription>This package adds support for customizing logging</PackageDescription>
77
<RepositoryUrl>https://github.com/Hosch250/Log1</RepositoryUrl>
88
<PackageLicenseExpression>Apache-2.0</PackageLicenseExpression>
99
<PackageReadmeFile>README.md</PackageReadmeFile>
1010
<PackageRequireLicenseAcceptance>True</PackageRequireLicenseAcceptance>
11+
<NoPackageAnalysis>true</NoPackageAnalysis>
1112
</PropertyGroup>
1213

1314
<ItemGroup>
@@ -16,16 +17,18 @@
1617
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="7.0.0" />
1718
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="7.0.0" />
1819
<PackageReference Include="System.Configuration.ConfigurationManager" Version="7.0.0" />
19-
<PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="3.3.4">
20-
<PrivateAssets>all</PrivateAssets>
21-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
22-
</PackageReference>
23-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.5.0" />
24-
<PackageReference Include="System.Text.Json" Version="7.0.2" />
20+
<PackageReference Include="System.Text.Json" Version="7.0.2" />
21+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.5.0" PrivateAssets="all" />
22+
<PackageReference Update="NETStandard.Library" PrivateAssets="all" />
2523
</ItemGroup>
2624

2725
<ItemGroup>
2826
<None Include="README.md" Pack="true" PackagePath="\" />
2927
</ItemGroup>
3028

29+
<ItemGroup>
30+
<None Update="tools\*.ps1" CopyToOutputDirectory="Always" Pack="true" PackagePath="tools" />
31+
<None Include="$(OutputPath)\$(AssemblyName).dll" Pack="true" PackagePath="analyzers/dotnet/cs" Visible="false" />
32+
</ItemGroup>
33+
3134
</Project>

Log1/tools/install.ps1

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
param($installPath, $toolsPath, $package, $project)
2+
3+
$analyzersPaths = Join-Path (Join-Path (Split-Path -Path $toolsPath -Parent) "analyzers" ) * -Resolve
4+
5+
foreach($analyzersPath in $analyzersPaths)
6+
{
7+
# Install the language agnostic analyzers.
8+
if (Test-Path $analyzersPath)
9+
{
10+
foreach ($analyzerFilePath in Get-ChildItem $analyzersPath -Filter *.dll)
11+
{
12+
if($project.Object.AnalyzerReferences)
13+
{
14+
$project.Object.AnalyzerReferences.Add($analyzerFilePath.FullName)
15+
}
16+
}
17+
}
18+
}
19+
20+
$project.Type # gives the language name like (C# or VB.NET)
21+
$languageFolder = ""
22+
if($project.Type -eq "C#")
23+
{
24+
$languageFolder = "cs"
25+
}
26+
if($project.Type -eq "VB.NET")
27+
{
28+
$languageFolder = "vb"
29+
}
30+
if($languageFolder -eq "")
31+
{
32+
return
33+
}
34+
35+
foreach($analyzersPath in $analyzersPaths)
36+
{
37+
# Install language specific analyzers.
38+
$languageAnalyzersPath = join-path $analyzersPath $languageFolder
39+
if (Test-Path $languageAnalyzersPath)
40+
{
41+
foreach ($analyzerFilePath in Get-ChildItem $languageAnalyzersPath -Filter *.dll)
42+
{
43+
if($project.Object.AnalyzerReferences)
44+
{
45+
$project.Object.AnalyzerReferences.Add($analyzerFilePath.FullName)
46+
}
47+
}
48+
}
49+
}

Log1/tools/uninstall.ps1

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
param($installPath, $toolsPath, $package, $project)
2+
3+
$analyzersPaths = Join-Path (Join-Path (Split-Path -Path $toolsPath -Parent) "analyzers" ) * -Resolve
4+
5+
foreach($analyzersPath in $analyzersPaths)
6+
{
7+
# Uninstall the language agnostic analyzers.
8+
if (Test-Path $analyzersPath)
9+
{
10+
foreach ($analyzerFilePath in Get-ChildItem $analyzersPath -Filter *.dll)
11+
{
12+
if($project.Object.AnalyzerReferences)
13+
{
14+
$project.Object.AnalyzerReferences.Remove($analyzerFilePath.FullName)
15+
}
16+
}
17+
}
18+
}
19+
20+
$project.Type # gives the language name like (C# or VB.NET)
21+
$languageFolder = ""
22+
if($project.Type -eq "C#")
23+
{
24+
$languageFolder = "cs"
25+
}
26+
if($project.Type -eq "VB.NET")
27+
{
28+
$languageFolder = "vb"
29+
}
30+
if($languageFolder -eq "")
31+
{
32+
return
33+
}
34+
35+
foreach($analyzersPath in $analyzersPaths)
36+
{
37+
# Uninstall language specific analyzers.
38+
$languageAnalyzersPath = join-path $analyzersPath $languageFolder
39+
if (Test-Path $languageAnalyzersPath)
40+
{
41+
foreach ($analyzerFilePath in Get-ChildItem $languageAnalyzersPath -Filter *.dll)
42+
{
43+
if($project.Object.AnalyzerReferences)
44+
{
45+
try
46+
{
47+
$project.Object.AnalyzerReferences.Remove($analyzerFilePath.FullName)
48+
}
49+
catch
50+
{
51+
52+
}
53+
}
54+
}
55+
}
56+
}

0 commit comments

Comments
 (0)