[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/sly 613f597: Fix #394: Revert "Don't force mREPL to use ch
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/sly 613f597: Fix #394: Revert "Don't force mREPL to use channel thread for everything" |
Date: |
Fri, 18 Dec 2020 17:33:19 -0500 (EST) |
branch: elpa/sly
commit 613f597ecf72eb5719d4e13a4bfdbeb91373bf09
Author: João Távora <joaotavora@gmail.com>
Commit: João Távora <joaotavora@gmail.com>
Fix #394: Revert "Don't force mREPL to use channel thread for everything"
This reverts commit ae4bbcaadc2b65d4f64c99b956c739372eeba1cc, which
was a total thinko.
Although what was written in that commit message is true for most
requests -- that :emacs-rex requests issued from the REPL can normally
be spawned in a new worker thread -- it (1) isn't true of some
slynk-mrepl SLYFUNs which check if the worker thread really is the
thread of the object representing the REPL, and (2) it most certainly
isn't true of the :emacs-interupt message.
The restriction of (1) is probably artificial, since these SLYFUNs
(which modify REPL history, for example) are "seeing" local REPL
bindings anyway via WITH-LISTENER-BINDINGS, and it probably wouldn't
hurt a ton to lift it. But the restriction of (2) is imperative: the
purpose of that message is to interrupt a specific thread.
In the end, that commit was done to get a better experience in Clasp,
who seems to have a hard problem hanging on to thread IDs because of a
garbage collecting issue. Let's rather have that fixed in Clasp.
---
contrib/sly-mrepl.el | 1 +
sly.el | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/contrib/sly-mrepl.el b/contrib/sly-mrepl.el
index 9c412bf..90c1397 100644
--- a/contrib/sly-mrepl.el
+++ b/contrib/sly-mrepl.el
@@ -1013,6 +1013,7 @@ handle to distinguish the new buffer from the existing."
(with-current-buffer buffer
(sly-mrepl--read-input-ring)
(setq header-line-format nil)
+ (setq sly-current-thread thread-id)
(set (make-local-variable 'sly-mrepl--remote-channel) remote)
(unwind-protect
(run-hooks 'sly-mrepl-hook 'sly-mrepl-runonce-hook)
diff --git a/sly.el b/sly.el
index 4135f36..1b96528 100644
--- a/sly.el
+++ b/sly.el
@@ -1,6 +1,6 @@
;;; sly.el --- Sylvester the Cat's Common Lisp IDE -*- lexical-binding: t; -*-
-;; Version: 1.0.42
+;; Version: 1.0.43
;; URL: https://github.com/joaotavora/sly
;; Package-Requires: ((emacs "24.3"))
;; Keywords: languages, lisp, sly
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [nongnu] elpa/sly 613f597: Fix #394: Revert "Don't force mREPL to use channel thread for everything",
ELPA Syncer <=