Subject: 25.0.92; python interrupts subjop on keyborard quit

From: Vitalie Spinu <[email-masked]>
Date: Sat, 16 Apr 2016 13:22:23 +0200

Currently python.el has a bad habit of interrupting running jobs on
keyboard quit.

Run a time consuming task:

  import time
  time.sleep(100)

Then go to python file and move your cursor around. If eldoc or company
completion is active, python.el will hang after requesting for
completion. That's because it's not smart enough to understand that the
process is busy. For me the hang even happens on C-x C-f for no clear
reason.

Type C-g and your subjob will be interrupted. User might have been
running long computations for hours by now and interfering with sub jobs
like this is plain unacceptable.

The problem is with the "hidden evaluation":
  
╭──────── #2951 ─ /home/vspinu/bin/emacs/lisp/progmodes/python.el ──
│      (with-current-buffer (process-buffer process)
│        (comint-interrupt-subjob)))))
╰──────── #2952 ─

Removing that line solves the problem but prints the incomplete output
to the subprocess. That is a much lesser evil than interrupting the
process job IMO.

  Vitalie

GNU Emacs 25.0.92.2 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.7) of 2016-04-09