Comment 10 for bug 1834379

Revision history for this message
Kyle Fazzari (kyrofa) wrote :

Just finished taking this for a spin, both on armhf (to ensure it now works) and amd64 (to smoke test for no regressions).

Here is an up-to-date amd64 using 1.4~rc1-1build2:

$ cat << EOF >> test.py
> #!/usr/bin/env python3
>
> import pygraphviz
>
> graph = pygraphviz.AGraph()
> graph.add_node('foo')
> graph.add_node('bar')
> graph.add_edge('foo', 'bar')
> print('success!')
> EOF
$ chmod a+x test.py
$ ./test.py
success!

After installing 1.4~rc1-1build2.1 the results are unchanged-- it continues working:

$ sudo apt install python3-pygraphviz/bionic-proposed
<snip>
Setting up python3-pygraphviz (1.4~rc1-1build2.1) ...
$ ./test.py
success!

Now, here is an up-to-date armhf using 1.4~rc1-1build2:

$ cat << EOF >> test.py
> #!/usr/bin/env python3
>
> import pygraphviz
>
> graph = pygraphviz.AGraph()
> graph.add_node('foo')
> graph.add_node('bar')
> graph.add_edge('foo', 'bar')
> print('success!')
> EOF
$ chmod a+x test.py
$ ./test.py
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/pygraphviz/agraph.py", line 1561, in __new__
    nh = gv.agnode(graph.handle, n.encode(graph.encoding), _Action.find)
KeyError: 'agnode: no key'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "./test.py", line 8, in <module>
    graph.add_edge('foo', 'bar')
  File "/usr/lib/python3/dist-packages/pygraphviz/agraph.py", line 478, in add_edge
    e = Edge(self, eh=eh)
  File "/usr/lib/python3/dist-packages/pygraphviz/agraph.py", line 1625, in __new__
    s = Node(graph, nh=source)
  File "/usr/lib/python3/dist-packages/pygraphviz/agraph.py", line 1563, in __new__
    raise KeyError("Node %s not in graph." % n)
KeyError: 'Node None not in graph.'

Broken, as mentioned in the bug report. Now with 1.4~rc1-1build2.1:

$ sudo apt install python3-pygraphviz/bionic-proposed
<snip>
Setting up python3-pygraphviz (1.4~rc1-1build2.1) ...
$ ./test.py
success!

Fixed! Marking verification done.