ci: fix docs workflow and remove duplicate net471 tests - #731
Conversation
|
Note Other AI code review bot(s) detectedCodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review. Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings. WalkthroughGitHub Actions workflows updated to streamline CI operations. The docs workflow conditionally downloads build artifacts with fallback, while the SonarCloud workflow removes net471 testing in favor of net10.0 exclusively. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
This PR optimizes CI workflows and adds comprehensive documentation structure to support DocFX-based documentation site generation.
Changes:
- Removed duplicate net471 test job (12 shards) from CI workflow to reduce runner usage
- Fixed docs workflow to handle both workflow_run and workflow_dispatch triggers with conditional artifact downloads
- Added complete documentation structure with tutorials for Regression and Time Series, plus navigation files (toc.yml)
- Updated links throughout documentation to use relative paths compatible with DocFX
- Migrated GitHub Pages deployment to official GitHub Actions (configure-pages/upload-pages-artifact/deploy-pages)
Reviewed changes
Copilot reviewed 16 out of 16 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/sonarcloud.yml | Removed net471 test shards (lines 475-577), saving ~12 test jobs per run |
| .github/workflows/docs.yml | Added conditional artifact download, switched to official GitHub Pages deployment actions, updated concurrency settings |
| toc.yml | New root table of contents for DocFX navigation structure |
| docs/tutorials/toc.yml | Added Regression and Time Series to tutorial navigation |
| docs/tutorials/time-series/index.md | New tutorial covering 30+ time series models with examples |
| docs/tutorials/regression/index.md | New tutorial covering 41+ regression algorithms with examples |
| docs/tutorials/index.md | Removed Jekyll frontmatter, standardized relative links for DocFX |
| docs/reference/toc.yml | New reference documentation navigation structure |
| docs/reference/index.md | Removed Jekyll frontmatter for DocFX compatibility |
| docs/index.md | Removed Jekyll frontmatter, updated links to relative paths |
| docs/getting-started/index.md | Removed Jekyll frontmatter, updated .NET version requirement |
| docs/examples/toc.yml | New examples navigation structure |
| docs/community/toc.yml | New community section navigation structure |
| docs/community/index.md | Removed Jekyll frontmatter, updated links to relative paths |
| api/index.md | New comprehensive API reference landing page with namespace documentation |
| README.md | Updated badges, comparison table, links to documentation site, .NET version requirements |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/tutorials/index.md (1)
9-28: Align tutorial list with the updated TOC.Classification is still listed here, but PR notes say it was removed from the tutorials TOC. Please keep the categories/learning path in sync with the TOC (either re-add Classification to the TOC or remove it here).
🤖 Fix all issues with AI agents
In @.github/workflows/docs.yml:
- Around line 37-42: Update the GitHub Actions step named "Setup .NET 10.0" to
use actions/setup-dotnet@v5 (or the specific SHA
baa11fbfe1d6520db94683bd5c7a3818018e4309) instead of actions/setup-dotnet@v4;
modify the uses value in that step so the workflow aligns with sonarcloud.yml
and uses the v5 release of the setup-dotnet action for .NET 10.0.x.
In `@README.md`:
- Line 1147: Update the README link text "Full API documentation is available at
[ooples.github.io/AiDotNet](https://ooples.github.io/AiDotNet/)" so the URL
points directly to the API reference under /api/ (use
https://ooples.github.io/AiDotNet/api/); keep the visible link text the same but
replace the href to the /api/ path to ensure users land on the API docs
directly.
🧹 Nitpick comments (1)
api/index.md (1)
29-36: Add explicit usings so the Quick Start compiles.The snippet uses
NeuralNetwork<double>andAdamOptimizer<double>, which are inAiDotNet.NeuralNetworksandAiDotNet.Optimizersrespectively. These namespaces are not included in the project's global usings, so explicitusingstatements are required.♻️ Proposed fix
using AiDotNet; +using AiDotNet.NeuralNetworks; +using AiDotNet.Optimizers;
0aa8974 to
c4ef98b
Compare
- Upgrade docs workflow from .NET 8.0 to .NET 10.0 - Add restore and build steps before DocFX metadata extraction - Update docfx.json to use net10.0 target framework - Add noRestore: true since we build separately - Focus API generation on main packages (AiDotNet, AiDotNet.Tensors) - Add toc.yml files for proper DocFX navigation Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Create root toc.yml for DocFX navigation - Create api/index.md for API reference landing page - Create toc.yml files for reference, community, and examples sections - Remove Jekyll-specific syntax from all docs markdown files - Fix broken internal links in docs to use relative paths - Update .NET version references from 8.0 to 10.0 - Remove workflow step that overwrote DocFX landing page with static HTML - DocFX now properly generates full documentation site with navigation The documentation site now includes: - Home page with feature comparison (TorchSharp, TensorFlow.NET, ML.NET, Accord.NET) - Getting Started guide - Tutorials section - Reference documentation - API Reference (auto-generated) - Community section - Interactive Playground Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Franklin Moormann <cheatcountry@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Franklin Moormann <cheatcountry@gmail.com>
Documentation workflow: - Add condition to only download artifacts when triggered by workflow_run - Add continue-on-error to artifact download to prevent hard failures - When triggered via workflow_dispatch, fallback build will be used Build & SonarCloud workflow: - Remove test-net471-sharded job (12 test shards) - Build verification for net471 is done in build-windows job - Only net10.0 tests run (they produce coverage for SonarCloud) - This cuts test jobs from ~24 to ~12, freeing up runners significantly Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
c4ef98b to
5cb6587
Compare
Summary
Documentation Workflow Fixes
workflow_runcontinue-on-errorto artifact download to prevent hard failuresworkflow_dispatch, fallback build will be used insteadBuild & SonarCloud Workflow Optimization
test-net471-shardedjob (12 test shards)build-windowsjobWhy These Changes
workflow_dispatchbecause artifact download couldn't find the workflowTest Plan
Generated with Claude Code