-
Notifications
You must be signed in to change notification settings - Fork 218
Graphviz static rendering and docs #859
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
lmeyerov
wants to merge
44
commits into
master
Choose a base branch
from
feat/graphviz-docs-rendering
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
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
be41870 to
3c70241
Compare
lmeyerov
added a commit
that referenced
this pull request
Dec 4, 2025
Phase 4 documents how to split PR #859 into: - Base PR: infrastructure + minimal proof-of-work (1 RST, 1 MyST, 1 notebook) - Stacked PR: rich graphviz examples across all docs Includes safe workflow with backup tag before trimming. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This reverts commit 86a449c.
The RTD build.commands option is incompatible with apt_packages, causing graphviz to not be installed despite being listed. This results in 'dot command cannot be run' warnings and placeholder images instead of real Graphviz diagrams. Switching to build.jobs allows apt_packages to work properly: - post_install: copy demos and markdown files - build.html/epub/pdf: format-specific sphinx builds This should make Graphviz diagrams render correctly on RTD. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
The sphinx.configuration key is needed to trigger RTD's Sphinx support which ensures pip install runs before the build jobs. Without it, sphinx-build is not available when build.jobs run. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Now that RTD properly installs graphviz via build.jobs + apt_packages, the placeholder shim should rarely be needed. Add a one-time warning when it does trigger to make it visible that diagrams are missing. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Remove the placeholder shim that silently masked missing graphviz. Now if dot is unavailable, the build will fail loudly instead of producing invisible 1x1 pixel placeholder images. RTD now properly installs graphviz via build.jobs + apt_packages, so the shim is no longer needed. Local builds without graphviz will fail fast with a clear error message from Sphinx. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
The <object> tag used by default for SVG graphviz output doesn't render reliably in all browsers. Switch to svg:img format which embeds as <img> tag for more consistent display. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Sphinx 8.0.2 on RTD doesn't support svg:img format, causing graphviz diagrams to be silently dropped. Revert to plain svg which uses <object> tags - they render correctly, just need the file to exist. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Phase 4 documents how to split PR #859 into: - Base PR: infrastructure + minimal proof-of-work (1 RST, 1 MyST, 1 notebook) - Stacked PR: rich graphviz examples across all docs Includes safe workflow with backup tag before trimming. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Keep infrastructure + 1 example each for RST/MyST/notebook: - RST: gfql/about.rst (1 graphviz directive) - MyST: gfql/spec/index.md (1 graphviz example) - Notebook: graphviz/graphviz.ipynb (plot_static example) Reverted graphviz additions from: - 10min.rst - visualization/10min.rst - ecosystem.rst - gfql/overview.rst - gfql/quick.rst - graphistry.layout.rst These will be added in stacked PR feat/graphviz-docs-usage. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
- Phase 4.A done: base branch trimmed to minimal examples - Stacked branch feat/graphviz-docs-usage preserves full work - Added lesson: backup tags break setuptools_scm, use branches instead - CI/RTD green on trimmed base 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
e0b3eb8 to
7f26afb
Compare
lmeyerov
added a commit
that referenced
this pull request
Dec 5, 2025
Add rich graphviz diagrams to documentation pages: - 10min.rst - intro visualization example - visualization/10min.rst - layout pipeline diagram - ecosystem.rst - ecosystem overview - gfql/overview.rst - GFQL flow diagram - gfql/quick.rst - quick start example - graphistry.layout.rst - layout options Builds on infrastructure from base PR #859. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2 tasks
- Add _auto_display_static() helper with IPython environment detection - Automatically display SVG/PNG output inline in Jupyter notebooks - Still returns bytes for programmatic use (saving to disk) - Update graphviz docs with simplified usage examples - Update graphviz demo notebook with cleaner syntax Users no longer need to manually wrap output with SVG() or Image(): # Before: required explicit display wrapper from IPython.display import SVG svg = g.plot_static(format='svg') SVG(svg) # After: just works g.plot_static() 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
lmeyerov
added a commit
that referenced
this pull request
Dec 5, 2025
Add rich graphviz diagrams to documentation pages: - 10min.rst - intro visualization example - visualization/10min.rst - layout pipeline diagram - ecosystem.rst - ecosystem overview - gfql/overview.rst - GFQL flow diagram - gfql/quick.rst - quick start example - graphistry.layout.rst - layout options Builds on infrastructure from base PR #859. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Creates a minimal notebook that: - Uses nbsphinx execute=always metadata - Only requires local operations (no server registration) - Demonstrates plot_static() SVG rendering, DOT output, and file saving - RTD will execute this notebook fresh each build 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
lmeyerov
added a commit
that referenced
this pull request
Dec 5, 2025
Add rich graphviz diagrams to documentation pages: - 10min.rst - intro visualization example - visualization/10min.rst - layout pipeline diagram - ecosystem.rst - ecosystem overview - gfql/overview.rst - GFQL flow diagram - gfql/quick.rst - quick start example - graphistry.layout.rst - layout options Builds on infrastructure from base PR #859. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Add HAS_PYGRAPHVIZ check so notebook executes cleanly on RTD where pygraphviz is not installed in the Python environment. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
lmeyerov
added a commit
that referenced
this pull request
Dec 5, 2025
Add rich graphviz diagrams to documentation pages: - 10min.rst - intro visualization example - visualization/10min.rst - layout pipeline diagram - ecosystem.rst - ecosystem overview - gfql/overview.rst - GFQL flow diagram - gfql/quick.rst - quick start example - graphistry.layout.rst - layout options Builds on infrastructure from base PR #859. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
- Add graphviz-dev to apt_packages (headers for compilation) - Add pygraphviz extra to pip install This enables plot_static_demo.ipynb to render actual SVG graphs on RTD. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
lmeyerov
added a commit
that referenced
this pull request
Dec 5, 2025
Add rich graphviz diagrams to documentation pages: - 10min.rst - intro visualization example - visualization/10min.rst - layout pipeline diagram - ecosystem.rst - ecosystem overview - gfql/overview.rst - GFQL flow diagram - gfql/quick.rst - quick start example - graphistry.layout.rst - layout options Builds on infrastructure from base PR #859. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
lmeyerov
added a commit
that referenced
this pull request
Dec 7, 2025
Add rich graphviz diagrams to documentation pages: - 10min.rst - intro visualization example - visualization/10min.rst - layout pipeline diagram - ecosystem.rst - ecosystem overview - gfql/overview.rst - GFQL flow diagram - gfql/quick.rst - quick start example - graphistry.layout.rst - layout options Builds on infrastructure from base PR #859. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
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
Testing