Cake.Issues 4.6.0

dotnet add package Cake.Issues --version 4.6.0                
NuGet\Install-Package Cake.Issues -Version 4.6.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Cake.Issues" Version="4.6.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Cake.Issues --version 4.6.0                
#r "nuget: Cake.Issues, 4.6.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=Cake.Issues&version=4.6.0                

Addin for reading code analyzer or linter issues for the Cake build automation system

The issues addin for Cake allows you to read issue from any code analyzer or linter.

Cake.Issues redefines issue management within the Cake build system by offering a comprehensive, universal, and extensible solution. The unique capabilities of the addins empower development teams to enforce coding standards, generate insightful reports, seamlessly incorporate various linting tools, and streamlining the integration with pull requests. With its modular architecture and extensive set of aliases, Cake.Issues provides a future-proof infrastructure for issue management in Cake builds, fostering a more efficient and adaptable development process.

For more information and extensive documentation see the Cake.Issues website. For general information about the Cake build automation system see the Cake website.

How to use

Integrating Cake.Issues into your Cake build is straightforward. With minimal setup, teams can enjoy the benefits of enhanced code quality management seamlessly integrated into their existing build pipeline.

NOTE: Cake.Issues.Recipe for Cake .NET Tool and Cake.Frosting.Issues.Recipe provide a single NuGet package, which can be used inside your projects build to add fully flavored issue management, including parsing of linter outputs, integration with build systems and pull requests and creation of different reports.

Reading issues

The addin provides the ReadIssues alias to read issues. It needs an additional NuGet package to provide the specific issue provider implementation:

Cake .NET Tool Addin Cake Frosting Addin Description
Cake.Issues.MsBuild Cake.Frosting.Issues.MsBuild Issue provider for reading MsBuild errors and warnings.
Cake.Issues.DocFx Cake.Frosting.Issues.DocFx Issue provider for reading DocFx warnings.
Cake.Issues.EsLint Cake.Frosting.Issues.EsLint Issue provider for reading ESLint issues.
Cake.Issues.GitRepository Cake.Frosting.Issues.GitRepository Issue provider for analyzing Git repositories.
Cake.Issues.InspectCode Cake.Frosting.Issues.InspectCode Issue provider for reading JetBrains Inspect Code issues.
Cake.Issues.Markdownlint Cake.Frosting.Issues.Markdownlint Issue provider for reading issues from markdownlint.
Cake.Issues.Sarif Cake.Frosting.Issues.Sarif Issue provider for reading SARIF reports.
Cake.Issues.Terraform Cake.Frosting.Issues.Terraform Issue provider for reading Terraform validation output.

See Issue Providers for a list of available issue providers and detailed documentation.

Creating issues

To create issues directly in the build script the NewIssue alias can be used:

[TaskName("Create-Issue")]
public sealed class CreateIssueTask : FrostingTask<BuildContext>
{
    public override void Run(BuildContext context)
    {
        var issue =
            context
                .NewIssue(
                    "Something went wrong",
                    "MyCakeScript",
                    "My Cake Script")
                .WithMessageInHtmlFormat("Something went <b>wrong</b>")
                .WithMessageInMarkdownFormat("Something went **wrong**")
                .InFile("myfile.txt", 42)
                .WithPriority(IssuePriority.Warning)
                .Create();

        context.Information("Issue created with message: {0}", issues.MessageText);
    }
}

Creating reports

Issue reports can be created using any of the available Report Format addin together with the Cake.Issues.Reporting addin for Cake .NET Tool or Cake.Frosting.Issues.Reporting addin for Cake Frosting.

Cake .NET Tool Addin Cake Frosting Addin Description
Cake.Issues.Reporting.Console Cake.Frosting.Issues.Reporting.Console Support for reporting issues to the console.
Cake.Issues.Reporting.Generic Cake.Frosting.Issues.Reporting.Generic Support for creating reports in any text based format (HTML, Markdown, ...).
Cake.Issues.Reporting.Sarif Cake.Frosting.Issues.Reporting.Sarif Support for creating reports in SARIF format.

Reporting issues to pull requests and build systems

Issues can be written as comments to pull requests or reported to build systems using any of the available Pull Request System addin together with the Cake.Issues.PullRequests addin for Cake .NET Tool or Cake.Frosting.Issues.PullRequests addin for Cake Frosting.

Cake .NET Tool Addin Cake Frosting Addin Description
Cake.Issues.PullRequests.AppVeyor Cake.Frosting.Issues.PullRequests.AppVeyor Integration with AppVeyor builds.
Cake.Issues.PullRequests.AzureDevOps Cake.Frosting.Issues.PullRequests.AzureDevOps Integration with Azure DevOps pull requests.
Cake.Issues.PullRequests.GitHubActions Cake.Frosting.Issues.PullRequests.GitHubActions Integration with GitHub Actions.

Support & Discussion

For questions and to discuss ideas & feature requests, use the GitHub discussions on the Cake GitHub repository, under the Extension Q&A category.

Contributing

Contributions are welcome. See Contribution Guidelines.

License

MIT License - Copyright © Cake Issues contributors

Binary distributions for some addins contain third-party code which is licensed under its own respective license. See LICENSE for details.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (17)

Showing the top 5 NuGet packages that depend on Cake.Issues:

Package Downloads
Cake.Frosting.Issues.Reporting.Generic

The generic report support for the Cake.Issues addin for Cake Frosting allows you to create issue reports in any text format (HTML, Markdown, ...). This addin provides the aliases for any text based report format. It also requires the core Cake.Issues and Cake.Issues.Reporting addins and one or more issue providers. See the Project Site for an overview of the whole ecosystem of addins for working with issues in Cake scripts. NOTE: This is the version of the addin compatible with Cake Frosting. For addin compatible with Cake Script Runners see Cake.Issues.Reporting.Generic.

Cake.Frosting.Issues.Recipe

Cake.Frosting.Issues.Recipe provides a build script which can be used inside your projects Cake Frosting build to add issue management. See the Project Site for documentation and an overview of the whole ecosystem of addins for working with issues in Cake builds. NOTE: This is the version of the recipe compatible with Cake Frosting. For recipe compatible with Cake Script Runners see Cake.Issues.Recipe.

Cake.Frosting.Issues.MsBuild

The MsBuild support for the Cake.Issues addin for Cake allows you to read issues logged as warnings in a MsBuild log. This addin provides the aliases for reading MsBuild warnings and providing them to the Cake.Issues addin. It also requires the core Cake.Issues addin. There are also additional addins for generating reports or posting issues to pull requests. See the Project Site for an overview of the whole ecosystem of addins for working with issues in Cake scripts. NOTE: This is the version of the addin compatible with Cake Frosting. For addin compatible with Cake Script Runners see Cake.Issues.MsBuild.

Cake.Frosting.Issues.Reporting.Sarif

The SARIF support for the Cake.Issues addin for Cake allows you to create SARIF compatible files. This addin provides the aliases for creating SARIF compatible files. It also requires the core Cake.Issues and Cake.Issues.Reporting addins and one or more issue providers. See the Project Site for an overview of the whole ecosystem of addins for working with issues in Cake scripts. NOTE: This is the version of the addin compatible with Cake Frosting. For addin compatible with Cake Script Runners see Cake.Issues.Reporting.Sarif.

Cake.Frosting.Issues.PullRequests

The pull requests issues addin for Cake allows you to write issue from any code analyzer or linter as comments to pull requests. This addin provides the aliases for writing issues to pull requests. It requires the core Cake.Issues addin, addins for reading issues and an addin for the specific pull request system. See the Project Site for an overview of the whole ecosystem of addins for working with issues in Cake scripts. NOTE: This is the version of the addin compatible with Cake Frosting. For addin compatible with Cake Script Runners see Cake.Issues.PullRequests.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Cake.Issues:

Repository Stars
dnnsoftware/Dnn.Platform
DNN (formerly DotNetNuke) is the leading open source web content management platform (CMS) in the Microsoft ecosystem.
Version Downloads Last updated
4.6.0 10,060 6/24/2024
4.5.1 15,873 5/24/2024
4.5.0 878 5/23/2024
4.4.0 4,548 5/18/2024
4.3.1 10,996 4/25/2024
4.3.0 3,616 4/20/2024
4.2.1 2,001 4/16/2024
4.2.0 2,792 4/14/2024
4.1.0 21,741 2/21/2024
4.0.0 37,248 12/23/2023
4.0.0-beta0001 31,366 11/26/2023
3.0.0 46,660 7/13/2023
3.0.0-beta0002 7,664 6/14/2023
3.0.0-beta0001 5,304 1/7/2023
2.0.0 34,099 11/30/2022
2.0.0-beta0003 3,427 9/29/2022
2.0.0-beta0002 2,230 7/28/2022
2.0.0-beta0001 8,974 12/8/2021
1.0.0 80,526 7/27/2021
1.0.0-beta0001 6,445 2/16/2021
0.9.1 49,996 9/19/2020
0.9.0 5,604 8/22/2020
0.9.0-beta0005 922 8/10/2020
0.9.0-beta0004 1,624 8/1/2020
0.9.0-beta0003 382 7/31/2020
0.9.0-beta0002 1,472 7/12/2020
0.9.0-beta0001 412 7/6/2020
0.8.1 6,831 1/20/2020
0.8.0 50,400 10/17/2019
0.8.0-beta0001 857 10/10/2019
0.7.1 145,257 8/16/2019
0.7.0 19,036 5/30/2019
0.7.0-beta0003 457 5/27/2019
0.7.0-beta0002 864 4/20/2019
0.7.0-beta0001 489 4/19/2019
0.6.2 56,160 9/5/2018
0.6.2-beta0002 681 9/5/2018
0.6.2-beta0001 616 9/4/2018
0.6.1 1,310 9/2/2018
0.6.1-beta0001 693 8/26/2018
0.6.0 4,590 8/24/2018
0.6.0-beta0002 763 8/19/2018
0.6.0-beta0001 709 8/18/2018
0.5.0 26,358 8/17/2018
0.5.0-beta0003 684 8/17/2018
0.5.0-beta0002 759 8/6/2018
0.5.0-beta0001 737 8/5/2018
0.4.1 983 8/3/2018
0.4.0 4,071 7/28/2018
0.4.0-beta0002 684 7/25/2018
0.4.0-beta0001 712 7/24/2018
0.3.1 1,908 6/20/2018
0.3.0 8,642 6/4/2018
0.3.0-beta0004 791 6/3/2018
0.3.0-beta0003 762 6/3/2018
0.3.0-beta0002 825 6/1/2018
0.3.0-beta0001 782 5/31/2018
0.2.0 1,501 5/22/2018
0.2.0-beta0004 984 3/10/2018
0.2.0-beta0003 747 3/7/2018
0.2.0-beta0002 1,020 12/25/2017
0.2.0-beta0001 789 10/15/2017
0.1.0 3,036 9/16/2017
0.1.0-beta0004 737 9/13/2017
0.1.0-beta0003 789 9/3/2017
0.1.0-beta0002 754 9/2/2017
0.1.0-beta0001 759 9/1/2017