Repository navigation
Fail the docs build on quick index config problems - #2967
Merged
Merged
Conversation
update_quick_index.py printed its warnings, so Sphinx never saw them and the build passed. It now collects them and raises at the end, which stops the build. Removes the seven config entries that produced the "No members parsed" warnings: re-export-only __init__ files, __main__, and arcade.types.numbers. AsFloat, the only thing in numbers.py, is now listed by name with a new "data" option and has a real description. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Closes #2800
Problem
CI builds the docs with
-W, so Sphinx's own warnings fail the build.doc/conf.pyalso runsutil/update_quick_index.pyto generate the API pages, and that script reported problems withprint(), so they never failed anything. These included:A config entry for a module that doesn't exist already failed the build, because
get_module_pathraises.Change
RuntimeErrorat the end listing all of them. That stops the Sphinx build, and running the script on its own exits with an error.arcade.sprite_list,arcade.texture,arcade.texture_atlas,arcade.animandarcade.gui, whose__init__.pyfiles only re-export names from submodules that are already listedarcade.__main__, which has no classes or functionsarcade.types.numbers, which only defines the type aliasAsFloat, and the parser only findsclassanddefAsFloatwasn't documented anywhere. A new"data"config option lists names to document withautodata. The types page uses it forarcade.types.numbers.AsFloat, which now appears on the page and in the quick index.#:comments from there. Through thearcade.typesre-export, it showed Python's built-in "Represent a PEP 604 union type" text.The other type aliases in
arcade.types(Point2,RGBA255,Velocityand so on) aren't documented either. They can be added to"data"later.Testing
-Wpasses with no warnings, and the 7 "No members parsed" lines are gone.arcade.types.numbersback to the config makes the build fail, with the problem listed in the error.AsFloatentry on the types page.🤖 Generated with Claude Code