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

Add a graph library and use it to represent the component call-graph. #638

Merged
merged 1 commit into from
Sep 22, 2023

Conversation

spetrovic77
Copy link
Contributor

This graph library is based on an earlier C++ implementation by ghemawat@.

The binary package now returns a component call-graph, as opposed to returning a set of component edges. This fixes the following bug we ran into multiple times:

  • The program contains only the weaver.Main component.
  • The set of component edges is therefore empty.
  • The deployer iterates over the edges, and ends up ignoring weaver.Main component.

The graph package will be handy in the future, as we plan to perform a Topo-sort traversal of the graph when generating Kubernetes YAML files. Also, the package may be useful for detecting component-graph cycles.

This graph library is based on an earlier C++ implementation by
ghemawat@.

The binary package now returns a component call-graph, as opposed to
returning a set of component edges. This fixes the following bug we
ran into multiple times:
  * The program contains only the `weaver.Main` component.
  * The set of component edges is therefore empty.
  * The deployer iterates over the edges, and ends up ignoring
    `weaver.Main` component.

The graph package will be handy in the future, as we plan to perform a
Topo-sort traversal of the graph when generating Kubernetes YAML files.
Also, the package may be useful for detecting component-graph cycles.
Copy link
Collaborator

@ghemawat ghemawat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well this looks familiar :-)

@spetrovic77 spetrovic77 merged commit acf4cb9 into main Sep 22, 2023
@spetrovic77 spetrovic77 deleted the graph branch September 22, 2023 17:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants