Unfortunately, our graph.bfs_edges behaves differently to networkx's bfs_edges. In fact, it behaves exactly like networkx's edge_bfs. To avoid future confusion (just happened to me), I propose renaming our bfs_edges to edge_bfs to be consistent with networkx.
networkx
has similar methodsbfs_edges
andedge_bfs
for their graph classes. There is a slight and documented difference between the two: https://networkx.org/documentation/stable/reference/algorithms/generated/networkx.algorithms.traversal.edgebfs.edge_bfs.html#networkx.algorithms.traversal.edgebfs.edge_bfsUnfortunately, our
graph.bfs_edges
behaves differently tonetworkx
'sbfs_edges
. In fact, it behaves exactly likenetworkx
'sedge_bfs
. To avoid future confusion (just happened to me), I propose renaming ourbfs_edges
toedge_bfs
to be consistent withnetworkx
.