[Repo Assist] Split BuildCommand.fs into DocContent.fs, WatchServer.fs, and BuildCommand.fs#1029
Conversation
…mmand.fs BuildCommand.fs was 2289 lines long - too large to be a cohesive whole. Split into three focused files: - DocContent.fs (795 lines): DocContent type - converts markdown/scripts into static site output files - WatchServer.fs (~500 lines): Serve module - Suave WebSocket dev server for hot-reload watch mode - BuildCommand.fs (~1000 lines): CoreBuildOptions, ConvertCommand, BuildCommand, WatchCommand - CLI verb types and entry points Addresses #1022. All 7 fsdocs-tool tests pass. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
/repo-assist resolve the merge conflicts |
- Keep the DocContent/WatchServer split structure from this PR - Apply _menu template fix from merged main commit to DocContent.fs Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Commit pushed:
|
|
🤖 This is an automated response from Repo Assist. I've resolved the merge conflicts. The conflict was in Resolution:
Build verified locally:
|
🤖 This PR was created by Repo Assist, an automated AI assistant.
Addresses #1022.
Summary
BuildCommand.fswas 2289 lines — too large to be a cohesive whole. This PR splits it into three focused files with clear responsibilities:DocContent.fsDocContenttype: discovers, prepares, and processes markdown/scripts/notebooks into static site outputWatchServer.fsServemodule: Suave WebSocket dev server for hot-reload watch mode, MIME type mapBuildCommand.fsCoreBuildOptions,ConvertCommand,BuildCommand,WatchCommand: CLI verb types and entry pointsThe split follows the natural boundaries already in the original file (the
DocContenttype ends cleanly at line 795; theServemodule is bounded by itsmodule Serve =declaration).Changes
DocContent.fs— extracted verbatim; already had namespace + opensWatchServer.fs— new file with minimal Suave/System opens +ServemoduleBuildCommand.fs— trimmed toCoreBuildOptionsand command verb typesfsdocs-tool.fsproj— added the two new files to the compilation order beforeBuildCommand.fsNo logic was changed; this is a pure structural refactor.
Test Status