Repository navigation
DOC: Fix Python Sphinx documentation warnings - #1893
Merged
imikejackson merged 1 commit intoOct 29, 2026
Merged
imikejackson merged 1 commit into
imikejackson merged 1 commit into
Conversation
jmarquisbq
approved these changes
Oct 28, 2026
jmarquisbq
left a comment
Contributor
There was a problem hiding this comment.
Reviewed simplnx PR #1893 at commit e7c64781ff145a9e7511baa2e2f8e057fd2f6473. Coverage includes all nine changed files, the generator callers, and documentation build wiring. No blocking findings were found.
Verification completed:
- The extracted converter functions were compiled with MSVC in a Debug build. Docutils parsed all 311 repository summaries without warnings. Comparison with the base revision and CommonMark found no new text regressions.
- Focused assertions checked inline literals, links, plural suffixes, and parameter escaping against the parsed output.
- Native Windows CTest probes used the configured batch template with Sphinx 8.2.3. Success, warning, directive-error, help, missing-executable, and path-with-spaces cases passed. Failure cases returned the expected status and printed the diagnostic log.
- The repository-root clang-format 19.1.1 check, comment audit, and diff whitespace check passed.
Validation limits:
- clang-tidy 19.1.5 analyzed extracted converter functions and reported naming, recursion, and style/performance diagnostics. This was not a full-file passing analysis. No material resource issue was found for the short documentation inputs.
- Linux and macOS CI passed. Windows CI stopped on a test-data download timeout before documentation generation. The complete Windows documentation target remains unverified.
- Existing converter limitations with adjacent inline spans and repeated link labels remain. Neither occurs in the current summaries.
- Out-of-core storage and numerical V&V checks do not apply to this documentation change.
APPROVE for the reviewed scope, with the validation limits above.
…rrors
* Convert inline Markdown in filter summaries with one left-to-right
scan. Inline code becomes an RST literal. A link is made only when
"](" is adjacent. Bold and italic spans use the shortest match.
Unmatched markers are escaped.
* Add an escaped space when inline markup touches a letter or digit,
for example "**Data Array**\ s".
* Convert list lines one at a time with std::regex_match, so that the
result does not depend on the std::regex anchor behavior of the
platform.
* Escape RST special characters in the parameter help text.
* Remove the html_static_path entry for the missing _static folder.
* Replace the unknown py:enum directive in Developer_API.rst.
* Remove nested bold and italic markup from four filter documents,
because RST cannot nest inline markup.
* Run sphinx-build with "-W --keep-going". Print the log and return
the error status when the build fails, on Unix and on Windows.
Signed-off-by: Michael Jackson <mike.jackson@bluequartz.net>
imikejackson
force-pushed
the
topic/sphinx_doc_warnings
branch
from
October 29, 2026 21:10
e7c6478 to
70d2d62
Compare
imikejackson
enabled auto-merge (squash)
October 29, 2026 21:10
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.
Summary
The Python Sphinx documentation build gives 9 warnings on the Windows CI (and on macOS). This PR removes all of them. It also makes
sphinx-buildtreat warnings as errors, so that new warnings stop the build.The cause of most warnings was
generate_sphinx_docs.cpp. That tool copies the first paragraph of each filter's## Descriptionsection and each parameter's help text into the.rstfiles, but its conversion from Markdown to RST was not correct.Generator changes (
wrapping/python/docs/generate_sphinx_docs.cpp)`x`) becomes an RST literal (``x``). Before, it became RST interpreted text, which shows in italics.](is adjacent. Before, the text`[-0.5, 0.5]`and a later(Z size 1)became one incorrect link inAdaptiveHistogramEqualizationImageFilter.*and`characters are escaped.**Data Array**sbecomes**Data Array**\ s.std::regex_match. Thus the result does not depend on howstd::regexanchors work on each platform.:param:lines. The*User Materialtext inWriteAbaqusCrystalPlasticityFiltercaused 3 warnings.Other changes
conf.py: Removehtml_static_path = ['_static']. That folder does not exist.Developer_API.rst: Replace the unknownpy:enumdirective withpy:class. Sphinx 8.2.3 reports this as an error. This directive was added after the CI run that showed the 9 warnings.RandomizeFeatureIdsFilter.md,ComputeBoundingBoxStatsFilter.md,ComputeKMeansFilter.mdandComputeKMedoidsFilter.md: Remove nested bold and italic markup (***WARNING:** ...*). RST cannot nest inline markup. The words did not change.Makefile.inandmake.bat.in: Runsphinx-buildwith-W --keep-going. When the build fails, the script printssphinx_build_output.logand returns the error status. Thus the CI log shows the warnings.Test Plan
sphinx_docs_generationtarget in theci-macos-arm64build. The result isbuild succeeded.with 0 warnings.py:enumdirective. The target fails, and the log shows the error.Data Arrayplurals and the restored link text show correctly._characters in a link URL make the correcthref.clang-format19.1.1 gives no changes.make.bat.inwere not run on Windows before this PR.Related Issue