Replace XmlDocMarkdown with FileAssert.#156
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR replaces the xmldocmd dotnet CLI tool with the DemaConsulting.ApiMark.MSBuild NuGet package for API documentation generation. The API docs are now packaged under api/ instead of docs/ in the produced NuGet package. All design, verification, requirements, review streams, version capture configuration, and FileAssert checks are updated to reference ApiMark in place of XmlDocMarkdown.
Changes:
- Replace
xmldocmddotnet tool withDemaConsulting.ApiMark.MSBuildMSBuild integration in the library.csproj, removing customGenerateApiDocs/IncludeApiDocsInPackagetargets in favor of ApiMark MSBuild properties. - Move the package documentation folder from
docs/toapi/, including a newapi/api.mdindex, and update FileAssert assertions, version capture, and CI workflow accordingly. - Delete
xmldocmddesign/verification/reqstream files and add equivalentapimarkdocuments; update OTS overview, introduction, and review configuration to match.
Reviewed changes
Copilot reviewed 24 out of 24 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/DemaConsulting.TestResults/DemaConsulting.TestResults.csproj | Adds DemaConsulting.ApiMark.MSBuild package reference and replaces custom doc-gen/pack targets with ApiMark MSBuild properties. |
| requirements.yaml | Swaps xmldocmd.yaml include for apimark.yaml. |
| README.md | Updates user-facing doc location from docs/ to api/. |
| docs/verification/ots/xmldocmd.md | Removed; replaced by apimark.md. |
| docs/verification/ots/fileassert.md | Updates FileAssert verification narrative to reference ApiMark. |
| docs/verification/ots/apimark.md | New verification doc describing FileAssert checks for ApiMark output. |
| docs/verification/ots.md | Updates OTS verification overview to list ApiMark. |
| docs/verification/introduction.md | Updates OTS item list in verification intro. |
| docs/verification/definition.yaml | Swaps verification input file from xmldocmd.md to apimark.md. |
| docs/reqstream/ots/xmldocmd.yaml | Removed; replaced by apimark.yaml. |
| docs/reqstream/ots/reqstream.yaml | Reformats the ReqStream requirement title onto one line. |
| docs/reqstream/ots/fileassert.yaml | Updates FileAssert justification to reference ApiMark. |
| docs/reqstream/ots/apimark.yaml | New OTS requirement TestResults-OTS-ApiMark with test ApiMark_NuGetPackageContainsDocs. |
| docs/design/ots/xmldocmd.md | Removed; replaced by apimark.md. |
| docs/design/ots/apimark.md | New design doc describing the MSBuild-based ApiMark integration. |
| docs/design/ots.md | Updates OTS integration strategy and table to call out ApiMark as an MSBuild NuGet package. |
| docs/design/introduction.md | Updates OTS item list/tree in design intro. |
| docs/design/definition.yaml | Swaps design input file from xmldocmd.md to apimark.md. |
| .versionmark.yaml | Replaces xmldocmd tool-list capture with apimark-msbuild package-list capture. |
| .reviewmark.yaml | Renames the OTS review stream from OTS-XmlDocMd to OTS-ApiMark with updated paths. |
| .github/workflows/build.yaml | Updates versionmark capture argument list from xmldocmd to apimark-msbuild. |
| .fileassert.yaml | Renames the API-docs test and switches assertions from docs/** to api/** plus a new api/api.md check. |
| .cspell.yaml | Replaces dictionary entry xmldocmd with apimark. |
| .config/dotnet-tools.json | Removes the xmldocmd tool manifest entry. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This was referenced Jun 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request migrates the API documentation generation tool from XmlDocMarkdown (xmldocmd) to ApiMark, updating all related integration, requirements, verification, and documentation references throughout the codebase. The change modernizes the approach for generating and packaging Markdown API documentation, reflecting the new integration pattern and ensuring all references, tests, and documentation are consistent with the new tool.
Key changes include:
Tooling and Build Integration
xmldocmdfrom.config/dotnet-tools.jsonand replaced withapimark-msbuildintegration in.versionmark.yamland the build workflow, reflecting that ApiMark is now used as an MSBuild NuGet package rather than a CLI tool. [1] [2] [3].fileassert.yamlto check for API documentation files under theapi/folder (produced by ApiMark) instead of the previousdocs/folder.Documentation and Requirements
docs/design/ots/apimark.md,docs/verification/ots/apimark.md), and removed old XmlDocMarkdown files. [1] [2] [3] [4] [5] [6] [7]Project and Folder Structure
docs/toapi/in project documentation and README.Miscellaneous
These changes ensure the project uses ApiMark for API documentation, with all related configuration, validation, and documentation updated accordingly.