Index: slime/ChangeLog diff -u slime/ChangeLog:1.1428 slime/ChangeLog:1.1442 --- slime/ChangeLog:1.1428 Sat Aug 9 15:57:37 2008 +++ slime/ChangeLog Mon Aug 11 13:41:59 2008 @@ -1,3 +1,69 @@ +2008-08-11 Helmut Eller heller@common-lisp.net + + Improve interrupt safety for single-threaded lisps. + + * slime.el (slime-interrupt): Send a :emacs-interrupt message + together with SIGINT. SIGINT now means "check for new events" + instead of "invoke the debugger". + + * swank-backend.lisp (install-sigint-handler) + (call-with-user-break-handler): New functions. + + * swank.lisp (simple-serve-requests,install-fd-handler): Use it. + (read-packet): New function. Check for interrupts. + (decode-message): Use it. + (wait-for-event/event-loop): Check for interrupts. + +2008-08-11 Helmut Eller heller@common-lisp.net + + * swank-abcl.lisp (preferred-communication-style): Return nil + until we implement receive-if. + + * swank-openmcl.lisp (receive-if): Support timeout argument. + * swank-allegro.lisp (receive-if): Ditto. + +2008-08-11 Helmut Eller heller@common-lisp.net + + * swank.lisp (*global-debugger*): Change default back to t. + +2008-08-10 Helmut Eller heller@common-lisp.net + + * swank-ecl.lisp (thread-id): Assign an non-nil id to unknown + threads. + + * slime.el (slime-execute-tests): Call slime-test-should-fail-p + before executing the test (which may close the connection). + (def-slime-test): Use slime-sync-to-top-level with a timeout. + (slime-temp-directory): New function. + (slime-run-tests): Save repl-history in /tmp. + (slime-repl-mode): Ignore persistent history if + slime-repl-history-file is nil. + (slime-quit-lisp-internal): New function. + (slime-quit-lisp, slime-restart-inferior-lisp): Use it + (slime-batch-test): Exit, if the Lisp isn't up and running after + 30 secs. + +2008-08-10 Helmut Eller heller@common-lisp.net + + * swank.lisp (wait-for-event): Add timeout argument. This is used + for :fd-handler and :sigio style where we only process events as + long as we don't block. + (wait-for-event/event-loop, read-event) + (decode-message, receive-if): Ditto. + (process-requests): Renamed from read-from-emacs. + (handle-requests): Renamed from handle-request. Take timeout + argument. Update callers. + (process-available-input): Deleted. + (with-swank-error-handler): Renamed from + with-reader-error-handler. + (with-connection): Use it. + +2008-08-10 Helmut Eller heller@common-lisp.net + + * swank.lisp (invoke-slime-debugger): New function. + Analagous to cl:invoke-debugger. + (swank-debugger-hook): Use it. + 2008-08-09 Helmut Eller heller@common-lisp.net
* slime.el (slime-quit-lisp): Optionally send kill signal.