[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: Working on xgsch2pcb-0.1.3 for Gentoo



On Wed, 2009-10-28 at 00:25 +0100, Stefan Salewski wrote:

> unknown action `PF0")'
> unknown action `PF1")'
> unknown action `PF2")'
> unknown action `PF3")'
> unknown action `PF4")'
[...]

PCB is being asked to run the ".cmd" file produced by gnetlist. For some
reason, this is failing. Perhaps you could send me the .cmd file to look
at.

Does it work correctly if you run gnetlist, then execute the .cmd file
in PCB?

> Traceback (most recent call last):
>   File "/usr/lib64/geda-xgsch2pcb/gui.py", line 443, in
> event_editpcb_button_clicked
>     self.update_layout()
>   File "/usr/lib64/geda-xgsch2pcb/gui.py", line 763, in update_layout
>     unfound = self.pcbmanager.update_layout( self.project.pages )
>   File "/usr/lib64/geda-xgsch2pcb/pcbmanager.py", line 306, in
> update_layout
>     if self.pcb_actions_iface.ExecAction("AddRats", ["AllRats"]):
>   File "/usr/lib64/python2.6/site-packages/dbus/proxies.py", line 140,
> in __call__
>     **keywords)
>   File "/usr/lib64/python2.6/site-packages/dbus/connection.py", line
> 622, in call_blocking
>     message, timeout)
> dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NoReply: Did
> not receive a reply. Possible causes include: the remote application did
> not send a reply, the message bus security policy blocked the reply, the
> reply timeout expired, or the network connection was broken.

That looks much more like a bug.. I know xgsch2pcb doesn't react very
gracefully if PCB keeps it waiting on some DBus event.

what happened to PCB at this point? Had it stopped responding due to
some of the other crud it was tripping over in the .cmd file? Was it
still processing it?

Since xgsch2pcb stopped communicating with PCB (and probably hung its
GUI waiting for a reply), the updated board probably won't have been
saved on disk. (That would be one of the steps shortly after having run
the .cmd file)

The fact that PCB responded at all suggests that it is correctly build
with DBus support. I wonder if you have a mis-match between PCB versions
capable of accepting some escaping in their action input, and a gnetlist
version which relies upon it in the produced .cmd files).

There was this commit in gEDA:

commit 7d719ebe1767d2ba802174fb172f0e1a896a857b
Author: Jared Casper <jaredcasper@xxxxxxxxx>
Date:   Sun Jul 19 08:44:29 2009 +0100

    Quote pins names if they contain comma or close parenthesis. [2823703]
    
    A comma or close parenthesis will cause problems with the pcb action
    script, so if one of the arguments to ChangePinName contains one it
    should be quoted.  Any quote characters within the argument are
    escaped.
    
    Right now it only quotes if there is a comma or close parenthesis. We
    could just quote all pin names to future proof it against more special
    characters in the action argument, but this seems less intrusive and
    doesn't affect those without a new pcb that accepts quotes in the
    arguments.
    
    (Minor formatting changes and addition of comments made by Peter B
    prior to committing).


And this one in PCB (not yet released!)

commit 4247f5264ea0f64d2c41c96609b925bdbb4ae1a5
Author: Jared Casper <jaredcasper@xxxxxxxxx>
Date:   Fri Jun 19 23:51:45 2009 -0400

    Allow quoted strings and escaped characters in action arguments.
    
    Quoting works similar to bash quoting:
    
    A backslash (\) is the escape character.  It preserves the literal
    value of the next character that follows.  To get a literal '\' use
    "\\".
    
    Enclosing characters in single quotes preseves the literal value of
    each character within the quotes.  A single quote may not occur
    between single quotes, even when preceded by a blackslash.
    
    Enclosing characters in double quotes preserves the literal value of
    all characters within the quotes, with the exception of '\' which
    maintains its special meaning as an escape character.


I've not tried the before / after combinations of either, but I wonder
if you're hitting an issue which relates to these patches (either
something they fix, or something a miss-matched combination of them
cause). I've not personally had any issues (past or present) with the
action commands.


Best wishes,

Peter C.





_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user