inducer/pudb — pull request #75 by bukzor (2013-06-11 01:47:55+00:00)
Title: don't provoke undefined signal handling

mod_wsgi installs a non-default signal handler for SIGINT.

The current behavior of pudb utterly clobbers this signal handler and causes undefined behavior (in practice, the process becomes impossible to kill with SIGINT).

Until pudb has better support for non-default signal handlers in the process-under-test, I've added this small amount of code to detect the situation, throw a warning, and continue without interrupt support.

The new warning looks like this under apache.

```
[Mon Jun 10 18:44:30 2013] [error] /home/buck/trees/theirs/pudb/pudb/__init__.py:166: UserWarning: A non-default handler for signal 2 is already installed (not installed from python). Skipping pudb interrupt support.
[Mon Jun 10 18:44:30 2013] [error] % (interrupt_signal, old_handler))
```

Then the process continues to work as well as previous versions of pudb.

In terms of priority, this is driving everyone that has upgraded pudb completely nuts, and the only recourse is to downgrade.