Skip to content
This repository was archived by the owner on Apr 9, 2024. It is now read-only.

Commit ba58a10

Browse files
committed
Merge branch 'release/4.0.0'
2 parents 782e5b0 + 9da9b26 commit ba58a10

31 files changed

+798
-59
lines changed

.appveyor.yml

+4-3
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@ install:
1111
- ps: mkdir $env:DOTNET_INSTALL_DIR -Force | Out-Null
1212
- ps: Invoke-WebRequest -Uri "https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.ps1" -OutFile "$($env:DOTNET_INSTALL_DIR)/dotnet-install.ps1"
1313
- ps: '& "$($env:DOTNET_INSTALL_DIR)/dotnet-install.ps1" -Version 5.0.408 -InstallDir $env:DOTNET_INSTALL_DIR'
14-
- ps: '& "$($env:DOTNET_INSTALL_DIR)/dotnet-install.ps1" -Version 6.0.405 -InstallDir $env:DOTNET_INSTALL_DIR'
15-
- ps: '& "$($env:DOTNET_INSTALL_DIR)/dotnet-install.ps1" -Version 7.0.102 -InstallDir $env:DOTNET_INSTALL_DIR'
14+
- ps: '& "$($env:DOTNET_INSTALL_DIR)/dotnet-install.ps1" -Version 6.0.417 -InstallDir $env:DOTNET_INSTALL_DIR'
15+
- ps: '& "$($env:DOTNET_INSTALL_DIR)/dotnet-install.ps1" -Version 7.0.404 -InstallDir $env:DOTNET_INSTALL_DIR'
16+
- ps: '& "$($env:DOTNET_INSTALL_DIR)/dotnet-install.ps1" -Version 8.0.100 -InstallDir $env:DOTNET_INSTALL_DIR'
1617
- ps: $env:Path = "$env:DOTNET_INSTALL_DIR;$env:Path"
1718
- ps: dotnet --info
1819

@@ -44,4 +45,4 @@ branches:
4445
# Build Cache #
4546
#---------------------------------#
4647
cache:
47-
- tools -> recipe.cake
48+
- tools -> recipe.cake

.github/renovate.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
33
"extends": [
4-
"github>cake-contrib/renovate-presets:cake-issues"
4+
"github>cake-contrib/renovate-presets:cake-issues",
5+
"github>cake-contrib/renovate-presets:frosting-addin"
56
]
67
}

README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,11 @@ and for general information about the Cake build automation system see the [Cake
3939

4040
- [Documentation](https://cakeissues.net)
4141

42-
## Chat Room
42+
## Discussion
4343

44-
Come join in the conversation about this addin in our Gitter Chat Room
44+
For questions and to discuss ideas & feature requests, use the [GitHub discussions on the Cake GitHub repository](https://github.com/cake-build/cake/discussions), under the [Extension Q&A](https://github.com/cake-build/cake/discussions/categories/extension-q-a) category.
4545

46-
[![Join the chat at https://gitter.im/cake-contrib/Lobby](https://badges.gitter.im/cake-contrib/Lobby.svg)](https://gitter.im/cake-contrib/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
46+
[![Join in the discussion on the Cake repository](https://img.shields.io/badge/GitHub-Discussions-green?logo=github)](https://github.com/cake-build/cake/discussions)
4747

4848
## Contributing
4949

azure-pipelines.yml

+80
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,11 @@ jobs:
2727
- task: UseDotNet@2
2828
inputs:
2929
version: '7.x'
30+
displayName: 'Install .NET 7'
31+
- task: UseDotNet@2
32+
inputs:
33+
version: '8.x'
34+
displayName: 'Install .NET 8'
3035
- powershell: ./build.ps1
3136
displayName: 'Build'
3237
- publish: $(Build.SourcesDirectory)/BuildArtifacts/Packages/NuGet
@@ -123,6 +128,31 @@ jobs:
123128
- publish: $(Build.SourcesDirectory)/tests/frosting/net7/output
124129
artifact: Integration Tests Windows Server 2022 (Frosting .NET 7)
125130
displayName: 'Publish generated reports as build artifact'
131+
# Integration Tests Windows Server 2022 (Frosting .NET 8)
132+
- job: Test_Windows_Frosting_Net8
133+
displayName: Integration Tests Windows Server 2022 (Frosting .NET 8)
134+
dependsOn: Build
135+
pool:
136+
vmImage: 'windows-2022'
137+
steps:
138+
- task: UseDotNet@2
139+
inputs:
140+
version: '8.x'
141+
displayName: 'Install .NET 8'
142+
- download: current
143+
artifact: NuGet Package
144+
displayName: 'Download build artifact'
145+
- task: CopyFiles@2
146+
inputs:
147+
sourceFolder: $(Pipeline.Workspace)/NuGet Package
148+
targetFolder: $(Build.SourcesDirectory)/BuildArtifacts/Packages/NuGet
149+
displayName: 'Copy build artifact for test run'
150+
- powershell: ./build.ps1 --verbosity=diagnostic
151+
workingDirectory: ./tests/frosting/net8
152+
displayName: 'Run integration tests'
153+
- publish: $(Build.SourcesDirectory)/tests/frosting/net8/output
154+
artifact: Integration Tests Windows Server 2022 (Frosting .NET 8)
155+
displayName: 'Publish generated reports as build artifact'
126156
# Integration Tests macOS 11 (.NET tool)
127157
- job: Test_macOS_DotNetTool
128158
displayName: Integration Tests macOS 11 (.NET tool)
@@ -205,6 +235,31 @@ jobs:
205235
- publish: $(Build.SourcesDirectory)/tests/frosting/net7/output
206236
artifact: Integration Tests macOS 13 (Frosting .NET 7)
207237
displayName: 'Publish generated reports as build artifact'
238+
# Integration Tests macOS 13 (Frosting .NET 8)
239+
- job: Test_macOS_Frosting_Net8
240+
displayName: Integration Tests macOS 13 (Frosting NET 8)
241+
dependsOn: Build
242+
pool:
243+
vmImage: 'macOS-13'
244+
steps:
245+
- task: UseDotNet@2
246+
inputs:
247+
version: '8.x'
248+
displayName: 'Install .NET 8'
249+
- download: current
250+
artifact: NuGet Package
251+
displayName: 'Download build artifact'
252+
- task: CopyFiles@2
253+
inputs:
254+
sourceFolder: $(Pipeline.Workspace)/NuGet Package
255+
targetFolder: $(Build.SourcesDirectory)/BuildArtifacts/Packages/NuGet
256+
displayName: 'Copy build artifact for test run'
257+
- bash: ./build.sh --verbosity=diagnostic
258+
workingDirectory: ./tests/frosting/net8
259+
displayName: 'Run integration tests'
260+
- publish: $(Build.SourcesDirectory)/tests/frosting/net8/output
261+
artifact: Integration Tests macOS 13 (Frosting .NET 8)
262+
displayName: 'Publish generated reports as build artifact'
208263
# Integration Tests Ubuntu 20.04 (.NET tool)
209264
- job: Test_Ubuntu_DotNetTool
210265
displayName: Integration Tests Ubuntu 20.04 (.NET tool)
@@ -287,6 +342,31 @@ jobs:
287342
- publish: $(Build.SourcesDirectory)/tests/frosting/net7/output
288343
artifact: Integration Tests Ubuntu 22.04 (Frosting .NET 7)
289344
displayName: 'Publish generated reports as build artifact'
345+
# Integration Tests Ubuntu 22.04 (Frosting .NET 8)
346+
- job: Test_Ubuntu_Frosting_Net8
347+
displayName: Integration Tests Ubuntu 22.04 (Frosting .NET 8)
348+
dependsOn: Build
349+
pool:
350+
vmImage: 'ubuntu-22.04'
351+
steps:
352+
- task: UseDotNet@2
353+
inputs:
354+
version: '8.x'
355+
displayName: 'Install .NET 8'
356+
- download: current
357+
artifact: NuGet Package
358+
displayName: 'Download build artifact'
359+
- task: CopyFiles@2
360+
inputs:
361+
sourceFolder: $(Pipeline.Workspace)/NuGet Package
362+
targetFolder: $(Build.SourcesDirectory)/BuildArtifacts/Packages/NuGet
363+
displayName: 'Copy build artifact for test run'
364+
- bash: ./build.sh --verbosity=diagnostic
365+
workingDirectory: ./tests/frosting/net8
366+
displayName: 'Run integration tests'
367+
- publish: $(Build.SourcesDirectory)/tests/frosting/net8/output
368+
artifact: Integration Tests Ubuntu 22.04 (Frosting .NET 8)
369+
displayName: 'Publish generated reports as build artifact'
290370
# SARIF file deployment
291371
# - job: Deploy_Sarif_Files
292372
# displayName: Sarif File deployment

global.json

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"sdk": {
3+
"allowPrerelease": true,
4+
"version": "8.0.100",
5+
"rollForward": "latestFeature"
6+
}
7+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<package xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
3+
<metadata xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
4+
<id>Cake.Frosting.Issues.Reporting.Sarif</id>
5+
<title>Cake.Frosting.Issues.Reporting.Sarif</title>
6+
<version>0.0.0</version>
7+
<authors>Pascal Berger</authors>
8+
<owners>pascalberger, cake-contrib</owners>
9+
<summary>Support for creating SARIF compatible files for the Cake.Issues addin for Cake Frosting</summary>
10+
<description>
11+
The SARIF support for the Cake.Issues addin for Cake allows you to create SARIF compatible files.
12+
13+
This addin provides the aliases for creating SARIF compatible files.
14+
It also requires the core Cake.Issues and Cake.Issues.Reporting addins and one or more issue providers.
15+
16+
See the Project Site for an overview of the whole ecosystem of addins for working with issues in Cake scripts.
17+
18+
NOTE:
19+
This is the version of the addin compatible with Cake Frosting.
20+
For addin compatible with Cake Script Runners see Cake.Issues.Reporting.Sarif.
21+
</description>
22+
<license type="expression">MIT</license>
23+
<projectUrl>https://cakeissues.net</projectUrl>
24+
<icon>icon.png</icon>
25+
<requireLicenseAcceptance>false</requireLicenseAcceptance>
26+
<repository type="git" url="https://github.com/cake-contrib/Cake.Issues.Reporting.Sarif.git"/>
27+
<copyright>Copyright © Pascal Berger</copyright>
28+
<tags>cake cake-addin cake-issues cake-reportformat issues reporting sarif</tags>
29+
<releaseNotes>https://github.com/cake-contrib/Cake.Issues.Reporting.Sarif/releases/tag/4.0.0</releaseNotes>
30+
<dependencies>
31+
<group targetFramework="net6.0">
32+
<dependency id="Cake.Core" version="4.0" exclude="Build,Analyzers" />
33+
<dependency id="Cake.Issues" version="[4.0.0-beta0001,5.0)" exclude="Build,Analyzers" />
34+
<dependency id="Cake.Issues.Reporting" version="[4.0.0-beta0001,5.0)" exclude="Build,Analyzers" />
35+
<dependency id="Sarif.Sdk" version="4.4.0" exclude="Build,Analyzers" />
36+
</group>
37+
<group targetFramework="net7.0">
38+
<dependency id="Cake.Core" version="4.0" exclude="Build,Analyzers" />
39+
<dependency id="Cake.Issues" version="[4.0.0-beta0001,5.0)" exclude="Build,Analyzers" />
40+
<dependency id="Cake.Issues.Reporting" version="[4.0.0-beta0001,5.0)" exclude="Build,Analyzers" />
41+
<dependency id="Sarif.Sdk" version="4.4.0" exclude="Build,Analyzers" />
42+
</group>
43+
<group targetFramework="net8.0">
44+
<dependency id="Cake.Core" version="4.0" exclude="Build,Analyzers" />
45+
<dependency id="Cake.Issues" version="[4.0.0-beta0001,5.0)" exclude="Build,Analyzers" />
46+
<dependency id="Cake.Issues.Reporting" version="[4.0.0-beta0001,5.0)" exclude="Build,Analyzers" />
47+
<dependency id="Sarif.Sdk" version="4.4.0" exclude="Build,Analyzers" />
48+
</group>
49+
</dependencies>
50+
</metadata>
51+
<files>
52+
<file src="icon.png" target="" />
53+
<file src="..\..\src\Cake.Issues.Reporting.Sarif\bin\Release\net6.0/Cake.Issues.Reporting.Sarif.dll" target="lib\net6.0" />
54+
<file src="..\..\src\Cake.Issues.Reporting.Sarif\bin\Release\net6.0/Cake.Issues.Reporting.Sarif.pdb" target="lib\net6.0" />
55+
<file src="..\..\src\Cake.Issues.Reporting.Sarif\bin\Release\net6.0/Cake.Issues.Reporting.Sarif.xml" target="lib\net6.0" />
56+
<file src="..\..\src\Cake.Issues.Reporting.Sarif\bin\Release\net7.0/Cake.Issues.Reporting.Sarif.dll" target="lib\net7.0" />
57+
<file src="..\..\src\Cake.Issues.Reporting.Sarif\bin\Release\net7.0/Cake.Issues.Reporting.Sarif.pdb" target="lib\net7.0" />
58+
<file src="..\..\src\Cake.Issues.Reporting.Sarif\bin\Release\net7.0/Cake.Issues.Reporting.Sarif.xml" target="lib\net7.0" />
59+
<file src="..\..\src\Cake.Issues.Reporting.Sarif\bin\Release\net8.0/Cake.Issues.Reporting.Sarif.dll" target="lib\net8.0" />
60+
<file src="..\..\src\Cake.Issues.Reporting.Sarif\bin\Release\net8.0/Cake.Issues.Reporting.Sarif.pdb" target="lib\net8.0" />
61+
<file src="..\..\src\Cake.Issues.Reporting.Sarif\bin\Release\net8.0/Cake.Issues.Reporting.Sarif.xml" target="lib\net8.0" />
62+
</files>
63+
</package>

nuspec/nuget/Cake.Issues.Reporting.Sarif.nuspec

+9-1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@ This addin provides the aliases for creating SARIF compatible files.
1414
It also requires the core Cake.Issues and Cake.Issues.Reporting addins and one or more issue providers.
1515

1616
See the Project Site for an overview of the whole ecosystem of addins for working with issues in Cake scripts.
17+
18+
NOTE:
19+
This is the version of the addin compatible with Cake Script Runners.
20+
For addin compatible with Cake Frosting see Cake.Frosting.Issues.Reporting.Sarif.
1721
</description>
1822
<license type="expression">MIT</license>
1923
<projectUrl>https://cakeissues.net</projectUrl>
@@ -22,7 +26,7 @@ See the Project Site for an overview of the whole ecosystem of addins for workin
2226
<repository type="git" url="https://github.com/cake-contrib/Cake.Issues.Reporting.Sarif.git"/>
2327
<copyright>Copyright © Pascal Berger</copyright>
2428
<tags>cake cake-addin cake-issues cake-reportformat issues reporting sarif</tags>
25-
<releaseNotes>https://github.com/cake-contrib/Cake.Issues.Reporting.Sarif/releases/tag/3.0.1</releaseNotes>
29+
<releaseNotes>https://github.com/cake-contrib/Cake.Issues.Reporting.Sarif/releases/tag/4.0.0</releaseNotes>
2630
</metadata>
2731
<files>
2832
<file src="..\..\..\..\nuspec\nuget\icon.png" target="" />
@@ -34,5 +38,9 @@ See the Project Site for an overview of the whole ecosystem of addins for workin
3438
<file src="net7.0/Cake.Issues.Reporting.Sarif.pdb" target="lib\net7.0" />
3539
<file src="net7.0/Cake.Issues.Reporting.Sarif.xml" target="lib\net7.0" />
3640
<file src="net7.0/Sarif.dll" target="lib\net7.0" />
41+
<file src="net8.0/Cake.Issues.Reporting.Sarif.dll" target="lib\net8.0" />
42+
<file src="net8.0/Cake.Issues.Reporting.Sarif.pdb" target="lib\net8.0" />
43+
<file src="net8.0/Cake.Issues.Reporting.Sarif.xml" target="lib\net8.0" />
44+
<file src="net8.0/Sarif.dll" target="lib\net8.0" />
3745
</files>
3846
</package>

recipe.cake

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#load nuget:?package=Cake.Recipe&version=3.0.1
1+
#load nuget:?package=Cake.Recipe&version=3.1.1
22

33
//*************************************************************************************************
44
// Settings

src/Cake.Issues.Reporting.Sarif.Tests/Cake.Issues.Reporting.Sarif.Tests.csproj

+6-6
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,19 @@
2222
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
2323
</ItemGroup>
2424
<ItemGroup>
25-
<PackageReference Include="Cake.Issues" Version="3.0.0" />
26-
<PackageReference Include="Cake.Issues.Testing" Version="3.0.0" />
27-
<PackageReference Include="Cake.Testing" Version="3.0.0" />
25+
<PackageReference Include="Cake.Issues" Version="4.0.0" />
26+
<PackageReference Include="Cake.Issues.Testing" Version="4.0.0" />
27+
<PackageReference Include="Cake.Testing" Version="4.0.0" />
2828
<PackageReference Include="Shouldly" Version="4.2.1" />
2929
<PackageReference Include="StyleCop.Analyzers">
3030
<Version>1.1.118</Version>
3131
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
3232
<PrivateAssets>all</PrivateAssets>
3333
</PackageReference>
34-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.7.0" />
35-
<PackageReference Include="xunit" Version="2.5.0" />
34+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
35+
<PackageReference Include="xunit" Version="2.6.3" />
3636
<PackageReference Include="xunit.runner.visualstudio">
37-
<Version>2.5.0</Version>
37+
<Version>2.5.5</Version>
3838
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
3939
<PrivateAssets>all</PrivateAssets>
4040
</PackageReference>

src/Cake.Issues.Reporting.Sarif/Cake.Issues.Reporting.Sarif.csproj

+6-6
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<Project Sdk="Microsoft.NET.Sdk">
33
<PropertyGroup>
44
<OutputType>Library</OutputType>
5-
<TargetFrameworks>net6.0;net7.0</TargetFrameworks>
5+
<TargetFrameworks>net6.0;net7.0;net8.0</TargetFrameworks>
66
<Description>Support for creating SARIF compatible files for the Cake.Issues addin for Cake Build Automation System</Description>
77
<Authors>Pascal Berger</Authors>
88
<Product>Cake.Issues</Product>
@@ -28,14 +28,14 @@
2828
</PropertyGroup>
2929

3030
<ItemGroup>
31-
<PackageReference Include="Cake.Core" Version="3.0.0" />
32-
<PackageReference Include="Cake.Issues" Version="3.0.0" />
33-
<PackageReference Include="Cake.Issues.Reporting" Version="3.0.0" />
34-
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="7.0.3">
31+
<PackageReference Include="Cake.Core" Version="4.0.0" />
32+
<PackageReference Include="Cake.Issues" Version="4.0.0" />
33+
<PackageReference Include="Cake.Issues.Reporting" Version="4.0.0" />
34+
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="8.0.0">
3535
<PrivateAssets>all</PrivateAssets>
3636
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
3737
</PackageReference>
38-
<PackageReference Include="Sarif.Sdk" Version="4.2.2" />
38+
<PackageReference Include="Sarif.Sdk" Version="4.4.0" />
3939
<PackageReference Include="StyleCop.Analyzers">
4040
<Version>1.1.118</Version>
4141
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>

src/Cake.Issues.Reporting.Sarif/IIssueExtensions.cs

+12-24
Original file line numberDiff line numberDiff line change
@@ -23,17 +23,12 @@ public static ResultKind Kind(this IIssue issue)
2323
return ResultKind.None;
2424
}
2525

26-
switch (issue.Priority)
26+
return issue.Priority switch
2727
{
28-
case (int)IssuePriority.Suggestion:
29-
case (int)IssuePriority.Hint:
30-
return ResultKind.Informational;
31-
case (int)IssuePriority.Warning:
32-
case (int)IssuePriority.Error:
33-
return ResultKind.Fail;
34-
default:
35-
return ResultKind.NotApplicable;
36-
}
28+
(int)IssuePriority.Suggestion or (int)IssuePriority.Hint => ResultKind.Informational,
29+
(int)IssuePriority.Warning or (int)IssuePriority.Error => ResultKind.Fail,
30+
_ => ResultKind.NotApplicable,
31+
};
3732
}
3833

3934
/// <summary>
@@ -50,30 +45,23 @@ public static FailureLevel Level(this IIssue issue)
5045
return FailureLevel.None;
5146
}
5247

53-
switch (issue.Priority)
48+
return issue.Priority switch
5449
{
55-
case (int)IssuePriority.Suggestion:
56-
case (int)IssuePriority.Hint:
57-
return FailureLevel.Note;
58-
case (int)IssuePriority.Warning:
59-
return FailureLevel.Warning;
60-
case (int)IssuePriority.Error:
61-
return FailureLevel.Error;
62-
default:
63-
return FailureLevel.None;
64-
}
50+
(int)IssuePriority.Suggestion or (int)IssuePriority.Hint => FailureLevel.Note,
51+
(int)IssuePriority.Warning => FailureLevel.Warning,
52+
(int)IssuePriority.Error => FailureLevel.Error,
53+
_ => FailureLevel.None,
54+
};
6555
}
6656

6757
/// <summary>
6858
/// Returns the location of the issue.
6959
/// </summary>
7060
/// <param name="issue">Issue for which the location should be returned.</param>
71-
/// <param name="repositoryRoot">Root path to the directory.</param>
7261
/// <returns>Location of the issue.</returns>
73-
public static Location Location(this IIssue issue, DirectoryPath repositoryRoot)
62+
public static Location Location(this IIssue issue)
7463
{
7564
issue.NotNull(nameof(issue));
76-
issue.NotNull(nameof(repositoryRoot));
7765

7866
if (issue.AffectedFileRelativePath == null && !issue.Line.HasValue)
7967
{

src/Cake.Issues.Reporting.Sarif/SarifIssueReportFormatAliases.cs

+3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66

77
/// <summary>
88
/// Contains functionality to generate SARIF compatible files.
9+
///
10+
/// NOTE: Use Cake.Issues.Reporting.Sarif addin to use these aliases with Cake Script Runners and
11+
/// Cake.Frosting.Issues.Reporting.Sarif to use these aliases with Cake Frosting.
912
/// </summary>
1013
[CakeAliasCategory(IssuesAliasConstants.MainCakeAliasCategory)]
1114
public static class SarifIssueReportFormatAliases

0 commit comments

Comments
 (0)