Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Graph.edges/2 does not work with bidirectional edges between vertices

Aberta
#25 4 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
52/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Estagnada
Stack de tecnologia
elixir
Domínio
backend

Direção de pesquisa

Comece reproduzindo o exemplo em Elixir para Graph.edges/2 com as três arestas mostradas. Inspecione o ponto de entrada Graph.edges/2 e faça com que o resultado inclua ambas as direções, preservando as arestas paralelas; considera-se concluído quando a lista retornada corresponder à saída esperada.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Graph.edges/2 only returns a single direction of edges from one vertex :a to another vertex :b instead of both directions from the vertex :a to the other vertex :b.

iex(1)> g = Graph.new() |> Graph.add_edges([{:a, :b, label: "label1"}, {:a, :b, label: "label2"}, {:b, :a, label: "label3"}]) |> Graph.edges(:a)
[
  %Graph.Edge{label: "label1", v1: :a, v2: :b, weight: 1},
  %Graph.Edge{label: "label2", v1: :a, v2: :b, weight: 1}
]

Expected:

[
  %Graph.Edge{label: "label1", v1: :a, v2: :b, weight: 1},
  %Graph.Edge{label: "label2", v1: :a, v2: :b, weight: 1},
  %Graph.Edge{label: "label3", v1: :b, v2: :a, weight: 1}
]
Linguagem predominante
Elixir
Estrelas
571
Forks
76
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de bitwalker/libgraph

Todas as issues de bitwalker/libgraph

Issues semelhantes

Mais issues de Elixir

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.