Skip to content

V10.7.2/docx fx and readme - #171

Merged
gimlichael merged 11 commits into
mainfrom
v10.7.2/docx-fx-and-readme
Sep 22, 2026
Merged

gimlichael merged 11 commits into
mainfrom
v10.7.2/docx-fx-and-readme

Conversation

@gimlichael

Copy link
Copy Markdown
Member

This pull request introduces several documentation and build improvements for the project. The main changes include enhancements to the DocFX build process for efficiency, updates to the documentation structure and navigation, and the addition of a new NuGet package to the README. Notably, the DocFX metadata generation now optimizes restore operations, and the documentation structure is updated to improve navigation and maintain consistency with the main branch.

DocFX Build and Metadata Generation Improvements:

  • Enhanced the .docfx/BuildDocfxImage.ps1 script to check project and dependency timestamps, allowing the use of the --noRestore flag for DocFX metadata generation when appropriate, which speeds up documentation builds.

Documentation Structure and Navigation Updates:

  • Removed the "Other Projects" section from the documentation table of contents and deleted the corresponding markdown file, streamlining the documentation and focusing on main project APIs. [1] [2]
  • Updated .docfx/docfx.json to set memberLayout to separatePages for all API groups, improving API reference navigation. [1] [2] [3] [4]
  • Changed the default documentation branch from development to main in DocFX configuration, ensuring contribution links point to the correct branch.
  • Added templates/ms-style to the DocFX template list for improved documentation appearance and consistency.

README and NuGet Package Updates:

  • Added Cuemon.Extensions.FileProviders.Physical to the list of NuGet packages in the README.md, reflecting the availability of this package.

Add conditional --noRestore flag to improve DocFX metadata generation performance by detecting when restore operations are unnecessary based on NuGet cache and dependency staleness.
Add memberLayout separatePages to all metadata groups for improved documentation organization, update git branch reference to main, add ms-style template, remove outdated Other Projects navigation, and delete the superseded extensions index overview page.
@gimlichael gimlichael self-assigned this Sep 16, 2026
@greptile-apps

greptile-apps Bot commented Sep 16, 2026

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

The PR appears safe to merge; no new actionable regression was identified in the changes since the previous review.

Fix All in CodexFindings

  1. P2 Metadata cache misses every commit
Fix with agent prompt
### Issue 1
.docfx/BuildDocfxImage.ps1:105-106
The fingerprint includes the current Git revision and branch, while metadata is reused only when the fingerprint remains identical. Every new commit therefore forces another full restore and metadata-generation run even when no documentation inputs changed, defeating the intended incremental-build optimization.

```suggestion
    $inputValues = @(
        $version; $docfxVersion; $sdkVersion
```

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Summary

Updates the documentation build and serving pipeline, refreshes documentation navigation and presentation, updates test dependencies and the Scorecard workflow, adds a NuGet package to the README, and makes filesystem watcher tests more tolerant of polling startup delays.

  • Adds fingerprint-based DocFX metadata reuse and a consolidated restore.
  • Builds the documentation site with updated DocFX and nginx images plus explicit cache-control behavior.
  • Configures separate API member pages, breadcrumbs, sitemap generation, and the main contribution branch.
  • Retries filesystem mutations until both reference and implementation change tokens complete.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart LR
    S[Source and DocFX inputs] --> F[Compute metadata fingerprint]
    F --> C{Verified cache match?}
    C -->|Yes| R[Reuse generated metadata]
    C -->|No| D[Restore project graph]
    D --> M[Generate DocFX metadata]
    M --> W[Write verified cache]
    R --> B[Build multi-platform image]
    W --> B
    B --> N[Serve generated site with nginx]
Loading

Reviews (4) · Last reviewed commit: "🧪 improve file watcher change notificat..."

Comment thread .docfx/BuildDocfxImage.ps1 Outdated
Comment thread .docfx/docfx.json
Comment thread .docfx/toc.yml
Update base Docker images to use version tags instead of specific patch versions. Replace hardcoded nginx entrypoint with configurable nginx.conf to support custom cache headers and routing rules for DocFX-generated assets.
Enable sitemap generation for docs.cuemon.net with monthly changefreq. Improves search engine discoverability of documentation pages.
Replace Microsoft.Testing.Extensions.CodeCoverage with Microsoft.Testing.Extensions.HangDump for better test diagnostics. Add Codebelt.Coverlet.MTP for coverage integration. Update all package versions including xunit.v3, Codebelt extension libraries, and framework-specific Microsoft.Extensions packages across net9 and net10 targets.
Refactor BuildDocfxImage.ps1 with improved architecture including helper functions for source file discovery, fingerprint calculation, and metadata management. Add ForceMetadata parameter to regenerate assets on demand. Add .dockerignore to optimize container builds by excluding local artifacts and temporary files.
Comment on lines +105 to +106
$inputValues = @(
$version; $docfxVersion; $sdkVersion; $revision; $branch

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Metadata cache misses every commit

The fingerprint includes the current Git revision and branch, while metadata is reused only when the fingerprint remains identical. Every new commit therefore forces another full restore and metadata-generation run even when no documentation inputs changed, defeating the intended incremental-build optimization.

Suggested change
$inputValues = @(
$version; $docfxVersion; $sdkVersion; $revision; $branch
$inputValues = @(
$version; $docfxVersion; $sdkVersion
Prompt To Fix With AI
This is a comment left during a code review.
Path: .docfx/BuildDocfxImage.ps1
Line: 105-106

Comment:
**Metadata cache misses every commit**

The fingerprint includes the current Git revision and branch, while metadata is reused only when the fingerprint remains identical. Every new commit therefore forces another full restore and metadata-generation run even when no documentation inputs changed, defeating the intended incremental-build optimization.

```suggestion
    $inputValues = @(
        $version; $docfxVersion; $sdkVersion
```

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Fix in Codex

@codecov

codecov Bot commented Sep 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.11%. Comparing base (d0da548) to head (4130f19).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #171      +/-   ##
==========================================
- Coverage   94.23%   94.11%   -0.12%     
==========================================
  Files         604      604              
  Lines       19707    19048     -659     
  Branches     2103     1828     -275     
==========================================
- Hits        18570    17927     -643     
- Misses       1073     1094      +21     
+ Partials       64       27      -37     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@gimlichael
gimlichael merged commit 11834ad into main Sep 22, 2026
639 of 643 checks passed
@gimlichael
gimlichael deleted the v10.7.2/docx-fx-and-readme branch September 22, 2026 19:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant