Add static auto-layout graph visualization - #8
Merged
frlai merged 8 commits intoJul 27, 2026
Conversation
lgulich
force-pushed
the
codex/graph-visualization-autolayout
branch
4 times, most recently
from
June 26, 2026 11:44
926ccfa to
e6917ed
Compare
lgulich
force-pushed
the
codex/graph-visualization-autolayout
branch
from
June 26, 2026 11:56
e6917ed to
276aead
Compare
frlai
reviewed
Jun 26, 2026
frlai
reviewed
Jun 26, 2026
frlai
reviewed
Jun 26, 2026
Collaborator
|
@lgulich instead of installing from pip, can we configure it to install from source for now? this library will grow with leapp for a bit and I think for now it's ok to essentially think of them as part of the same monorepo. This way we can pass the tests too. |
Collaborator
|
I also just learned (from my agent) that the raster generation is a different process than the vector image generation. I think it makes sense to remove the svg in that case. this lessens the burden to maintain 2 rendering pipelines and make sure they are equivalent. |
Contributor
Author
|
Yeah that makes sense, we can remove it
On 16 Jul 2026, at 01:42, Frank Lai NV ***@***.***> wrote:
[https://avatars.githubusercontent.com/u/220254569?s=20&v=4]frlai left a comment (nvidia-isaac/leapp#8)<#8 (comment)>
I also just learned (from my agent) that the raster generation is a different process than the vector image generation. I think it makes sense to remove the svg in that case. this lessens the burden to maintain 2 rendering pipelines and make sure they are equivalent.
—
Reply to this email directly, view it on GitHub<#8?email_source=notifications&email_token=AFLQOBBFI4NX6WCEAQ7I7KD5FAJFJA5CNFSNUABFM5UWIORPF5TWS5BNNB2WEL2JONZXKZKDN5WW2ZLOOQXTIOJYGYZTGNJXHE42M4TFMFZW63VHNVSW45DJN5XKKZLWMVXHJLDGN5XXIZLSL5RWY2LDNM#issuecomment-4986335799>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AFLQOBFUNM62AQBLPPYH6QT5FAJFJAVCNFSNUABGKJSXA33TNF2G64TZHMYTEMRQGI3TKOBRGY5US43TOVSTWNBXGUYDSMRVHAYTJILWAI>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Raster and vector output were two independent rendering pipelines that had to be kept visually equivalent by hand. Per PR review feedback, drop the SVG renderer and keep PNG as the single graph visualization artifact. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
leapp-visualization is developed in lockstep with LEAPP and is not published to any index (publish.yml only attaches dists to a GitHub release), so `pip install -e .` on Python 3.11+ failed to resolve `leapp-visualization==0.5.2` and CI could not install the package at all. Treat the two as one repo for now: CI installs the local package from source before installing LEAPP, which satisfies the pin without a PyPI lookup. Document the same two-step setup for contributors. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
frlai
marked this pull request as ready for review
July 27, 2026 22:30
frlai
approved these changes
Jul 27, 2026
This was referenced Jul 27, 2026
frlai
added a commit
that referenced
this pull request
Jul 28, 2026
* Add static auto-layout graph visualization (#8) * Add static graph visualization auto-layout * Document leapp-visualization package split * Plan leapp-visualization package split * Split graph visualization into leapp-visualization package * Address graph visualization review feedback * Gate visualization on Python 3.11 * Remove SVG rendering from graph visualization Raster and vector output were two independent rendering pipelines that had to be kept visually equivalent by hand. Per PR review feedback, drop the SVG renderer and keep PNG as the single graph visualization artifact. * Install leapp-visualization from source instead of an index * added lincense, fixed formatting. updated some docs --------- Co-authored-by: lgulich <22480644+lgulich@users.noreply.github.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.
Summary
<graph_name>.svgand<graph_name>.pngfromleapp.compile_graph(visualize=True).kindwhen available.leapp-visualizationpip package.leappnow depends onleapp-visualization==0.5.2, resolved locally by uv frompackages/leapp-visualizationduring development.fast-sugiyama,Pillow) intoleapp-visualization.Package layout
packages/leapp-visualization/src/leapp_visualization/: generic visual graph dataclasses, layout, geometry, SVG renderer, PNG renderer, andrender_graph(...).leapp/leapp_graph/visualization_adapter.py: LEAPP-specific adapter from LEAPP nodes/connections/tensor descriptors intoleapp_visualization.VisualGraph.leapp/leapp_graph/graph_gui.py: compatibility wrapper used bycompile_graph(visualize=True).Example artifacts
Generated on this branch by
leapp.compile_graph(visualize=True):GR00T Graph Example
Larger saved LEAPP export rendered with the same static auto-layout path:
Verification
uv run pytest tests/unit_tests/test_graph_visualization_*.py tests/functional_tests/test_annotate.py::TestAnnotateTensor::test_annotate_traced_tensors_diamond_with_feedback tests/test_examples/test_getting_started.py::TestGettingStarted::test_getting_started_execution tests/test_examples/test_feedback_example.py::TestFeedbackExample::test_feedback_example_execution -q-> 38 passed, 4 warningsuv build packages/leapp-visualization && uv build-> built both distributions successfully