Skip to content
Draft
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"version": 1,
"isRoot": true,
"tools": {
"cake.tool": {
"version": "5.0.0",
"commands": [
"dotnet-cake"
]
}
}
}
14 changes: 14 additions & 0 deletions docs/input/assets/scripts/console-examples/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Tool artifacts
tools/
.dotnet/

# Build artifacts
bin/
obj/

# NuGet packages
*.nupkg
packages/

# Cake Build
.cake/
57 changes: 57 additions & 0 deletions docs/input/assets/scripts/console-examples/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Console Report Format Example Scripts

This directory contains scripts used to generate the console output screenshots shown in the Console report format documentation.

## Purpose

These scripts allow reproducing the console output examples to:
- Regenerate screenshots when the addin is updated
- Test different console formatting options
- Validate console output behavior

## Scripts

- `generate-default.cake` - Default console output settings
- `generate-grouped.cake` - Console output grouped by rule
- `generate-summaries.cake` - Console output with provider and priority summaries
- `generate-combined.cake` - Console output with all features enabled
- `sample-issues.json` - Sample issues data used by all scripts

## Usage

To regenerate the console output for screenshots:

1. Ensure the latest Cake.Issues packages are built:
```bash
cd /path/to/Cake.Issues
./build.sh --target=Create-NuGet-Packages
```

2. Run any of the example scripts:
```bash
cd docs/input/assets/scripts/console-examples
dotnet tool restore
dotnet tool run dotnet-cake generate-default.cake --verbosity=minimal
```

Or run all examples at once:
```bash
./run-examples.sh
```

3. Capture the console output for documentation screenshots

## Example Output

To see the individual issue details, run with normal verbosity. To see just the summaries (as shown in the screenshots), use `--verbosity=minimal`.

## Sample Data

The `sample-issues.json` file contains realistic issue data representing:
- MSBuild compiler warnings and suggestions
- DupFinder duplicate code detection issues
- InspectCode style and best practice violations
- markdownlint documentation issues
- Custom script issues

This data produces output similar to what users would see in real projects.
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
#addin "Cake.Issues&prerelease"
#addin "Cake.Issues.Reporting&prerelease"
#addin "Cake.Issues.Reporting.Console&prerelease"

//////////////////////////////////////////////////
// ARGUMENTS
//////////////////////////////////////////////////

var target = Argument("target", "Default");

//////////////////////////////////////////////////
// TARGETS
//////////////////////////////////////////////////

Task("Print-Issues-Combined")
.Does(() =>
{
Information("Running Console Report with All Features Enabled");

var issues = DeserializeIssuesFromJsonFile("sample-issues.json");
Information("Read {0} issues", issues.Count());

CreateIssueReport(
issues,
ConsoleIssueReportFormat(
new ConsoleIssueReportFormatSettings
{
GroupByRule = true,
ShowProviderSummary = true,
ShowPrioritySummary = true
}),
@".",
string.Empty);
});

Task("Default")
.IsDependentOn("Print-Issues-Combined");

//////////////////////////////////////////////////
// EXECUTION
//////////////////////////////////////////////////

RunTarget(target);
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#addin "Cake.Issues&prerelease"
#addin "Cake.Issues.Reporting&prerelease"
#addin "Cake.Issues.Reporting.Console&prerelease"

//////////////////////////////////////////////////
// ARGUMENTS
//////////////////////////////////////////////////

var target = Argument("target", "Default");

//////////////////////////////////////////////////
// TARGETS
//////////////////////////////////////////////////

Task("Print-Issues-Default")
.Does(() =>
{
Information("Running Console Report with Default Settings");

var issues = DeserializeIssuesFromJsonFile("sample-issues.json");
Information("Read {0} issues", issues.Count());

CreateIssueReport(
issues,
ConsoleIssueReportFormat(),
@".",
string.Empty);
});

Task("Default")
.IsDependentOn("Print-Issues-Default");

//////////////////////////////////////////////////
// EXECUTION
//////////////////////////////////////////////////

RunTarget(target);
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#addin "Cake.Issues&prerelease"
#addin "Cake.Issues.Reporting&prerelease"
#addin "Cake.Issues.Reporting.Console&prerelease"

//////////////////////////////////////////////////
// ARGUMENTS
//////////////////////////////////////////////////

var target = Argument("target", "Default");

//////////////////////////////////////////////////
// TARGETS
//////////////////////////////////////////////////

Task("Print-Issues-Grouped")
.Does(() =>
{
Information("Running Console Report with Grouped by Rule");

var issues = DeserializeIssuesFromJsonFile("sample-issues.json");
Information("Read {0} issues", issues.Count());

CreateIssueReport(
issues,
ConsoleIssueReportFormat(
new ConsoleIssueReportFormatSettings
{
GroupByRule = true
}),
@".",
string.Empty);
});

Task("Default")
.IsDependentOn("Print-Issues-Grouped");

//////////////////////////////////////////////////
// EXECUTION
//////////////////////////////////////////////////

RunTarget(target);
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
#addin "Cake.Issues&prerelease"
#addin "Cake.Issues.Reporting&prerelease"
#addin "Cake.Issues.Reporting.Console&prerelease"

//////////////////////////////////////////////////
// ARGUMENTS
//////////////////////////////////////////////////

var target = Argument("target", "Default");

//////////////////////////////////////////////////
// TARGETS
//////////////////////////////////////////////////

Task("Print-Issues-Summaries")
.Does(() =>
{
Information("Running Console Report with Provider and Priority Summaries");

var issues = DeserializeIssuesFromJsonFile("sample-issues.json");
Information("Read {0} issues", issues.Count());

CreateIssueReport(
issues,
ConsoleIssueReportFormat(
new ConsoleIssueReportFormatSettings
{
ShowProviderSummary = true,
ShowPrioritySummary = true
}),
@".",
string.Empty);
});

Task("Default")
.IsDependentOn("Print-Issues-Summaries");

//////////////////////////////////////////////////
// EXECUTION
//////////////////////////////////////////////////

RunTarget(target);
7 changes: 7 additions & 0 deletions docs/input/assets/scripts/console-examples/global.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"sdk": {
"allowPrerelease": true,
"version": "8.0.413",
"rollForward": "latestFeature"
}
}
11 changes: 11 additions & 0 deletions docs/input/assets/scripts/console-examples/nuget.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="Integration" value="../../../../../BuildArtifacts/Packages/NuGet" />
<add key="NuGet.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
<disabledPackageSources>
<clear />
</disabledPackageSources>
</configuration>
17 changes: 17 additions & 0 deletions docs/input/assets/scripts/console-examples/run-examples.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#!/usr/bin/env bash

# Default settings example
echo "=== Running Default Console Report Example ==="
dotnet tool restore && dotnet tool run dotnet-cake generate-default.cake --verbosity=minimal

echo ""
echo "=== Running Grouped by Rule Example ==="
dotnet tool restore && dotnet tool run dotnet-cake generate-grouped.cake --verbosity=minimal

echo ""
echo "=== Running Summaries Example ==="
dotnet tool restore && dotnet tool run dotnet-cake generate-summaries.cake --verbosity=minimal

echo ""
echo "=== Running Combined Features Example ==="
dotnet tool restore && dotnet tool run dotnet-cake generate-combined.cake --verbosity=minimal
Loading
Loading