Debugger does not even start up for any release of v1.5 (EAP)

I have been trying to use all of the most recent EAPs for v1.5 (this latest one and the previous), and in both of them, I cannot run the debugger. Everything worked fine in 1.2.1 and previous, but for 1.5 EAPs there has been a regression. On any project, when I try a Shift+F9 or click from the toolbar, the debugger starts and then stops immediately with the following message in the console:

/home/ceposta/dev/python-sandbox/pinax-env/bin/python /home/ceposta/dev/pycharm-107.130/helpers/pydev/pydevd.py --client 127.0.0.1 --port 49431 --file manage.py runserver --noreload 8000
Traceback (most recent call last):
  File "/home/ceposta/dev/pycharm-107.130/helpers/pydev/pydevd.py", line 2, in <module>
    from pydev.django_debug import DjangoLineBreakpoint
ImportError: No module named django_debug

Process finished with exit code 1

I am running PyCharm 107.130 on Ubuntu 11.04, 64bit.

I can provide more info if requested, otherwise I can file a bug report. Let me know....

Thanks,

Christian

8 comments

To provide a counter point. The debugger *does* work (since I've been using it on the recent EAPs), I think in this case it is something specific to your Django environment. Does django_debug.py exist in your PyCharm EAP directory under helpers/pydev? Do you have a PYTHONPATH set by chance?

0

A counter point? Lol... I didn't make any arguments, I was describing an observation.

In any event, are you debugging on Windows? I am on Linux, so it's possible your counter point may not be a good comparison.

In windows, I've observed the debugger to work properly.

In Ubuntu 11.04, it doesn't (although it does for pycharm 1.2.1 and any previous releases, as I mentioned).

I spent some time today looking at it, although I would have much rather been doing my development, and I observed the following:

In the helpers/pydev directory, the pydevd.py file was updated (between 1.2.1 and 1.5) to reference the django_debug.py file... however, it's referencing django_debug with an import of 'from pydev.django_debug import .....'   the django_debug.py is already in the pydev module, so it does not need to be referenced like that. There are other instances of files in the pydev module that have modules under it that references "pydev.<module_name>" when it doesn't need "pydev" in the import statment.

After taking those out (I think it was three files all together), the debugger functioned properly. In my case, there were no additional paths set on PYTHONPATH to mess with the module resolution ordering.

It seems in this case, on linux (or more correctly, my instance of Ubuntu), that explicitly importing from "pydev.<module_name>" when <module_name> is already in the pydev directory (ie, the files are at the same level, and the python interpreter would see them if they're referenced by their name, not prepending 'pydev' to it), there will be issues with loading the debugger.

Dimitri, any comment?

Thanks,

Christian

0

Yes, I am on Windows with PyCharm. Haven't tried running it on my BSD boxes.

My counter point was merely an additional data point, perhaps I used the wrong phrasing there. I didn't mean to imply anything with it, merely more details for the JetBrains folks to (re)solve the issue that's causing you problems.

Good to know no PYTHONPATH was interfering, found some problems with that and 2.7.x on Windows using PyCharm.

0

Yah, no worries. If you get a chance, can you give it a try on a linux box?

That might help get some traction to show there are some regressions when using linux.

What sort of issues did you see with the PYTHONPATH? It would be good to know since i do dev on Windows too :-(

0

For the PYTHONPATH stuff: http://youtrack.jetbrains.net/issue/PY-3615?projectKey=PY

Not sure how quickly I could test this on a FreeBSD box.

0

Hi,

relative imports in debugger will be fixed in next PyCharm release.

0

Awesome, thank you! I look forward to the next release

0

Unfortunately, this issue seems to have been resolved in the wrong direction.  Relative imports are not supported in python 3.

0

Please sign in to leave a comment.