Cake.Frosting.Issues.MsBuild 5.0.0

dotnet add package Cake.Frosting.Issues.MsBuild --version 5.0.0                
NuGet\Install-Package Cake.Frosting.Issues.MsBuild -Version 5.0.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.Frosting.Issues.MsBuild" Version="5.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Cake.Frosting.Issues.MsBuild --version 5.0.0                
#r "nuget: Cake.Frosting.Issues.MsBuild, 5.0.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.Frosting.Issues.MsBuild&version=5.0.0                

MsBuild support for the Cake.Issues addin for Cake Frosting

NOTE: This is the version of the addin compatible with Cake Frosting. For addin compatible with Cake .NET Tool see Cake.Issues.MsBuild.

The MsBuild support for the Cake.Issues addin for Cake allows you to read issues logged as warnings in a MsBuild log.

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.

After adding the addin the log file of a MsBuild build can be parsed:

[TaskName("Build-Solution")]
public sealed class BuildSolutionTask : FrostingTask<BuildContext>
{
    public override void Run(BuildContext context)
    {
        var logPath = @"c:\build\msbuild.binlog";
        var repoRootPath = @"c:\repo";

        // Build solution.
        context.DotNetBuild(
            repoRootPath.CombineWithFilePath("MySolution.sln"),
            new DotNetBuildSettings
            {
                MSBuildSettings =
                    new DotNetMSBuildSettings()
                        // Ensures that binary log version is written in a version compatible with Cake.Issues.MsBuild.
                        .WithLogger(
                            "BinaryLogger," + context.Environment.ApplicationRoot.CombineWithFilePath("StructuredLogger.dll"),
                            "",
                            logPath.FullPath)
            });

        // Read issues.
        var issues =
            context.ReadIssues(
                context.MsBuildIssuesFromFilePath(logPath, context.MsBuildBinaryLogFileFormat),
                repoRootPath);

        context.Information("{0} issues are found.", issues.Count());
    }
}

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 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.  net9.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Cake.Frosting.Issues.MsBuild:

Package Downloads
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.

GitHub repositories (1)

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

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
5.0.0 81 12/2/2024
5.0.0-beta0002 3,823 11/23/2024
5.0.0-beta0001 698 11/18/2024
4.12.0 11,687 11/5/2024
4.11.0 10,306 10/6/2024
4.10.1 21,410 8/20/2024
4.10.0 7,587 7/30/2024
4.9.0 1,134 7/25/2024
4.8.1 2,664 7/19/2024
4.8.0 423 7/19/2024
4.7.2 417 7/18/2024
4.7.1 926 7/17/2024
4.7.0 571 7/16/2024
4.6.0 9,511 6/24/2024
4.5.1 13,026 5/24/2024
4.5.0 731 5/23/2024
4.4.0 3,769 5/18/2024
4.3.1 9,470 4/25/2024
4.3.0 3,169 4/20/2024
4.2.1 1,666 4/16/2024
4.2.0 2,014 4/14/2024
4.1.0 14,762 2/21/2024
4.0.0 32,269 12/23/2023
4.0.0-beta0001 5,276 12/9/2023