GNU bug report logs -
#79036
[PATCH] Fix pdb tracking for remote filenames
Previous Next
Full log
Message #38 received at 79036 <at> debbugs.gnu.org (full text, mbox):
Liu Hui <liuhui1610 <at> gmail.com> writes:
Hi,
>> > Because file-name may be not the actual file. file-name is actually
>> > extracted from the pdb output in the python shell, e.g.
>> >
>> > >>> f()
>> > > /ssh:server:/tmp/test.py(3)f()
>> > (Pdb)
>> >
>> > Generally, pdb shows local file names. But if we send the code using
>> > C-c C-c from python buffers (i.e. step 3), python-send-string passes
>> > (buffer-file-name), which may be a remote file name, to python
>> > process. Therefore, pdb may also shows remote file names.
>>
>> This is an error. python-send-string shall send (file-local-name (buffer-file-name)) .
>
> Why is it an error? In python-shell-send-string, (buffer-file-name) is
> finally passed to python's compile function in __PYTHON_EL_eval or
> __PYTHON_EL_eval_file, and is just used for run-time error messages
> according to the docstring.
>
> The filename argument should give the file from which the code was
> read; pass some recognizable value if it wasn’t read from a file
> ('<string>' is commonly used).
>
> I think it is suitable to use a remote filename or even buffer name as
> long as it helps Emacs find the source.
This bug report is about an inconsistenccy in pdb. Sometimes it shows
absolute file names which should be interpreted as remote file
names. Sometimes, the file names are already prefixed with the remote
identification.
If python-shell-send-string does not use remote file names, your patch
isn't needed. The existing code
--8<---------------cut here---------------start------------->8---
(let* ((file-name-prospect (concat (file-remote-p default-directory)
file-name))
--8<---------------cut here---------------end--------------->8---
would be OK.
Best regards, Michael.
This bug report was last modified 2 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.