This site provides a machine-readable index at /llms.txt.

Skip to main content Skip to navigation

BuildReport Pennington.Generation

Aggregated result of a static build run, including diagnostics, broken links, and per-page outcomes.

Properties

BrokenLinks System.Collections.Immutable.ImmutableList<Pennington.Generation.BrokenLink>
Broken links discovered by link verification.
Diagnostics System.Collections.Immutable.ImmutableList<Pennington.Generation.BuildDiagnostic>
Diagnostics recorded during the build.
Duration System.TimeSpan
Total wall-clock duration of the build.
FailedPages System.Collections.Immutable.ImmutableList<Pennington.Routing.ContentRoute>
Routes whose generation failed.
GeneratedPages System.Collections.Immutable.ImmutableList<Pennington.Routing.ContentRoute>
Routes that were successfully written to the output directory.
HasErrors bool
True when the build produced any errors, failed pages, or broken links.
SkippedPages System.Collections.Immutable.ImmutableList<Pennington.Routing.ContentRoute>
Routes that were skipped (typically drafts).
TotalPages int
Total number of pages considered, including generated, skipped, and failed.

Constructors

#
public BuildReport(
    ImmutableList<BuildDiagnostic> diagnostics,
    ImmutableList<BrokenLink> brokenLinks,
    ImmutableList<ContentRoute> generatedPages,
    ImmutableList<ContentRoute> skippedPages,
    ImmutableList<ContentRoute> failedPages,
    TimeSpan duration);

Initializes a completed build report with all captured results.

Parameters

diagnostics ImmutableList<BuildDiagnostic>
brokenLinks ImmutableList<BrokenLink>
generatedPages ImmutableList<ContentRoute>
skippedPages ImmutableList<ContentRoute>
failedPages ImmutableList<ContentRoute>
duration TimeSpan

Methods

ToFormattedString

#
public string ToFormattedString();

Returns the human-readable summary as a single formatted string.

Returns

string

WriteTo

#
public void WriteTo(TextWriter writer);

Writes a human-readable summary of the report to writer.

Parameters

writer TextWriter

Pennington.Generation.BuildReport

namespace Pennington.Generation;

/// Aggregated result of a static build run, including diagnostics, broken links, and per-page outcomes.
public class BuildReport
{
    /// Initializes a completed build report with all captured results.
    
public BuildReport(
    ImmutableList<BuildDiagnostic> diagnostics,
    ImmutableList<BrokenLink> brokenLinks,
    ImmutableList<ContentRoute> generatedPages,
    ImmutableList<ContentRoute> skippedPages,
    ImmutableList<ContentRoute> failedPages,
    TimeSpan duration);
/// Broken links discovered by link verification.
public ImmutableList<BrokenLink> BrokenLinks { get; }
/// Diagnostics recorded during the build.
public ImmutableList<BuildDiagnostic> Diagnostics { get; }
/// Total wall-clock duration of the build.
public TimeSpan Duration { get; }
/// Routes whose generation failed.
public ImmutableList<ContentRoute> FailedPages { get; }
/// Routes that were successfully written to the output directory.
public ImmutableList<ContentRoute> GeneratedPages { get; }
/// True when the build produced any errors, failed pages, or broken links.
public bool HasErrors => Diagnostics.Any(d => d.Severity is DiagnosticSeverity.Error)
                      || BrokenLinks.Count > 0
                      || FailedPages.Count > 0;
/// Routes that were skipped (typically drafts).
public ImmutableList<ContentRoute> SkippedPages { get; }
/// Returns the human-readable summary as a single formatted string.
public string ToFormattedString();
/// Total number of pages considered, including generated, skipped, and failed.
public int TotalPages => GeneratedPages.Count + SkippedPages.Count + FailedPages.Count;
/// Writes a human-readable summary of the report to writer.
public void WriteTo(TextWriter writer);
}