Skip to content
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

[rstream-dot] refactor to use @thi.ng/dot #20

Open
postspectacular opened this issue May 9, 2018 · 0 comments
Open

[rstream-dot] refactor to use @thi.ng/dot #20

postspectacular opened this issue May 9, 2018 · 0 comments

Comments

@postspectacular
Copy link
Member

postspectacular commented May 9, 2018

The new @thi.ng/dot package is more general and offers better support for various Graphviz options, incl. node record shapes with labeled inputs/outputs. rstream-dot should be rewritten using these features.

  • replace DotOpts with GraphAttribs from @thi.ng/dot
  • update walk process with special support for StreamSync, StreamMerge and possibly PubSub to make use of multi-input/output nodes for cleaner visualizations

The issue with that 2nd point is that StreamSync and StreamMerge use internal/hidden subscriptions, which in the graphviz model will need to be translated as ports of the owner node. This breaks the 1:1 relationship between actual graph topology & the visualization, but will be easier and less confusing to read, however makes the whole graph traversal and edge collection harder...

walk() might have to be rewritten to use breadth-first (rather than the current depth-first) traversal, in order to correctly map StreamSync/Merge nodes in the new/proposed model.

@postspectacular postspectacular added enhancement New feature or request help wanted Extra attention is needed package:rstream-dot package:dot labels May 9, 2018
@postspectacular postspectacular removed the help wanted Extra attention is needed label Apr 11, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
1 participant