Code Monkey home page Code Monkey logo

winpdb's Introduction


Note from Philippe Fremy

The port of winpdb-reborn to Python 3 / WxPython 4 is unfortunately not working very well. So Winpdb for Python 3 does not really work. Feel free to submit Pull Requests to improve the situation. At the moment, this project is stopped.


Build Status Linux

Winpdb Reborn - A GPL Python Debugger, reborn from the unmaintained Winpdb

by Philippe Fremy as maintainer, and Nir Aides as initial author

Website: https://github.com/bluebird75/winpdb

Description

Winpdb Reborn is a portable (Windows / Linux / macOS) standalone graphical debugger for Python. It focuses on making debugging easy and does not include any IDE features. It has very little dependencies (only wxPython for the GUI).

Features:

  • graphical interface with stack/variable inspection, breakpoints and more
  • breakpoints: on lines or functions, with possible conditions, load/save breakpoint info
  • multi-threaded debugging
  • smart handling of fork, follow parent or child
  • remote debugging: GUI on one computer, program to debug on another computer with encrypted communication
  • up to 20 times quicker than pdb, the default Python debugger (on which many other debuggers are built)
  • debug PyPy scripts

Note: The original Winpdb was no longer maintained since the v1.4.8 release in 2010. With the agreement of the author (Nir Aides), I (Philippe Fremy) am providing a maintained version with new functionality under the Winpdb Reborn name.

Requirements

Platform supported:

  • Linux
  • Windows XP and above
  • macOS is probably working but not tested

To run Winpdb Reborn:

  • CPython 3.5 or above and wxPython 4

This version is for Python 3 only. A stable version of Winpdb for Python 2 is available on PyPi: https://pypi.org/project/winpdb-reborn/1.5.0/ and in the branch winpdb-reborn-python2 . You will need Python 2.7 and WxPython 3 to run it.

Note that running Winpdb with PyPy is possible, by launching rpdb2.py with pypy and using the Winpdb GUI to connect to it.

Winpdb Reborn is NOT compatible with Jython or IronPython.

Release history

Version 2.0.0.1

  • fix packaging mistake which prevented winpdb to run

Version 2.0.0

  • port Winpdb to wxPython 4 / Python 3
  • the effort is still in progress

Version 1.5.0

  • First official release by Philippe Fremy
  • Add support for Python 3 GUI (using wxPython Phoenix)
  • Allow installation of all dependencies with pip
  • Add support for Python 2.7, 3.5 and 3.6
  • Drop support for Python 2.5 and wxPython 2.6, min versions are now Python 2.6 and wxPython 3.0
  • rpdb2.py is now compatible with Python 3
  • Add support for PyPy to Rpdb2
  • Can now specify a different Python interpreter for the program under debug, allowing PyPy support
  • Avoid crash on Windows when closing debugger
  • Support drag’n drop of files to load source code
  • Add unit-tests and a functional test suite
  • Add a Continuous Integration server with travis CI
  • Can adjust behavior of debugger to activate/deactivate the breakpoint before exit
  • fix for launching Gnome Terminal properly

Version 1.4.8

Last stable version released by Nir Aides.

Installation

(not working yet until the new version is released).

The standard way to install Winpdb Reborn is with pip, as administrator/root::

# python -m pip install winpdb-reborn

You must also install the wxPython for your version of Python:

Winpdb Reborn is not packaged yet by any Linux distro. If your package manager proposes to install Winpdb, that’s the old unmaintained Winpdb which works neither with Python 2.7 nor with Python 3.

Additional installation methods

To install from a checkout or from an archive::

# python setup.py install -f

No install mode

If you don’t want to install Winpdb Reborn, you can still try it by calling it explicitly with your program to debug::

$ python /the/path/to/winpdb.py my_program.py 

Where do the files go ?

The setup script copies rpdb2.py and winpdb.py modules to the Python site-packages folder. The scripts rpdb2 and winpdb are copied to the Python binaries (scripts) folder. On Linux, this folder is usually /usr/bin and is in the path by default. On Windows, this folder is %PYTHONHOME%\Scripts, where you should see a winpdb.exe and rpdb2.exe .

Usage

If you have installed Winpdb Reborn, the simplest way to launch it is::

$ python -m winpdb my_program.py

or even::

$ winpdb my_program.py

Find out about the other command-line options with –-help .

Documentation

Use the -h or --help command-line flag for command-line help.

Inside Winpdb/Rpdb2 console, use the help command for detailed description of debugger commands.

Online documentation is available at: https://web.archive.org/web/20180724122042/http://www.winpdb.org/docs

An introduction to Winpdb usage, by Pr Norm Matloff: http://heather.cs.ucdavis.edu/%7Ematloff/winpdb.html

A detailed Winpdb tutorial is also available at: https://code.google.com/archive/p/winpdb/wikis/DebuggingTutorial.wiki

Community

You can ask questions about Winpdb Reborn on the dedicated Google group: https://groups.google.com/forum/#!forum/winpdb

Feel free to raise issues or propose improvements on the GitHub repository: https://github.com/bluebird75/winpdb/issues

winpdb's People

Contributors

alysbrooks avatar bitdeli-chef avatar bluebird75 avatar dlordi avatar gotgenes avatar gpatel-fr avatar juancrobles avatar nir avatar noamraph avatar swt2c avatar uewiebelitz avatar yorak avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

winpdb's Issues

No longer available from pip

$ python -m pip install winpdb-reborn
Collecting winpdb-reborn
  Could not find a version that satisfies the requirement winpdb-reborn (from versions: )
No matching distribution found for winpdb-reborn

install instructions no longer work

Namespace not working on Python 2.7

I'm using winpdb-reborn v1.5.0 on Python 2.7.

The debugger itself seems to work, but the Namespace frame stays stubornly empty.

I found this related (and very old) issue on original winpdb sourceforge site.

However, I can't figure out how to "start the winpdb UI client with the --debug flag"?

Happy to get my hands dirty, but not sure where to start?

NB: In pdb I can "p n" to print the variable n, but I'm not sure how to do the same in rpdb2...

> eval(n)
N/A

Incompatibilities with wxpython 4.0.7

It seems that the current git head is not compatible to the wxpython 4.0.7 version.
Description: When attaching to a remote session the debugger works find but all control buttons and inspection areas stay disabled. The shortcuts (e.g. F6/F5 work just fine).
This leads to exceptions.

Reason: At least the current version of wxPython (4.1.0 and 4.0.7) do not have the type rectS and the type rect does not provide any function inside().
These functions are called as wx.rectS(...) and r.inside(...) in winpdb.py.

Solution: Replacing wx.rectS by wx.rect and r.inside by r.contains(...) solves the bug and remote debugging works like a charm ;-)

Unfortunately I am not familiar with wxWidgets. Thus I do not know wheter any version ever supported these statements and if so since when this has changed.

If the fix is needed as a patch, please let me know.

RPDBTERM not defined error

I've tried several ways to debug file with winpdb running like this: $ winpdb a.py but I've always had this undeclared variable error. Couldn't google anything. I see it's declared in "rpdb2.py" file, outside the "rpdb/" folder
Here's my traceback:

Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/winpdb.py", line 1288, in __wrapper
    self.m_f(*args, **kwargs)
  File "/usr/lib/python3.8/site-packages/rpdb/session_manager.py", line 197, in launch
    return self.__smi.launch(fchdir, command_line, interpreter, fload_breakpoints)
  File "/usr/lib/python3.8/site-packages/rpdb/session_manager.py", line 1160, in launch
    self._spawn_server(fchdir, ExpandedFilename, args, rid, interpreter)
  File "/usr/lib/python3.8/site-packages/rpdb/session_manager.py", line 1269, in _spawn_server
    terminal_command = CalcTerminalCommand()
  File "/usr/lib/python3.8/site-packages/rpdb/session_manager.py", line 2385, in CalcTerminalCommand
    if RPDBTERM in os.environ:
NameError: name 'RPDBTERM' is not defined

Btw. I think there will also be problems with the others global variables in the CalcTerminalCommand() function inside session_maneger.py

In Windows XP 32 bits Home (Python 3.4.3)

Hello. Saved the test case from here http://onreader.mdl.ru/PythonParallelProgrammingCookbook.2nd/content/Ch09.html
(Chapter 9. Python Debugging and Testing from "The Book of Python Parallel Programming Recipes", 2nd ed. In Russian)
along the path C:/1 in the winpdb_reborn_code_example.py file.
`import time
import os
from random import randint
from threading import Thread

class MyThreadClass (Thread):
def init(self, name, duration):
Thread.init(self)
self.name = name
self.duration = duration
def run(self):
print ("---> " + self.name +
" running, belonging to process ID "
+ str(os.getpid()) + "\n")
time.sleep(self.duration)
print ("---> " + self.name + " over\n")
def main():
start_time = time.time()

# Thread Creation
thread1 = MyThreadClass("Thread#1 ", randint(1,10))
thread2 = MyThreadClass("Thread#2 ", randint(1,10))
thread3 = MyThreadClass("Thread#3 ", randint(1,10))

# Thread Running
thread1.start()
thread2.start()
thread3.start()

# Thread joining
thread1.join()
thread2.join()
thread3.join()

# End 
print("End")

#Execution Time
print("--- %s seconds ---" % (time.time() - start_time))

if name == "main":
main()`

`

Successfully installed winpdb-reborn-2.0.0.1

C:\Documents and Settings\ia>cd C:\1

C:\1>python -m winpdb .\winpdb_reborn_code_example.py
23:59:47.844 rpdb2.py:6148 MainThread/2328 __setrecursionlimit(): rl = 1000
00:00:00.657 winpdb.py:3006 MainThread/2328 set_font(): Using font "Courier New"
for Console
00:00:00.688 winpdb.py:3006 MainThread/2328 set_font(): Using font "Courier New"
for Console
00:00:11.203 session_manager.py:1282 Thread-2/2196 _spawn_server(): Terminal ope
n string: 'start "rpdb2 - Version RPDB_1_5_0 - Debuggee Console" cmd.exe /K ""C:
\Python34\python.exe" "session_manager\..\rpdb2.py" --debugee --pwd="q2G_A2L
M" --rid=6268676 "c:\1\winpdb_reborn_code_example.py" "'
00:00:12.938 session_manager.py:1094 Thread-2/2196 __wait_for_debuggee(): Scanni
ng for debuggee...
00:00:17.016 session_manager.py:1094 Thread-2/2196 __wait_for_debuggee(): Scanni
ng for debuggee...
00:00:20.047 session_manager.py:1094 Thread-2/2196 __wait_for_debuggee(): Scanni
ng for debuggee...

`

Another console window started up with this text:
`

C:\Python34\python.exe: can't open file 'session_manager..\rpdb2.py': [Errno 2]
No such file or directory

C:\1>

`

https://s8.hostingkartinok.com/uploads/images/2020/09/93502ddefe8ff570043a997eb5f4eb66.jpg

Mismatched Passwords

Hi,

when I try to debug with Python3 and Version 2.0.0.1 I get the following error:

While attempting to find a debugee, at least one debugee denied connection because of mismatched passwords. Please verify your password.

With python2 and version 1.5.0 everything is working fine.

Greetings

Pip install fails in conda env

OS: 16.04.6
python version: 3.7.3
pip version: 19.1
conda version: 4.6.14

└─▪ pip install winpdb-reborn
Collecting winpdb-reborn
  Using cached https://files.pythonhosted.org/packages/8f/f9/b25cde38dd15c590f4d4a1f3f5eb3614167deea1ee9449779347f400ed40/winpdb_reborn-2.0.0.dev5-py3-none-any.whl
Collecting wxpython>=4 (from winpdb-reborn)
  Using cached https://files.pythonhosted.org/packages/9a/a1/9c081e04798eb134b63def3db121a6e4436e1d84e76692503deef8e75423/wxPython-4.0.6.tar.gz
Requirement already satisfied: numpy in /groups/funke/home/gallusserb/miniconda3/envs/pyg_test/lib/python3.7/site-packages (from wxpython>=4->winpdb-reborn) (1.16.3)
Requirement already satisfied: pillow in /groups/funke/home/gallusserb/miniconda3/envs/pyg_test/lib/python3.7/site-packages (from wxpython>=4->winpdb-reborn) (6.0.0)
Requirement already satisfied: six in /groups/funke/home/gallusserb/miniconda3/envs/pyg_test/lib/python3.7/site-packages (from wxpython>=4->winpdb-reborn) (1.12.0)
Building wheels for collected packages: wxpython
  Building wheel for wxpython (setup.py) ... error
  ERROR: Complete output from command /groups/funke/home/gallusserb/miniconda3/envs/pyg_test/bin/python -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-wh396n1v/wxpython/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-41g_588s --python-tag cp37:
  ERROR: running bdist_wheel
  running build
  WARNING: Building this way assumes that all generated files have been
  generated already.  If that is not the case then use build.py directly
  to generate the source and perform the build stage.  You can use
  --skip-build with the bdist_* or install commands to avoid this
  message and the wxWidgets and Phoenix build steps in the future.

  "/groups/funke/home/gallusserb/miniconda3/envs/pyg_test/bin/python" -u build.py build
  Traceback (most recent call last):
    File "build.py", line 30, in <module>
      import pathlib2
  ModuleNotFoundError: No module named 'pathlib2'
  Command '"/groups/funke/home/gallusserb/miniconda3/envs/pyg_test/bin/python" -u build.py build' failed with exit code 1.
  ----------------------------------------
  ERROR: Failed building wheel for wxpython
 Running setup.py clean for wxpython
Failed to build wxpython
Installing collected packages: wxpython, winpdb-reborn
  Running setup.py install for wxpython ... error
    ERROR: Complete output from command /groups/funke/home/gallusserb/miniconda3/envs/pyg_test/bin/python -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-wh396n1v/wxpython/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-gujop72s/install-record.txt --single-version-externally-managed --compile:
    ERROR: running install
    running build
    WARNING: Building this way assumes that all generated files have been
    generated already.  If that is not the case then use build.py directly
    to generate the source and perform the build stage.  You can use
    --skip-build with the bdist_* or install commands to avoid this
    message and the wxWidgets and Phoenix build steps in the future.

    "/groups/funke/home/gallusserb/miniconda3/envs/pyg_test/bin/python" -u build.py build
    Traceback (most recent call last):
      File "build.py", line 30, in <module>
        import pathlib2
    ModuleNotFoundError: No module named 'pathlib2'
    Command '"/groups/funke/home/gallusserb/miniconda3/envs/pyg_test/bin/python" -u build.py build' failed with exit code 1.
    ----------------------------------------
ERROR: Command "/groups/funke/home/gallusserb/miniconda3/envs/pyg_test/bin/python -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-wh396n1v/wxpython/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-gujop72s/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-install-wh396n1v/wxpython/

error message on windwos

When i run winpdg on windows i have this message 👍

La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte.

Current directory:
c:\Users\Benoit\projets\tproj

Command to be executed:
"C:\WINDOWS\system32\cmd.exe" /C """C:\Python37\python.exe" "session_manager..\rpdb2.py" --debugee --pwd="i3ELQQAm" --rid=9823679 "c:\users\benoit\projets\tproj\tdebug.py" ""

ConEmuC: Root process was alive less than 10 sec, ExitCode=1.
Press Enter or Esc to close console...
I think the tools does find the file session_manager..\rpdb2.py.
I work on Windows 10
Python 3.7
and the last version of winpdb
winpdb_reborn-2.0.0.1
Successfully installed Winpdb-reborn-2.0.0.1 numpy-1.19.4 pillow-8.0.1 wxpython-4.1.0

winpdb crashes with Python 3.12 at Windows

Hi,
I've installed winpdb-reborn with pip. On attempt to start, winpdb crashes every time.
My environment:

  • Windows 10
  • Python 3.12.1

Crash info from Windows Event Log:

Faulting application name: python.exe, version: 3.12.1150.1013, time stamp: 0x65724223
Faulting module name: python312.dll, version: 3.12.1150.1013, time stamp: 0x657241c8
Exception code: 0xc0000005
Fault offset: 0x000000000001812f
Faulting process id: 0x80ac
Faulting application start time: 0x01da7472273024ec
Faulting application path: C:\Program Files\Python312\python.exe
Faulting module path: C:\Program Files\Python312\python312.dll
Report Id: e42f69f6-32b2-4b3b-81eb-835d9aea9d42
Faulting package full name: 
Faulting package-relative application ID: 

py3.6, cannot attach to remote

  File "/work/proj/ve/lib/python3.6/site-packages/rpdb2.py", line 10395, in ConnectNoThrow
    self.Connect()
  File "/work/proj/ve/lib/python3.6/site-packages/rpdb2.py", line 10406, in Connect
    server_info = server.server_info()
  File "/usr/lib/python3.6/xmlrpc/client.py", line 1112, in __call__
    return self.__send(self.__name, args)
  File "/work/proj/ve/lib/python3.6/site-packages/rpdb2.py", line 9673, in __request
    (fcompress, digest, msg) = self.m_crypto.do_crypto(args, fencrypt)
  File "/work/proj/ve/lib/python3.6/site-packages/rpdb2.py", line 4833, in do_crypto
    s = self.__encrypt(s)
  File "/work/proj/ve/lib/python3.6/site-packages/rpdb2.py", line 4873, in __encrypt
    d = DES.new(key_padded, DES.MODE_CBC, iv)
  File "/work/proj/ve/lib/python3.6/site-packages/Crypto/Cipher/DES.py", line 145, in new
    return _create_cipher(sys.modules[__name__], key, mode, *args, **kwargs)
  File "/work/proj/ve/lib/python3.6/site-packages/Crypto/Cipher/__init__.py", line 79, in _create_cipher
    return modes[mode](factory, **kwargs)
  File "/work/proj/ve/lib/python3.6/site-packages/Crypto/Cipher/_mode_cbc.py", line 293, in _create_cbc_cipher
    return CbcMode(cipher_state, iv)
  File "/work/proj/ve/lib/python3.6/site-packages/Crypto/Cipher/_mode_cbc.py", line 97, in __init__
    c_uint8_ptr(iv),
  File "/work/proj/ve/lib/python3.6/site-packages/Crypto/Util/_raw_api.py", line 144, in c_uint8_ptr
    raise TypeError("Object type %s cannot be passed to C code" % type(data))
TypeError: Object type <class 'str'> cannot be passed to C code

fails to install on Rasapbian Stretch

Installed and used winpdb-reborn on Windows 10: I like its threads debug UI. Now I hit Linux specific code and have to continue debug on the target host, a Raspberry Pi running Raspbian stretch. When I tried to install it via "python3 -m pip install winpdb-reborn" it failed to build the wheels for all three components (wxpython, Pillow, and six). So I tried to install just wxpython via "pip3 install -U wxPython" and it also failed. Suggestions?

Here's the log:
===============================================================================================
pi@RPI4m:~/Desktop $ pip3 install -U wxPython
Collecting wxPython
Using cached https://files.pythonhosted.org/packages/17/74/7c3ced03c3c76b9f98e4a0edae1801755a7599ebf481c04d9f77dfff17e3/wxPython-4.0.4.tar.gz
Collecting Pillow (from wxPython)
Using cached https://files.pythonhosted.org/packages/81/1a/6b2971adc1bca55b9a53ed1efa372acff7e8b9913982a396f3fa046efaf8/Pillow-6.0.0.tar.gz
Collecting six (from wxPython)
Using cached https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-py2.py3-none-any.whl
Building wheels for collected packages: wxPython, Pillow
Running setup.py bdist_wheel for wxPython ... error
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-build-j5r19rr5/wxPython/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" bdist_wheel -d /tmp/tmps1nar3q4pip-wheel- --python-tag cp35:
running bdist_wheel
running build
WARNING: Building this way assumes that all generated files have been
generated already. If that is not the case then use build.py directly
to generate the source and perform the build stage. You can use
--skip-build with the bdist_* or install commands to avoid this
message and the wxWidgets and Phoenix build steps in the future.

"/usr/bin/python3" -u build.py build
Will build using: "/usr/bin/python3"
3.5.3 (default, Jan 19 2017, 14:11:04)
[GCC 6.3.0 20170124]
Python's architecture is 32bit
cfg.VERSION: 4.0.4

Running command: build
Running command: build_wx
wxWidgets build options: ['--wxpython', '--unicode', '--gtk3']
Configure options: ['--enable-unicode', '--with-gtk=3', '--with-opengl', '--enable-sound', '--enable-graphics_ctx', '--enable-mediactrl', '--enable-display', '--enable-geometry', '--enable-debug_flag', '--enable-optimise', '--disable-debugreport', '--enable-uiactionsim', '--enable-autoidman', '--with-sdl']
/tmp/pip-build-j5r19rr5/wxPython/ext/wxWidgets/configure --enable-unicode --with-gtk=3 --with-opengl --enable-sound --enable-graphics_ctx --enable-mediactrl --enable-display --enable-geometry --enable-debug_flag --enable-optimise --disable-debugreport --enable-uiactionsim --enable-autoidman --with-sdl
checking build system type... armv7l-unknown-linux-gnueabihf
checking host system type... armv7l-unknown-linux-gnueabihf
checking for --disable-gui... no

<...>
No package 'gtk+-3.0' found
Package gthread-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gthread-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gthread-2.0' found
no
*** Could not run GTK+ test program, checking why...
*** The test program failed to compile or link. See the file config.log for the
*** exact error that occured. This usually means GTK+ is incorrectly installed.
configure: error:
The development files for GTK+ were not found. For GTK+ 2, please
ensure that pkg-config is in the path and that gtk+-2.0.pc is
installed. For GTK+ 1.2 please check that gtk-config is in the path,
and that the version is 1.2.3 or above. Also check that the
libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
--libs' are in the LD_LIBRARY_PATH or equivalent.

Error running configure
ERROR: failed building wxWidgets
Traceback (most recent call last):
File "build.py", line 1321, in cmd_build_wx
wxbuild.main(wxDir(), build_options)
File "/tmp/pip-build-j5r19rr5/wxPython/buildtools/build_wxwidgets.py", line 375, in main
"Error running configure")
File "/tmp/pip-build-j5r19rr5/wxPython/buildtools/build_wxwidgets.py", line 85, in exitIfError
raise builder.BuildError(msg)
buildtools.builder.BuildError: Error running configure
Finished command: build_wx (0m30.592s)
Finished command: build (0m30.592s)
Command '"/usr/bin/python3" -u build.py build' failed with exit code 1.


Failed building wheel for wxPython
Running setup.py clean for wxPython
Running setup.py bdist_wheel for Pillow ... error
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-build-j5r19rr5/Pillow/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" bdist_wheel -d /tmp/tmp0r7t2sijpip-wheel- --python-tag cp35:
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-armv7l-3.5
creating build/lib.linux-armv7l-3.5/PIL
copying src/PIL/ImageCms.py -> build/lib.linux-armv7l-3.5/PIL

<...>
running egg_info
writing dependency_links to src/Pillow.egg-info/dependency_links.txt
writing top-level names to src/Pillow.egg-info/top_level.txt
writing src/Pillow.egg-info/PKG-INFO
reading manifest file 'src/Pillow.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '.c'
warning: no files found matching '
.h'
warning: no files found matching '.sh'
no previously-included directories found matching 'docs/_static'
warning: no previously-included files found matching '.appveyor.yml'
warning: no previously-included files found matching '.coveragerc'
warning: no previously-included files found matching '.codecov.yml'
warning: no previously-included files found matching '.editorconfig'
warning: no previously-included files found matching '.landscape.yaml'
warning: no previously-included files found matching '.readthedocs.yml'
warning: no previously-included files found matching 'azure-pipelines.yml'
warning: no previously-included files found matching 'tox.ini'
warning: no previously-included files matching '.git
' found anywhere in distribution
warning: no previously-included files matching '.pyc' found anywhere in distribution
warning: no previously-included files matching '
.so' found anywhere in distribution
no previously-included directories found matching '.azure-pipelines'
no previously-included directories found matching '.travis'
writing manifest file 'src/Pillow.egg-info/SOURCES.txt'
running build_ext

The headers or library files could not be found for jpeg,
a required dependency when compiling Pillow from source.

Please see the install instructions at:
https://pillow.readthedocs.io/en/latest/installation.html

Traceback (most recent call last):
File "/tmp/pip-build-j5r19rr5/Pillow/setup.py", line 792, in
zip_safe=not (debug_build() or PLATFORM_MINGW), )
File "/usr/lib/python3.5/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.5/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/lib/python3/dist-packages/wheel/bdist_wheel.py", line 179, in run
self.run_command('build')
File "/usr/lib/python3.5/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/lib/python3.5/distutils/command/build.py", line 135, in run
self.run_command(cmd_name)
File "/usr/lib/python3.5/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/lib/python3.5/distutils/command/build_ext.py", line 339, in run
self.build_extensions()
File "/tmp/pip-build-j5r19rr5/Pillow/setup.py", line 606, in build_extensions
raise RequiredDependencyException(f)
main.RequiredDependencyException: jpeg

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "", line 1, in
File "/tmp/pip-build-j5r19rr5/Pillow/setup.py", line 804, in
raise RequiredDependencyException(msg)
main.RequiredDependencyException:

The headers or library files could not be found for jpeg,
a required dependency when compiling Pillow from source.

Please see the install instructions at:
https://pillow.readthedocs.io/en/latest/installation.html


Failed building wheel for Pillow
Running setup.py clean for Pillow
Failed to build wxPython Pillow
Installing collected packages: Pillow, six, wxPython
Running setup.py install for Pillow ... error
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-build-j5r19rr5/Pillow/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-e3eckqgz-record/install-record.txt --single-version-externally-managed --compile --user --prefix=:
running install
running build
running build_py
creating build
creating build/lib.linux-armv7l-3.5
creating build/lib.linux-armv7l-3.5/PIL
copying src/PIL/ImageCms.py -> build/lib.linux-armv7l-3.5/PIL

<...>
running egg_info
writing src/Pillow.egg-info/PKG-INFO
writing top-level names to src/Pillow.egg-info/top_level.txt
writing dependency_links to src/Pillow.egg-info/dependency_links.txt
reading manifest file 'src/Pillow.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '.c'
warning: no files found matching '
.h'
warning: no files found matching '.sh'
no previously-included directories found matching 'docs/_static'
warning: no previously-included files found matching '.appveyor.yml'
warning: no previously-included files found matching '.coveragerc'
warning: no previously-included files found matching '.codecov.yml'
warning: no previously-included files found matching '.editorconfig'
warning: no previously-included files found matching '.landscape.yaml'
warning: no previously-included files found matching '.readthedocs.yml'
warning: no previously-included files found matching 'azure-pipelines.yml'
warning: no previously-included files found matching 'tox.ini'
warning: no previously-included files matching '.git
' found anywhere in distribution
warning: no previously-included files matching '.pyc' found anywhere in distribution
warning: no previously-included files matching '
.so' found anywhere in distribution
no previously-included directories found matching '.azure-pipelines'
no previously-included directories found matching '.travis'
writing manifest file 'src/Pillow.egg-info/SOURCES.txt'
running build_ext

The headers or library files could not be found for jpeg,
a required dependency when compiling Pillow from source.

Please see the install instructions at:
   https://pillow.readthedocs.io/en/latest/installation.html

Traceback (most recent call last):
  File "/tmp/pip-build-j5r19rr5/Pillow/setup.py", line 792, in <module>
    zip_safe=not (debug_build() or PLATFORM_MINGW), )
  File "/usr/lib/python3.5/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib/python3.5/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/usr/lib/python3/dist-packages/setuptools/command/install.py", line 61, in run
    return orig.install.run(self)
  File "/usr/lib/python3.5/distutils/command/install.py", line 583, in run
    self.run_command('build')
  File "/usr/lib/python3.5/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/usr/lib/python3.5/distutils/command/build.py", line 135, in run
    self.run_command(cmd_name)
  File "/usr/lib/python3.5/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/usr/lib/python3.5/distutils/command/build_ext.py", line 339, in run
    self.build_extensions()
  File "/tmp/pip-build-j5r19rr5/Pillow/setup.py", line 606, in build_extensions
    raise RequiredDependencyException(f)
__main__.RequiredDependencyException: jpeg

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/tmp/pip-build-j5r19rr5/Pillow/setup.py", line 804, in <module>
    raise RequiredDependencyException(msg)
__main__.RequiredDependencyException:

The headers or library files could not be found for jpeg,
a required dependency when compiling Pillow from source.

Please see the install instructions at:
   https://pillow.readthedocs.io/en/latest/installation.html


----------------------------------------

Command "/usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-build-j5r19rr5/Pillow/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-e3eckqgz-record/install-record.txt --single-version-externally-managed --compile --user --prefix=" failed with error code 1 in /tmp/pip-build-j5r19rr5/Pillow/
pi@RPI4m:~/Desktop $
===============================================================================================

DeprecationWarning from rpdb2.py

This warning is a little annoying, particularly when I am scanning/testing for the absence of stderr output:

>>> import rpdb2
rpdb2.py:308: DeprecationWarning: the sets module is deprecated
  import sets
rpdb2.py:313: DeprecationWarning: The popen2 module is deprecated.  Use the subprocess module.
  import popen2

Here is a fix. Note - this may be needed only for 2.6, as I do not see the DeprecationWarning for the CPython 2.7 and 3.4 versions I have tried the original on

--- rpdb2.py.orig	2010-08-17 15:12:52.000000000 -0400
+++ rpdb2.py	2017-06-29 21:01:06.751002237 -0400
@@ -305,14 +305,21 @@
 
 try:
     import compiler
-    import sets
 except:
     pass
 
-try:
-    import popen2
-except:
-    pass
+if sys.version_info[:2] >= (2, 6):
+    import warnings
+    with warnings.catch_warnings():
+        warnings.filterwarnings("ignore", category=DeprecationWarning)
+        import sets
+        import popen2
+else:
+    try:
+        import sets
+        import popen2
+    except:
+        pass
 
 try:
     from Crypto.Cipher import DES

can't open file 'session_manager\..\rpdb2.py': [Errno 2] No such file or directory

Hi,

I am developing software with Python 3.7 on WIndows 10.

I freshly installed windpb 👍

J:\Dropbox\cff\Python\PhoneBotV3>python -m pip install --upgrade winpdb-reborn
Requirement already up-to-date: winpdb-reborn in c:\users\nino\appdata\local\programs\python\python37\lib\site-packages (2.0.0.1)
Requirement already satisfied, skipping upgrade: wxpython>=4 in c:\users\nino\appdata\local\programs\python\python37\lib\site-packages (from winpdb-reborn) (4.1.1)
Requirement already satisfied, skipping upgrade: pillow in c:\users\nino\appdata\local\programs\python\python37\lib\site-packages (from wxpython>=4->winpdb-reborn) (6.0.0)
Requirement already satisfied, skipping upgrade: numpy; python_version >= "3.0" in c:\users\nino\appdata\local\programs\python\python37\lib\site-packages (from wxpython>=4->winpdb-reborn) (1.18.2)
Requirement already satisfied, skipping upgrade: six in c:\users\nino\appdata\local\programs\python\python37\lib\site-packages (from wxpython>=4->winpdb-reborn) (1.15.0)

Then I run it with this command :

winpdb MySoft.py

Nothing happen.

So I run this one:

python -m winpdb MySoft.py

The GUI is open and empty. No file, no code. So I tried to attach a file by running the command again

python -m winpdb MySoft.py

The first time it opens a cmd window with this message:

C:\Users\Nino\AppData\Local\Programs\Python\Python37\python.exe: can't open file 'session_manager\..\rpdb2.py': [Errno 2] No such file or directory

The 2nd time when I attached a command (Menu>File>Attach), I get another cmd window with exact same message:
C:\Users\Nino\AppData\Local\Programs\Python\Python37\python.exe: can't open file 'session_manager\..\rpdb2.py': [Errno 2] No such file or directory

Then I searched for this file and this issue on StackOverflow, google, and more.... NOTHING!?

So what did I do wrong?

Can anyone help me please?

Source and Console panes use unusable and not-obviously-changeable font

First time I try out winpdb-reborn, having used winpdb in the past. I installed using pip3 for a test, all dependencies satisfied by the system (debian testing).

The Code ans Conssole panes are just unusable, this font is suprising:

Screenshot_2020-04-27_21-03-28

Strace revealed the use of a .winpdb_settings.cfg file (binary content with no particular magic, OMG!), which I moved away with no better result.

Also tried with a fresh user account that never used winpdb before, and without loading a script to debug, same result.

Make it clear that python3 can still be debugged by winpdb

Hi,
The README file starts with "WINPDB ON PYTHON 3 IS BUGGY AND NOT WORKING". It makes it seem like winpdb is useless for python3 users. However, I understand that this means that the GUI doesn't work on python3, but rpdb2.py does. So python3 code can be debugged by importing rpdb2.py from python3 and connecting to it from winpdb on python2.

I suggest to make this clear - I'm a heavy user of winpdb, and I am working on migrating my code from python2 to python3. This note made me think that it will mean that I have to either stop using winpdb or start working on a fix, and it's not the case.

Thanks for the good work! It helps me a lot!
Noam

Error with Python 3.3 under Linux

When using winpdb with Python 3.3, it fails with a ValueError on the module signal.

chiel@ENIAC:~/Projects$ python3.3 winpdb/rpdb2.py --debug --debuggee ~/foo.py
A password should be set to secure debugger client-server communication.
Please type a password:x
Password has been set.
11:22:35.104 rpdb2.py:14178 in StartServer: Starting server with: /home/chiel/foo.py
Traceback (most recent call last):
File "winpdb/rpdb2.py", line 14499, in
ret = rpdb2.main
File "/home/chiel/Projects/winpdb/rpdb2.py", line 14470, in main
StartServer(_rpdb2_args, fchdir, _rpdb2_pwd, fAllowUnencrypted, fAllowRemote, secret)
File "/home/chiel/Projects/winpdb/rpdb2.py", line 14212, in StartServer
g_module_main = -1
File "/home/chiel/Projects/winpdb/rpdb2.py", line 14212, in StartServer
g_module_main = -1
File "/home/chiel/Projects/winpdb/rpdb2.py", line 7324, in trace_dispatch_init
self.__set_signal_handler()
File "/home/chiel/Projects/winpdb/rpdb2.py", line 7286, in __set_signal_handler
handler = signal.getsignal(value)
File "/home/chiel/Projects/winpdb/rpdb2.py", line 13682, in __getsignal
handler = g_signal_handlers.get(signum, g_signal_getsignal(signum))
ValueError: signal number out of range
11:22:35.198 rpdb2.py:14030 in _atexit: Entered _atexit() in pid 3422
11:22:36.199 rpdb2.py:9612 in stop: Stopping IO server... (pid = 3422)
11:22:37.979 rpdb2.py:9286 in shutdown: Shutting down worker queue...
11:22:37.980 rpdb2.py:9303 in shutdown: Shutting down worker queue, done.
11:22:37.980 rpdb2.py:9634 in stop: Stopping IO server, done.

Problem reported by ctenbrinke on the newsgroup.

Problem does not show up on Windows with python 3.3 and does not show up on Linux with Python 3.2

Could not install winpdb-reborn using pip

Tried to install winpdb using "python -m pip install winpdb-reborn" but it gives and error message(see below for message)

python -m pip install winpdb-reborn
Collecting winpdb-reborn
Could not find a version that satisfies the requirement winpdb-reborn (from versions: )
No matching distribution found for winpdb-reborn

<<<

rpdb folder not installed when using pip

Hi,

the rpdb folder with the different scripts was not installed when i used pip to install the new 2.0.0.0 version so i got the following error:
Traceback (most recent call last): File "winpdb.py", line 26, in <module> import rpdb.const ModuleNotFoundError: No module named 'rpdb'

after manually downloading the folder from here and putting it into the site-packages folder it works normally.

Thanks for the great work!

Get wrong line (16) when setting a breakpoint at line 29

It runs under Python 3.8 and Windows 8.1 x64. Although it's running a previous version here, but the same result in ver 2.0.0.1 too.
The followings are the result of after adding print() in the function CalcScopeLine() to show what errors I had got:

def CalcScopeLine(self, lineno):
    print(lineno)
    rvl = copy.copy(self.m_valid_lines)  # m_valid_lines has strange result
    rvl.reverse()
    print(rvl)

    for l in rvl:  # JF@21DEC2022, this will cause a correct lineno (29) changes to an incorrect l (16)?
        if lineno >= l:
            break
    return l

-----the main window
e:\Works\Python\ttkwidgets-master\examples>py ....\rpdb2.py example_calendar.py
....\rpdb2.py:296: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's
documentation for alternative uses
import imp
RPDB2 - The Remote Python Debugger, version RPDB_2_5_0,
Copyright (C) 2005-2009 Nir Aides, 2013-2017 Philippe Fremy
Type "help", "copyright", "license", "credits" for more information.

*** Password has been set to a random password.
*** Starting debuggee...
*** Attaching to debuggee...
*** Debug Channel is NOT encrypted.
*** Successfully attached to
*** 'e:\works\python\ttkwidgets-master\examples\example_calendar.py'.
*** Debuggee is waiting at break point for further commands.
bl
List of breakpoints:

Id State Line Filename-Scope-Condition-Encoding

bp 29

bl
List of breakpoints:

Id State Line Filename-Scope-Condition-Encoding

0 enabled 16 ...\examples\example_calendar.py

list
Source lines for thread 111776 from file 'e:\works\python\ttkwidgets-master\examples\example_calendar.py':

      1  # -*- coding: utf-8 -*-
      2
      3  # Copyright (c) Juliette Monsel 2018
      4  # For license see LICENSE
      5

C> 6 from ttkwidgets import Calendar
7 import tkinter as tk
8
9 def validate():
10 sel = calendar.selection
11 if sel is not None:
12 label.configure(text='Selected date: %s' % sel.st...
13
14 window = tk.Tk()
15 calendar = Calendar(window, year=2022, month=10, selectfo...
B 16 selectbackground='red')
17 calendar.pack()
18
19 tk.Button(window, text='Select', command=validate).pack()
20 label = tk.Label(window, text='Selected date:')


-----the other window
e:\Works\Python\rpdb2.py:296: DeprecationWarning: the imp module is deprecated in favour of importlib; see the
module's documentation for alternative uses
import imp
6
[285, 284, 277, 276, 275, 273, 271, 16, 15, 14, 9, 7, 6]
29
[285, 284, 277, 276, 275, 273, 271, 16, 15, 14, 9, 7, 6]

The example_calendar.py file has only 30 lines long. What is the line 271 and aboves?
and line 29 is missing obviously

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.