Implement an option to show dependencies between modules only#140
Open
MSoegtropIMC wants to merge 2 commits intorocq-community:coq-masterfrom
Open
Implement an option to show dependencies between modules only#140MSoegtropIMC wants to merge 2 commits intorocq-community:coq-masterfrom
MSoegtropIMC wants to merge 2 commits intorocq-community:coq-masterfrom
Conversation
Collaborator
|
I am currently studying this pull request. I think we should add some documentation in the README.md file and some tests. I will do it when I have time, but don't hesitate adding stuff in this regard if you have some handy. |
Author
|
Thanks! For sure I can add documentation and tests. I am also thinking about some extensions, say grouping modules by module path prefix and some options on which part of the module path is shown in the graph, but this can also be done in a second step. |
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.
This PR adds an option to show dependencies between modules - that is all nodes and edges with the same module path are coerced into one. This is useful to analyse large projects.
Note that module dependencies can somehow by cyclic (not sure why but I saw one case in CoRN) which the existing transitive reduction code could not handle, so I replaced it with the transitive reduction function from the Graph library.
I did run make test and see 3 deviations, but I see the same deviations in coq-master with 8.20. One is about renaming Coq to Rocq, the others are likely cause by changes in the standard library.