Plugins create dangling edges
The GitHub plugin no longer adds a Node to the graph for Git commits. Instead, it creates a dangling edge to it. This frees the GitHub plugin from responsibility for setting the timestamp or other metadata for Git nodes. The Git plugin no longer adds a Commit Node to the graph immediately when encountering a commit's parent hash. Instead, it creates an edge to the parent, and then fills in the parent node once it is encountered in the commit store. Test plan: Load a real repository with merged pull requests (e.g. sourcecred/research) into the explorer, and verify that GitHub commit entities are still connected to Git commits, and that Git commits are still connected to their parents.
This commit is contained in:
parent
02a8e02922
commit
e7add05df5
|
@ -34,7 +34,6 @@ class GraphCreator {
|
|||
this.graph.addNode({address: GN.toRaw(node)});
|
||||
for (const parentHash of commit.parentHashes) {
|
||||
const parent: GN.CommitAddress = {type: GN.COMMIT_TYPE, hash: parentHash};
|
||||
this.graph.addNode({address: GN.toRaw(parent)});
|
||||
this.graph.addEdge(GE.createEdge.hasParent(node, parent));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2560,24 +2560,6 @@ Array [
|
|||
},
|
||||
],
|
||||
"nodes": Array [
|
||||
Object {
|
||||
"index": 0,
|
||||
},
|
||||
Object {
|
||||
"index": 1,
|
||||
},
|
||||
Object {
|
||||
"index": 2,
|
||||
},
|
||||
Object {
|
||||
"index": 3,
|
||||
},
|
||||
Object {
|
||||
"index": 4,
|
||||
},
|
||||
Object {
|
||||
"index": 5,
|
||||
},
|
||||
Object {
|
||||
"index": 6,
|
||||
},
|
||||
|
|
|
@ -45,8 +45,6 @@ class GraphCreator {
|
|||
type: GitNode.COMMIT_TYPE,
|
||||
hash: commit.hash(),
|
||||
};
|
||||
const gitCommit = GitNode.toRaw(gitCommitAddress);
|
||||
this.graph.addNode({address: gitCommit});
|
||||
this.graph.addEdge(
|
||||
createEdge.correspondsToCommit(commit.address(), gitCommitAddress)
|
||||
);
|
||||
|
|
Loading…
Reference in New Issue