From unknown Mon Aug 18 14:25:20 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#48949 <48949@debbugs.gnu.org> To: bug#48949 <48949@debbugs.gnu.org> Subject: Status: 28.0.50; Thread-Process Liberalization Reply-To: bug#48949 <48949@debbugs.gnu.org> Date: Mon, 18 Aug 2025 21:25:20 +0000 retitle 48949 28.0.50; Thread-Process Liberalization reassign 48949 emacs submitter 48949 dick.r.chiang@gmail.com severity 48949 normal tag 48949 notabug thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 10 16:36:58 2021 Received: (at submit) by debbugs.gnu.org; 10 Jun 2021 20:36:58 +0000 Received: from localhost ([127.0.0.1]:37769 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lrRPv-0002YE-K7 for submit@debbugs.gnu.org; Thu, 10 Jun 2021 16:36:58 -0400 Received: from lists.gnu.org ([209.51.188.17]:35490) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lrRPt-0002Y6-JA for submit@debbugs.gnu.org; Thu, 10 Jun 2021 16:36:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60460) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lrRPt-0002MX-Al for bug-gnu-emacs@gnu.org; Thu, 10 Jun 2021 16:36:41 -0400 Received: from mail-qv1-xf32.google.com ([2607:f8b0:4864:20::f32]:39478) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lrRPp-0004a2-LJ for bug-gnu-emacs@gnu.org; Thu, 10 Jun 2021 16:36:41 -0400 Received: by mail-qv1-xf32.google.com with SMTP id u14so12520465qvq.6 for ; Thu, 10 Jun 2021 13:36:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:user-agent:mime-version; bh=aaDvMUeNaFfPXTQuO4j2x3P/hO/r4YNxwIqrmg8YqX8=; b=U2V0ftV5Tn69gVKQrzVEBmDlTL9pJJxtwByJo3vhSeKGyWpC0drIb9CtQumUM/MT4B zvrOkXmU7ro+fXx4pDgbOeYaYMNYelf4ShLx8gTj1Gqcf/9HjenrS5DxW4hveV+IS2md XO27PEhuv6Do4xdEhkXeZjr5a/hRg1R0UwJbg42JPqBaufwFQ4/ZGFbdI4FJ05lWV8bo SZxXNKkpHv6jIbj5P0EnagVphJPeb1F9i0TkXUCNnMrBYAbWA/NzX65wqIqz7Vg44A+w jzS2ROHuUC2UZTpjQR3lam7693J0QkkTpen3Cm0A3TWds8cL3Qjo9Tp55xRObVSYmX6A jl5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:user-agent :mime-version; bh=aaDvMUeNaFfPXTQuO4j2x3P/hO/r4YNxwIqrmg8YqX8=; b=cHY+VmemFmS/rL09+eIPI8UdUcFPCZw580ZZfBuqwFEC80RHYWYuB4ZVBZrcRc/nUw ZlRKIzvZsd3lvlu7Nai6ifhVxbE4LFXzFNsmlB5Zj3rQcRmTqa46DXPPRaFSshRB8MTT nmCs/Ki8GvDFQPa9B9NVmfPzd2eof8ggkqj/44DFlPo43xJV7lWzrYnXc2NFQiMSFq5T Zsjux4Y3bs/V8Ohymw6uKW9mb+oLacGtxyPj9JlIE6jSfUIGfntfIM3utFn6ZiiaeBB2 7QHqtMsTatlisF2ve441qauwy5mJFS9TArJruFdpjwV1rSSjndaNeJvzY0Ey5UAuw75F WWFA== X-Gm-Message-State: AOAM533mkOQC18WHaU7S90xUJe2bQg56rbLYP9+AkSJfg1sp+830jHJ8 Tk7ITNLZrZLfgeICruOdk/ipLmzThPI= X-Google-Smtp-Source: ABdhPJyptqhiv+wFghAApOvkdIgFlTDSw3FJ4hpfbpndSrX6wRVXa1UXpE1FFtEuo6HV8R7hxO9opg== X-Received: by 2002:a0c:e047:: with SMTP id y7mr1468332qvk.46.1623357396485; Thu, 10 Jun 2021 13:36:36 -0700 (PDT) Received: from localhost (pool-71-190-212-171.nycmny.fios.verizon.net. [71.190.212.171]) by smtp.gmail.com with ESMTPSA id h5sm3101710qkg.122.2021.06.10.13.36.34 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 10 Jun 2021 13:36:35 -0700 (PDT) From: dick.r.chiang@gmail.com To: bug-gnu-emacs@gnu.org Subject: 28.0.50; Thread-Process Liberalization Date: Thu, 10 Jun 2021 16:36:34 -0400 Message-ID: <877dj1pict.fsf@dick> User-Agent: Gnus/5.14 (Gnus v5.14pre) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=2607:f8b0:4864:20::f32; envelope-from=dick.r.chiang@gmail.com; helo=mail-qv1-xf32.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --=-=-= Content-Type: text/plain Without this patch, threaded nnimap painfully starts a new imap connection with every refresh. --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=0001-Lift-a-2012-process-locked-to-thread-restriction.patch >From 6e9c04f4cd6b45aec319dad9e3dea4b9ec034c6b Mon Sep 17 00:00:00 2001 From: dickmao Date: Thu, 10 Jun 2021 16:19:16 -0400 Subject: [PATCH] Lift a 2012 "process locked to thread" restriction Remove an unexplained error that forbade a thread from accepting output from a process it didn't start. * src/process.c (Faccept_process_output): remove the error (wait_reading_process_output): remove eassert to the same effect * test/src/thread-tests.el (threads-test-channel): add (threads-test-channel-send): add (threads-test-channel-recv): add (threads-signal-early): add (threads-test-bug33073): add (threads-test-bug36609-signal): add (threads-test-glib-lock): add (threads-test-promiscuous-process): add --- src/process.c | 29 +--------- test/src/thread-tests.el | 112 ++++++++++++++++++++++++++++++++++++++- 2 files changed, 112 insertions(+), 29 deletions(-) diff --git a/src/process.c b/src/process.c index c354f3a90d..df6c8e38a6 100644 --- a/src/process.c +++ b/src/process.c @@ -4728,27 +4728,6 @@ DEFUN ("accept-process-output", Faccept_process_output, Saccept_process_output, intmax_t secs; int nsecs; - if (! NILP (process)) - { - CHECK_PROCESS (process); - struct Lisp_Process *proc = XPROCESS (process); - - /* Can't wait for a process that is dedicated to a different - thread. */ - if (!NILP (proc->thread) && !EQ (proc->thread, Fcurrent_thread ())) - { - Lisp_Object proc_thread_name = XTHREAD (proc->thread)->name; - - error ("Attempt to accept output from process %s locked to thread %s", - SDATA (proc->name), - STRINGP (proc_thread_name) - ? SDATA (proc_thread_name) - : SDATA (Fprin1_to_string (proc->thread, Qt))); - } - } - else - just_this_one = Qnil; - if (!NILP (millisec)) { /* Obsolete calling convention using integers rather than floats. */ CHECK_FIXNUM (millisec); @@ -4786,14 +4765,14 @@ DEFUN ("accept-process-output", Faccept_process_output, Saccept_process_output, else wrong_type_argument (Qnumberp, seconds); } - else if (! NILP (process)) + else if (!NILP (process)) nsecs = 0; return ((wait_reading_process_output (secs, nsecs, 0, 0, Qnil, !NILP (process) ? XPROCESS (process) : NULL, - (NILP (just_this_one) ? 0 + ((NILP (process) || NILP (just_this_one)) ? 0 : !FIXNUMP (just_this_one) ? 1 : -1)) <= 0) ? Qnil : Qt); @@ -5156,10 +5135,6 @@ wait_reading_process_output (intmax_t time_limit, int nsecs, int read_kbd, /* Close to the current time if known, an invalid timespec otherwise. */ struct timespec now = invalid_timespec (); - eassert (wait_proc == NULL - || NILP (wait_proc->thread) - || XTHREAD (wait_proc->thread) == current_thread); - FD_ZERO (&Available); FD_ZERO (&Writeok); diff --git a/test/src/thread-tests.el b/test/src/thread-tests.el index fc7bc7441b..6bafdb1d29 100644 --- a/test/src/thread-tests.el +++ b/test/src/thread-tests.el @@ -20,6 +20,8 @@ ;;; Code: (require 'thread) +(require 'eieio) +(require 'ring) ;; Declare the functions in case Emacs has been configured --without-threads. (declare-function all-threads "thread.c" ()) @@ -42,6 +44,26 @@ (declare-function thread-yield "thread.c" ()) (defvar main-thread) +(defclass threads-test-channel () + ((condition :initarg :condition :type condition-variable) + (msg-queue :initarg :msg-queue :type ring))) + +(cl-defgeneric threads-test-channel-send ((channel threads-test-channel) message) + (with-slots (condition msg-queue) channel + (with-mutex (condition-mutex condition) + (while (<= (ring-size msg-queue) (ring-length msg-queue)) + (condition-wait condition)) + (ring-insert msg-queue message) + (condition-notify condition t)))) + +(cl-defgeneric threads-test-channel-recv ((channel threads-test-channel)) + (with-slots (condition msg-queue) channel + (with-mutex (condition-mutex condition) + (while (ring-empty-p msg-queue) + (condition-wait condition)) + (prog1 (ring-remove msg-queue) + (condition-notify condition t))))) + (ert-deftest threads-is-one () "Test for existence of a thread." (skip-unless (featurep 'threads)) @@ -318,7 +340,7 @@ threads-signal-early (make-thread (lambda () (while t (thread-yield)))))) (thread-signal thread 'error nil) - (sit-for 1) + (funcall (if noninteractive #'sit-for #'sleep-for) 1) (should-not (thread-live-p thread)) (should (equal (thread-last-error) '(error))))) @@ -389,7 +411,93 @@ threads-condvar-wait (should (equal (thread-last-error) '(error "Die, die, die!"))))) (ert-deftest threads-test-bug33073 () + (skip-unless (featurep 'threads)) (let ((th (make-thread 'ignore))) (should-not (equal th main-thread)))) -;;; threads.el ends here +(ert-deftest threads-test-bug36609-signal () + "Would only fail under TEST_INTERACTIVE=yes, and not every time. +The failure manifests only by being unable to exit the interactive emacs." + (skip-unless (featurep 'threads)) + (let* ((cv (make-condition-variable (make-mutex) "CV")) + condition + (notify (lambda () + (sleep-for 1) ;; let wait() start spinning first + (with-mutex (condition-mutex cv) + (setq condition t) + (condition-notify cv)))) + (wait (lambda () (with-mutex (condition-mutex cv) + (while (not condition) + (condition-wait cv))))) + (herring (make-thread (apply-partially #'sleep-for 1000) "unrelated"))) + ;; herring is a non-main thread that, if the bug is still present, + ;; could assume the glib context lock when the main thread executes wait() + (make-thread notify "notify") + (funcall wait) + (thread-signal herring 'quit nil))) + +(ert-deftest threads-test-glib-lock () + "Would only fail under TEST_INTERACTIVE=yes, and not every time. +The failure manifests only by being unable to exit the interactive emacs." + (skip-unless (featurep 'threads)) + (cl-macrolet ((run-thread + (name what) + `(make-thread + (lambda () + (sleep-for (1+ (random 3))) + (funcall ,what)) + ,name))) + (let* ((n 3) + (capacity 1) + (channel (make-instance + 'threads-test-channel + :condition (make-condition-variable (make-mutex) "channel") + :msg-queue (make-ring capacity)))) + (dotimes (i n) + (let ((send-name (format "send-%d" (1+ i))) + (recv-name (format "recv-%d" (- n i)))) + (run-thread send-name + (lambda () (threads-test-channel-send channel 42))) + (run-thread recv-name + (lambda () (threads-test-channel-recv channel)))))))) + +(ert-deftest threads-test-promiscuous-process () + "Can't we `accept-process-output' of a process started by another thread? +For whatever reason, in 2012, tromey inserted an assertion forbidding this. +We test flouting that edict here." + (skip-unless (featurep 'threads)) + (thread-last-error t) + (let* ((thread-tests-main (get-buffer-create "thread-tests-main" t)) + (buffers (list thread-tests-main)) + (start-proc (lambda (n b) + (apply #'start-process n b "cat" (split-string "/dev/urandom")))) + (n 3)) + (funcall start-proc "threads-tests-main" (car buffers)) + (dotimes (i (1- n)) + (push (get-buffer-create (format "thread-tests-%d" i) t) buffers) + (make-thread (apply-partially start-proc + (format "thread-tests-%d" i) + (car buffers)))) + (let ((procs (mapcar #'get-buffer-process buffers))) + (dotimes (i (1- n)) + (make-thread + (lambda () + (cl-loop repeat 5 + do (accept-process-output + (nth (random (length procs)) procs) + 0.2 + nil + t))) + (format "thread-tests-%d" i))) + (should (cl-loop repeat 20 + unless (cl-some + (lambda (thr) + (cl-search "thread-tests-" (thread-name thr))) + (all-threads)) + return t + do (accept-process-output + (nth (random (length procs)) procs) 1.0) + finally return nil))) + (mapc (lambda (b) (kill-buffer b)) buffers)) + (should-not (thread-last-error t))) +;;; thread-tests.el ends here -- 2.26.2 --=-=-= Content-Type: text/plain In GNU Emacs 28.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.22.30, cairo version 1.15.10) of 2021-06-09 built on dick Repository revision: 6dffe81dd7a91b6ed61e6e9a0e523587f394744c Repository branch: gnus-dev-28 Windowing system distributor 'The X.Org Foundation', version 11.0.11906000 System Description: Ubuntu 18.04.4 LTS Configured using: 'configure --prefix=/home/dick/.local' Configured features: CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBSELINUX LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: ELisp/d Minor modes in effect: async-bytecomp-package-mode: t global-git-commit-mode: t magit-auto-revert-mode: t paredit-mode: t show-paren-mode: t projectile-mode: t flx-ido-mode: t override-global-mode: t shell-dirtrack-mode: t beacon-mode: t global-hl-line-mode: t winner-mode: t tooltip-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: /home/dick/ESS/lisp/obsolete/ess-swv hides /home/dick/ESS/lisp/ess-swv /home/dick/ESS/lisp/obsolete/ess-rutils hides /home/dick/ESS/lisp/ess-rutils /home/dick/ESS/lisp/obsolete/ess-noweb hides /home/dick/ESS/lisp/ess-noweb /home/dick/ESS/lisp/obsolete/mouseme hides /home/dick/ESS/lisp/mouseme /home/dick/ESS/lisp/obsolete/ess-mouse hides /home/dick/ESS/lisp/ess-mouse /home/dick/ESS/lisp/obsolete/ess-noweb-mode hides /home/dick/ESS/lisp/ess-noweb-mode /home/dick/ESS/lisp/obsolete/make-regexp hides /home/dick/ESS/lisp/make-regexp /home/dick/ESS/lisp/obsolete/ess-r-a hides /home/dick/ESS/lisp/ess-r-a /home/dick/ESS/lisp/obsolete/ess-noweb-font-lock-mode hides /home/dick/ESS/lisp/ess-noweb-font-lock-mode /home/dick/gomacro-mode/gomacro-mode hides /home/dick/.emacs.d/elpa/gomacro-mode-20200326.1103/gomacro-mode /home/dick/ESS/lisp/julia-mode hides /home/dick/.emacs.d/elpa/julia-mode-20200717.1915/julia-mode /home/dick/ESS/lisp/julia-mode-latexsubs hides /home/dick/.emacs.d/elpa/julia-mode-20200717.1915/julia-mode-latexsubs /home/dick/.emacs.d/elpa/hydra-20170924.2259/lv hides /home/dick/.emacs.d/elpa/lv-20191106.1238/lv /home/dick/org-gcal.el/org-gcal hides /home/dick/.emacs.d/elpa/org-gcal-0.3/org-gcal /home/dick/.emacs.d/elpa/async-20200113.1745/async-autoloads hides /home/dick/.local/share/emacs/site-lisp/emacs-async/async-autoloads /home/dick/.emacs.d/elpa/async-20200113.1745/async-bytecomp hides /home/dick/.local/share/emacs/site-lisp/emacs-async/async-bytecomp /home/dick/.emacs.d/elpa/async-20200113.1745/smtpmail-async hides /home/dick/.local/share/emacs/site-lisp/emacs-async/smtpmail-async /home/dick/.emacs.d/elpa/async-20200113.1745/dired-async hides /home/dick/.local/share/emacs/site-lisp/emacs-async/dired-async /home/dick/.emacs.d/elpa/async-20200113.1745/async hides /home/dick/.local/share/emacs/site-lisp/emacs-async/async /home/dick/.emacs.d/elpa/async-20200113.1745/async-pkg hides /home/dick/.local/share/emacs/site-lisp/emacs-async/async-pkg /home/dick/.emacs.d/lisp/json hides /home/dick/gnus/lisp/json /home/dick/.emacs.d/elpa/transient-20210221.2251/transient hides /home/dick/gnus/lisp/transient /home/dick/.emacs.d/elpa/org-9.4.5/ob-css hides /home/dick/gnus/lisp/org/ob-css /home/dick/.emacs.d/elpa/org-9.4.5/ox-texinfo hides /home/dick/gnus/lisp/org/ox-texinfo /home/dick/.emacs.d/elpa/org-9.4.5/org-plot hides /home/dick/gnus/lisp/org/org-plot /home/dick/.emacs.d/elpa/org-9.4.5/ob-eval hides /home/dick/gnus/lisp/org/ob-eval /home/dick/.emacs.d/elpa/org-9.4.5/ob-ref hides /home/dick/gnus/lisp/org/ob-ref /home/dick/.emacs.d/elpa/org-9.4.5/org-crypt hides /home/dick/gnus/lisp/org/org-crypt /home/dick/.emacs.d/elpa/org-9.4.5/ob-tangle hides /home/dick/gnus/lisp/org/ob-tangle /home/dick/.emacs.d/elpa/org-9.4.5/ob-asymptote hides /home/dick/gnus/lisp/org/ob-asymptote /home/dick/.emacs.d/elpa/org-9.4.5/ol-w3m hides /home/dick/gnus/lisp/org/ol-w3m /home/dick/.emacs.d/elpa/org-9.4.5/ob-hledger hides /home/dick/gnus/lisp/org/ob-hledger /home/dick/.emacs.d/elpa/org-9.4.5/ob-forth hides /home/dick/gnus/lisp/org/ob-forth /home/dick/.emacs.d/elpa/org-9.4.5/org-mouse hides /home/dick/gnus/lisp/org/org-mouse /home/dick/.emacs.d/elpa/org-9.4.5/org-indent hides /home/dick/gnus/lisp/org/org-indent /home/dick/.emacs.d/elpa/org-9.4.5/org-attach-git hides /home/dick/gnus/lisp/org/org-attach-git /home/dick/.emacs.d/elpa/org-9.4.5/org-element hides /home/dick/gnus/lisp/org/org-element /home/dick/.emacs.d/elpa/org-9.4.5/ol-mhe hides /home/dick/gnus/lisp/org/ol-mhe /home/dick/.emacs.d/elpa/org-9.4.5/org-footnote hides /home/dick/gnus/lisp/org/org-footnote /home/dick/.emacs.d/elpa/org-9.4.5/ob-stan hides /home/dick/gnus/lisp/org/ob-stan /home/dick/.emacs.d/elpa/org-9.4.5/ob-perl hides /home/dick/gnus/lisp/org/ob-perl /home/dick/.emacs.d/elpa/org-9.4.5/org-timer hides /home/dick/gnus/lisp/org/org-timer /home/dick/.emacs.d/elpa/org-9.4.5/org-table hides /home/dick/gnus/lisp/org/org-table /home/dick/.emacs.d/elpa/org-9.4.5/org-keys hides /home/dick/gnus/lisp/org/org-keys /home/dick/.emacs.d/elpa/org-9.4.5/org-colview hides /home/dick/gnus/lisp/org/org-colview /home/dick/.emacs.d/elpa/org-9.4.5/ol hides /home/dick/gnus/lisp/org/ol /home/dick/.emacs.d/elpa/org-9.4.5/org-entities hides /home/dick/gnus/lisp/org/org-entities /home/dick/.emacs.d/elpa/org-9.4.5/org-src hides /home/dick/gnus/lisp/org/org-src /home/dick/.emacs.d/elpa/org-9.4.5/ob-js hides /home/dick/gnus/lisp/org/ob-js /home/dick/.emacs.d/elpa/org-9.4.5/org hides /home/dick/gnus/lisp/org/org /home/dick/.emacs.d/elpa/org-9.4.5/ob-makefile hides /home/dick/gnus/lisp/org/ob-makefile /home/dick/.emacs.d/elpa/org-9.4.5/ob-io hides /home/dick/gnus/lisp/org/ob-io /home/dick/.emacs.d/elpa/org-9.4.5/org-refile hides /home/dick/gnus/lisp/org/org-refile /home/dick/.emacs.d/elpa/org-9.4.5/org-clock hides /home/dick/gnus/lisp/org/org-clock /home/dick/.emacs.d/elpa/org-9.4.5/ob-dot hides /home/dick/gnus/lisp/org/ob-dot /home/dick/.emacs.d/elpa/org-9.4.5/ob-exp hides /home/dick/gnus/lisp/org/ob-exp /home/dick/.emacs.d/elpa/org-9.4.5/org-compat hides /home/dick/gnus/lisp/org/org-compat /home/dick/.emacs.d/elpa/org-9.4.5/ob-maxima hides /home/dick/gnus/lisp/org/ob-maxima /home/dick/.emacs.d/elpa/org-9.4.5/ob-C hides /home/dick/gnus/lisp/org/ob-C /home/dick/.emacs.d/elpa/org-9.4.5/org-tempo hides /home/dick/gnus/lisp/org/org-tempo /home/dick/.emacs.d/elpa/org-9.4.5/ox-md hides /home/dick/gnus/lisp/org/ox-md /home/dick/.emacs.d/elpa/org-9.4.5/ob-screen hides /home/dick/gnus/lisp/org/ob-screen /home/dick/.emacs.d/elpa/org-9.4.5/ob-lua hides /home/dick/gnus/lisp/org/ob-lua /home/dick/.emacs.d/elpa/org-9.4.5/ob-matlab hides /home/dick/gnus/lisp/org/ob-matlab /home/dick/.emacs.d/elpa/org-9.4.5/ob-groovy hides /home/dick/gnus/lisp/org/ob-groovy /home/dick/.emacs.d/elpa/org-9.4.5/ol-docview hides /home/dick/gnus/lisp/org/ol-docview /home/dick/.emacs.d/elpa/org-9.4.5/ob-ebnf hides /home/dick/gnus/lisp/org/ob-ebnf /home/dick/.emacs.d/elpa/org-9.4.5/ob-sed hides /home/dick/gnus/lisp/org/ob-sed /home/dick/.emacs.d/elpa/org-9.4.5/ox-html hides /home/dick/gnus/lisp/org/ox-html /home/dick/.emacs.d/elpa/org-9.4.5/ob-emacs-lisp hides /home/dick/gnus/lisp/org/ob-emacs-lisp /home/dick/.emacs.d/elpa/org-9.4.5/ol-bbdb hides /home/dick/gnus/lisp/org/ol-bbdb /home/dick/.emacs.d/elpa/org-9.4.5/org-macs hides /home/dick/gnus/lisp/org/org-macs /home/dick/.emacs.d/elpa/org-9.4.5/org-lint hides /home/dick/gnus/lisp/org/org-lint /home/dick/.emacs.d/elpa/org-9.4.5/org-loaddefs hides /home/dick/gnus/lisp/org/org-loaddefs /home/dick/.emacs.d/elpa/org-9.4.5/ob-scheme hides /home/dick/gnus/lisp/org/ob-scheme /home/dick/.emacs.d/elpa/org-9.4.5/org-protocol hides /home/dick/gnus/lisp/org/org-protocol /home/dick/.emacs.d/elpa/org-9.4.5/ol-eww hides /home/dick/gnus/lisp/org/ol-eww /home/dick/.emacs.d/elpa/org-9.4.5/ox-beamer hides /home/dick/gnus/lisp/org/ox-beamer /home/dick/.emacs.d/elpa/org-9.4.5/ob-core hides /home/dick/gnus/lisp/org/ob-core /home/dick/.emacs.d/elpa/org-9.4.5/org-agenda hides /home/dick/gnus/lisp/org/org-agenda /home/dick/.emacs.d/elpa/org-9.4.5/ob-plantuml hides /home/dick/gnus/lisp/org/ob-plantuml /home/dick/.emacs.d/elpa/org-9.4.5/ox-publish hides /home/dick/gnus/lisp/org/ox-publish /home/dick/.emacs.d/elpa/org-9.4.5/ol-eshell hides /home/dick/gnus/lisp/org/ol-eshell /home/dick/.emacs.d/elpa/org-9.4.5/ol-rmail hides /home/dick/gnus/lisp/org/ol-rmail /home/dick/.emacs.d/elpa/org-9.4.5/ob-J hides /home/dick/gnus/lisp/org/ob-J /home/dick/.emacs.d/elpa/org-9.4.5/ob-abc hides /home/dick/gnus/lisp/org/ob-abc /home/dick/.emacs.d/elpa/org-9.4.5/ob-awk hides /home/dick/gnus/lisp/org/ob-awk /home/dick/.emacs.d/elpa/org-9.4.5/ob-gnuplot hides /home/dick/gnus/lisp/org/ob-gnuplot /home/dick/.emacs.d/elpa/org-9.4.5/ob-sql hides /home/dick/gnus/lisp/org/ob-sql /home/dick/.emacs.d/elpa/org-9.4.5/ob-python hides /home/dick/gnus/lisp/org/ob-python /home/dick/.emacs.d/elpa/org-9.4.5/ob-octave hides /home/dick/gnus/lisp/org/ob-octave /home/dick/.emacs.d/elpa/org-9.4.5/ox-man hides /home/dick/gnus/lisp/org/ox-man /home/dick/.emacs.d/elpa/org-9.4.5/ol-bibtex hides /home/dick/gnus/lisp/org/ol-bibtex /home/dick/.emacs.d/elpa/org-9.4.5/org-goto hides /home/dick/gnus/lisp/org/org-goto /home/dick/.emacs.d/elpa/org-9.4.5/ob-org hides /home/dick/gnus/lisp/org/ob-org /home/dick/.emacs.d/elpa/org-9.4.5/ob-lob hides /home/dick/gnus/lisp/org/ob-lob /home/dick/.emacs.d/elpa/org-9.4.5/ob-calc hides /home/dick/gnus/lisp/org/ob-calc /home/dick/.emacs.d/elpa/org-9.4.5/org-macro hides /home/dick/gnus/lisp/org/org-macro /home/dick/.emacs.d/elpa/org-9.4.5/ob hides /home/dick/gnus/lisp/org/ob /home/dick/.emacs.d/elpa/org-9.4.5/ol-info hides /home/dick/gnus/lisp/org/ol-info /home/dick/.emacs.d/elpa/org-9.4.5/ox-ascii hides /home/dick/gnus/lisp/org/ox-ascii /home/dick/.emacs.d/elpa/org-9.4.5/ob-clojure hides /home/dick/gnus/lisp/org/ob-clojure /home/dick/.emacs.d/elpa/org-9.4.5/org-inlinetask hides /home/dick/gnus/lisp/org/org-inlinetask /home/dick/.emacs.d/elpa/org-9.4.5/ob-vala hides /home/dick/gnus/lisp/org/ob-vala /home/dick/.emacs.d/elpa/org-9.4.5/ob-ruby hides /home/dick/gnus/lisp/org/ob-ruby /home/dick/.emacs.d/elpa/org-9.4.5/ob-sass hides /home/dick/gnus/lisp/org/ob-sass /home/dick/.emacs.d/elpa/org-9.4.5/org-faces hides /home/dick/gnus/lisp/org/org-faces /home/dick/.emacs.d/elpa/org-9.4.5/org-attach hides /home/dick/gnus/lisp/org/org-attach /home/dick/.emacs.d/elpa/org-9.4.5/ob-lilypond hides /home/dick/gnus/lisp/org/ob-lilypond /home/dick/.emacs.d/elpa/org-9.4.5/org-archive hides /home/dick/gnus/lisp/org/org-archive /home/dick/.emacs.d/elpa/org-9.4.5/ob-shen hides /home/dick/gnus/lisp/org/ob-shen /home/dick/.emacs.d/elpa/org-9.4.5/org-datetree hides /home/dick/gnus/lisp/org/org-datetree /home/dick/.emacs.d/elpa/org-9.4.5/org-id hides /home/dick/gnus/lisp/org/org-id /home/dick/.emacs.d/elpa/org-9.4.5/ob-eshell hides /home/dick/gnus/lisp/org/ob-eshell /home/dick/.emacs.d/elpa/org-9.4.5/ob-sqlite hides /home/dick/gnus/lisp/org/ob-sqlite /home/dick/.emacs.d/elpa/org-9.4.5/ob-picolisp hides /home/dick/gnus/lisp/org/ob-picolisp /home/dick/.emacs.d/elpa/org-9.4.5/org-habit hides /home/dick/gnus/lisp/org/org-habit /home/dick/.emacs.d/elpa/org-9.4.5/org-ctags hides /home/dick/gnus/lisp/org/org-ctags /home/dick/.emacs.d/elpa/org-9.4.5/ol-gnus hides /home/dick/gnus/lisp/org/ol-gnus /home/dick/.emacs.d/elpa/org-9.4.5/ob-java hides /home/dick/gnus/lisp/org/ob-java /home/dick/.emacs.d/elpa/org-9.4.5/ox-latex hides /home/dick/gnus/lisp/org/ox-latex /home/dick/.emacs.d/elpa/org-9.4.5/org-pcomplete hides /home/dick/gnus/lisp/org/org-pcomplete /home/dick/.emacs.d/elpa/org-9.4.5/ob-processing hides /home/dick/gnus/lisp/org/ob-processing /home/dick/.emacs.d/elpa/org-9.4.5/ox-odt hides /home/dick/gnus/lisp/org/ox-odt /home/dick/.emacs.d/elpa/org-9.4.5/org-feed hides /home/dick/gnus/lisp/org/org-feed /home/dick/.emacs.d/elpa/org-9.4.5/ob-ditaa hides /home/dick/gnus/lisp/org/ob-ditaa /home/dick/.emacs.d/elpa/org-9.4.5/ox-org hides /home/dick/gnus/lisp/org/ox-org /home/dick/.emacs.d/elpa/org-9.4.5/ob-coq hides /home/dick/gnus/lisp/org/ob-coq /home/dick/.emacs.d/elpa/org-9.4.5/ob-R hides /home/dick/gnus/lisp/org/ob-R /home/dick/.emacs.d/elpa/org-9.4.5/ob-fortran hides /home/dick/gnus/lisp/org/ob-fortran /home/dick/.emacs.d/elpa/org-9.4.5/ob-haskell hides /home/dick/gnus/lisp/org/ob-haskell /home/dick/.emacs.d/elpa/org-9.4.5/ox-icalendar hides /home/dick/gnus/lisp/org/ox-icalendar /home/dick/.emacs.d/elpa/org-9.4.5/org-num hides /home/dick/gnus/lisp/org/org-num /home/dick/.emacs.d/elpa/org-9.4.5/ob-ledger hides /home/dick/gnus/lisp/org/ob-ledger /home/dick/.emacs.d/elpa/org-9.4.5/ox hides /home/dick/gnus/lisp/org/ox /home/dick/.emacs.d/elpa/org-9.4.5/org-mobile hides /home/dick/gnus/lisp/org/org-mobile /home/dick/.emacs.d/elpa/org-9.4.5/org-duration hides /home/dick/gnus/lisp/org/org-duration /home/dick/.emacs.d/elpa/org-9.4.5/org-list hides /home/dick/gnus/lisp/org/org-list /home/dick/.emacs.d/elpa/org-9.4.5/ob-latex hides /home/dick/gnus/lisp/org/ob-latex /home/dick/.emacs.d/elpa/org-9.4.5/ob-ocaml hides /home/dick/gnus/lisp/org/ob-ocaml /home/dick/.emacs.d/elpa/org-9.4.5/ob-lisp hides /home/dick/gnus/lisp/org/ob-lisp /home/dick/.emacs.d/elpa/org-9.4.5/ob-mscgen hides /home/dick/gnus/lisp/org/ob-mscgen /home/dick/.emacs.d/elpa/org-9.4.5/ob-comint hides /home/dick/gnus/lisp/org/ob-comint /home/dick/.emacs.d/elpa/org-9.4.5/org-capture hides /home/dick/gnus/lisp/org/org-capture /home/dick/.emacs.d/elpa/org-9.4.5/ob-table hides /home/dick/gnus/lisp/org/ob-table /home/dick/.emacs.d/elpa/org-9.4.5/ob-shell hides /home/dick/gnus/lisp/org/ob-shell /home/dick/.emacs.d/elpa/org-9.4.5/ol-irc hides /home/dick/gnus/lisp/org/ol-irc /home/dick/.emacs.d/elpa/org-9.4.5/org-version hides /home/dick/gnus/lisp/org/org-version /home/dick/.emacs.d/elpa/hierarchy-20171221.1151/hierarchy hides /home/dick/gnus/lisp/emacs-lisp/hierarchy Features: (shadow emacsbug deuglify gnus-cus gnus-diary nndiary gnus-html gnus-logic gnus-mh mh-comp mh-scan mh-gnus mh-e mh-compat mh-buffers mh-loaddefs gnus-registry registry eieio-base gnus-salt gnus-uu yenc gnus-vm nnselect gnus-search eww xdg supercite regi elpaso-disc web-server web-server-status-codes ghub-graphql treepy gsexp ghub let-alist elpaso elpaso-admin elpaso-milky elpaso-defs lisp-mnt magit-extras face-remap magit-patch-changelog magit-patch magit-submodule magit-obsolete magit-popup async-bytecomp async magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit magit-repos magit-apply magit-wip magit-log magit-diff git-commit log-edit pcvs-util magit-core magit-autorevert magit-margin magit-transient magit-process with-editor server magit-mode transient magit-git magit-section magit-utils which-func imenu url-queue dumb-jump f vc google-c-style pulse ffap edebug cl-print debug backtrace canlock bbdb-message flyspell ispell footnote vc-git vc-dispatcher bug-reference eieio-opt speedbar ezimage dframe shortdoc help-fns radix-tree qp shr-color gravatar dns smerge-mode diff diff-mode misearch multi-isearch nndoc debbugs-gnu add-log debbugs soap-client rng-xsd rng-dt rng-util xsd-regexp sort smiley mm-archive mail-extr gnus-async gnus-ml gnus-notifications gnus-fun notifications gnus-kill gnus-dup disp-table utf-7 gnutls network-stream url-cache nnfolder nnhackernews nntwitter benchmark nntwitter-api bbdb-gnus gnus-demon nntp nnmairix nnml nnreddit gnus-topic url-http url-auth url-gw nsm virtualenvwrapper gud s json-rpc python tramp-sh tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat ls-lisp gnus-score score-mode gnus-bcklg gnus-srvr gnus-cite bbdb-mua bbdb-com crm bbdb bbdb-site timezone gnus-delay gnus-draft gnus-cache gnus-agent gnus-msg nndraft nnmh use-package use-package-delight use-package-diminish paredit-ext paredit mu4e mu4e-org mu4e-main mu4e-view mu4e-view-gnus gnus-art mm-uu mml2015 mm-view mml-smime smime dig mu4e-view-common mu4e-headers mu4e-compose mu4e-context mu4e-draft mu4e-actions rfc2368 smtpmail sendmail mu4e-mark mu4e-proc mu4e-utils doc-view jka-compr image-mode exif mu4e-lists mu4e-message flow-fill org-tempo tempo org org-macro org-footnote org-pcomplete org-list org-faces org-entities org-version ob-R ob-emacs-lisp ob-ein ein-cell ein-output-area ein-kernel ein-ipdb ein-query ein-events ein-websocket websocket bindat ein-node ewoc ein-log ein-classes ein-core request autorevert filenotify ein ein-utils deferred cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs ob ob-tangle org-src ob-ref ob-lob ob-table ob-exp ob-comint ob-core ob-eval org-table ol org-keys org-compat org-macs org-loaddefs find-func cal-menu calendar cal-loaddefs gnus-sum shr kinsoku svg dom gnus-group mm-url gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo parse-time iso8601 gnus-spec gnus-int gnus-range gnus-win mule-util mu4e-vars message rmc puny rfc822 mml mml-sec epa epg epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader mu4e-meta subed subed-vtt subed-srt subed-common subed-mpv subed-debug subed-config dired-x inf-ruby ruby-mode smie melpa-stats ht dash anaphora a company haskell-interactive-mode haskell-presentation-mode haskell-process haskell-session haskell-compile haskell-mode haskell-cabal haskell-utils haskell-font-lock haskell-indentation haskell-string haskell-sort-imports haskell-lexeme rx haskell-align-imports haskell-complete-module haskell-ghc-support etags fileloop generator dabbrev haskell-customize hydra lv use-package-ensure paren solarized-theme solarized-definitions projectile skeleton ibuf-macs find-dired dired dired-loaddefs ibuf-ext ibuffer ibuffer-loaddefs grep gnus nnheader gnus-util rmail rmail-loaddefs rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils time-date flx-ido flx google-translate-default-ui google-translate-core-ui facemenu color ido google-translate-core google-translate-tk google-translate-backend use-package-bind-key bind-key auto-complete advice popup cus-edit pp cus-load wid-edit ess-r-mode ess-r-flymake flymake-proc flymake warnings thingatpt ess-r-xref xref ess-trns ess-r-package shell pcomplete ess-r-completion ess-roxy ess-r-syntax ess-rd noutline outline hideshow ess-s-lang ess-help ess-mode ess-inf project format-spec ess-tracebug ess ess-utils ess-custom compile text-property-search comint ansi-color emms-player-mplayer emms-player-simple emms emms-compat cl-extra help-mode use-package-core derived beacon easy-mmode pcase hl-line winner ring edmacro kmacro finder-inf json-reformat-autoloads json-snatcher-autoloads sml-mode-autoloads tornado-template-mode-autoloads info package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache json subr-x map url-vars seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib iso-transl tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice button loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 1966291 177326) (symbols 48 63774 69) (strings 32 318465 43584) (string-bytes 1 12735279) (vectors 16 81598) (vector-slots 8 1768056 231765) (floats 8 3308 1653) (intervals 56 13026 601) (buffers 992 53)) --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 11 01:54:00 2021 Received: (at 48949) by debbugs.gnu.org; 11 Jun 2021 05:54:01 +0000 Received: from localhost ([127.0.0.1]:37999 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lra7E-0007WI-Op for submit@debbugs.gnu.org; Fri, 11 Jun 2021 01:54:00 -0400 Received: from eggs.gnu.org ([209.51.188.92]:38928) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lra7C-0007W1-9z for 48949@debbugs.gnu.org; Fri, 11 Jun 2021 01:53:59 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:49842) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lra76-0004MY-MO; Fri, 11 Jun 2021 01:53:52 -0400 Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:2531 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lra76-00030M-5e; Fri, 11 Jun 2021 01:53:52 -0400 Date: Fri, 11 Jun 2021 08:53:39 +0300 Message-Id: <8335tpaqvw.fsf@gnu.org> From: Eli Zaretskii To: dick.r.chiang@gmail.com In-Reply-To: <877dj1pict.fsf@dick> (dick.r.chiang@gmail.com) Subject: Re: bug#48949: 28.0.50; Thread-Process Liberalization References: <877dj1pict.fsf@dick> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 48949 Cc: 48949@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: dick.r.chiang@gmail.com > Date: Thu, 10 Jun 2021 16:36:34 -0400 > > Without this patch, threaded nnimap painfully starts a new imap connection > with every refresh. > > >From 6e9c04f4cd6b45aec319dad9e3dea4b9ec034c6b Mon Sep 17 00:00:00 2001 > From: dickmao > Date: Thu, 10 Jun 2021 16:19:16 -0400 > Subject: [PATCH] Lift a 2012 "process locked to thread" restriction > > Remove an unexplained error that forbade a thread from > accepting output from a process it didn't start. That's a non-starter, sorry. This restriction is one of the design goals, so Emacs behaves here as intended. It is not a bug, at least not where you suggest the fix. From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 11 06:26:37 2021 Received: (at 48949) by debbugs.gnu.org; 11 Jun 2021 10:26:38 +0000 Received: from localhost ([127.0.0.1]:38203 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lreN3-0005q1-Kz for submit@debbugs.gnu.org; Fri, 11 Jun 2021 06:26:37 -0400 Received: from mail-qk1-f175.google.com ([209.85.222.175]:38451) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lreN1-0005po-DZ for 48949@debbugs.gnu.org; Fri, 11 Jun 2021 06:26:35 -0400 Received: by mail-qk1-f175.google.com with SMTP id c138so17518261qkg.5 for <48949@debbugs.gnu.org>; Fri, 11 Jun 2021 03:26:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=V6pEarNKQw+vJTkP7yS8UJqRPgaQa2Pjjqvn1Ysqjbo=; b=bM33kGlpIKK6cmEV6prur0MjKSDpVWoOl9IEaqUDBgDKo4DlmSMYRjApEM3UZwat2I QHRu21L+sJqOGp42R48wi9QIR92ZEnXbqMSl+JNdgFVaBwfz8olHZrk8c4fgtL4bc/CQ jnsqVgXtRJYSO8kdhoTM4Ps1fynxpIMdvmTaE5MNQgoE3dgptzZ/8nYfUO44c+VLLIv4 viSSRzWgpRi56908hwfsO6P0aQwxF0aJj3fvnnyn2em/IjcXN6PXNaXNxSVEMjN2k/C8 N05nTJixxwtzny1cI2T/iRd2MqJVeKt8iCOIYcslefP6mLkdCcOyBxrMNfFr/inP6UyT me8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=V6pEarNKQw+vJTkP7yS8UJqRPgaQa2Pjjqvn1Ysqjbo=; b=EWFTwZl7Fbd1ZcN1BHUvepuAKIql8h1AtLIANYAuksKjx7CThQqZPNEo+hhW9bx35g y7PsR312Sku1a1A6g3C3oI6ssSvf35G1gIh6oP08LZ794m0nTsCymK4tLvj6mkLW5Sxr vnui9hzT2ChvVRNU22cBXY+XfyDxSOzVZiQCa2OvgVr7NSfxjsmqDfex1Km5WGOcGNU9 SnOgIfbHvoxQuBK7JZQ9MXqUTec4l23FXMSechz3KO4ZR+mWAZcsox4HNu8ZbuCBzefD yNmpsoBxn2LoplBrH1bf7PBg7PPhBKKUu7jqcEe7z0nFzpiLR78s3FbmyzK9DfvsAIiA ZEFQ== X-Gm-Message-State: AOAM530Bi3EoURc6MRYOdGhAuDFFnheQmDXiGD1Msi2fSDHtnsFaSm1K L04bidg0cXzz1E7Yl4HyGw0= X-Google-Smtp-Source: ABdhPJzortWdC+/BaAVH0l15mIgQ7W3S0sHLfJj4TFY42YPSIkecxXFSrgeVmG2by+aTFTY8xkWHTg== X-Received: by 2002:a05:620a:e02:: with SMTP id y2mr3088631qkm.54.1623407189769; Fri, 11 Jun 2021 03:26:29 -0700 (PDT) Received: from localhost (pool-71-190-212-171.nycmny.fios.verizon.net. [71.190.212.171]) by smtp.gmail.com with ESMTPSA id m68sm4102457qkb.75.2021.06.11.03.26.29 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 11 Jun 2021 03:26:29 -0700 (PDT) From: dick.r.chiang@gmail.com To: Eli Zaretskii , Lars Ingebrigtsen Subject: Re: bug#48949: 28.0.50; Thread-Process Liberalization References: <877dj1pict.fsf@dick> <8335tpaqvw.fsf@gnu.org> Date: Fri, 11 Jun 2021 06:26:28 -0400 In-Reply-To: <8335tpaqvw.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 11 Jun 2021 08:53:39 +0300") Message-ID: <871r98d7e3.fsf@dick> User-Agent: Gnus/5.14 (Gnus v5.14pre) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 48949 Cc: 48949@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Well, this response and that of #bug36609 effectively puts the kibosh on my dream of Gnus 2.0 (a working version at github.com/dickmao/gnus I run rather delightedly every day). It's a more-than-5000 line change thus far, so given the vigorous pushback on what I considered to be non-controversial changes in #bug48949 and #bug36609, it never really had a chance. Gnus is such an awesome idea, but it is so, so poorly written and obtuse. In fairness to its original authors, I could not have written it better if I were 20yo and worked on it alongside a full-time job. Heck at that age I could barely piece together a sentence, much less write a kitchen-sink messaging system in an impoverished, early implementation of elisp. My narcissism is such that I feel I'm the only person on the planet with the time and skill to "Make Gnus Great (MGG)", not "Great Again" since it was never that. From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 11 07:00:13 2021 Received: (at 48949) by debbugs.gnu.org; 11 Jun 2021 11:00:13 +0000 Received: from localhost ([127.0.0.1]:38216 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lretZ-0006cs-5G for submit@debbugs.gnu.org; Fri, 11 Jun 2021 07:00:13 -0400 Received: from eggs.gnu.org ([209.51.188.92]:38796) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lretV-0006bZ-7F for 48949@debbugs.gnu.org; Fri, 11 Jun 2021 07:00:11 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:41420) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lretP-0006mY-JQ; Fri, 11 Jun 2021 07:00:03 -0400 Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:1618 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lretP-0001vl-2a; Fri, 11 Jun 2021 07:00:03 -0400 Date: Fri, 11 Jun 2021 13:59:51 +0300 Message-Id: <83r1h8acpk.fsf@gnu.org> From: Eli Zaretskii To: dick.r.chiang@gmail.com In-Reply-To: <871r98d7e3.fsf@dick> (dick.r.chiang@gmail.com) Subject: Re: bug#48949: 28.0.50; Thread-Process Liberalization References: <877dj1pict.fsf@dick> <8335tpaqvw.fsf@gnu.org> <871r98d7e3.fsf@dick> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 48949 Cc: larsi@gnus.org, 48949@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: dick.r.chiang@gmail.com > Cc: 48949@debbugs.gnu.org > Date: Fri, 11 Jun 2021 06:26:28 -0400 > > Well, this response and that of #bug36609 effectively puts the kibosh on > my dream of Gnus 2.0 (a working version at github.com/dickmao/gnus I > run rather delightedly every day). It's a more-than-5000 line change thus > far, so given the vigorous pushback on what I considered to be > non-controversial changes in #bug48949 and #bug36609, it never really had a > chance. I don't understand: why being able to wait for a process that is locked to another thread is so important for what you wanted to do? And if it _is_ important, then why not unlock the process, so that its output could be processed by any thread? From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 12 10:51:54 2021 Received: (at 48949) by debbugs.gnu.org; 12 Jun 2021 14:51:54 +0000 Received: from localhost ([127.0.0.1]:41911 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls4zK-0002pK-87 for submit@debbugs.gnu.org; Sat, 12 Jun 2021 10:51:54 -0400 Received: from mail-qv1-f44.google.com ([209.85.219.44]:33404) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls4zJ-0002p7-4V for 48949@debbugs.gnu.org; Sat, 12 Jun 2021 10:51:53 -0400 Received: by mail-qv1-f44.google.com with SMTP id l3so11106885qvl.0 for <48949@debbugs.gnu.org>; Sat, 12 Jun 2021 07:51:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=4cP+Kkt85KVIT5Kg+deyYplndeWsXSjUrdsBYfz3SFA=; b=Ry4cXxLhGnf61lSaxyAbhQyXr/EHYaHkBWbuHU2xs+DB1Ydhv2Li5Hq3LXGRMHJN8x 19OE/ijx/2EE3teb1f/lg9+3NXWobUnZCxk6ALsjIpERNd0KlhiG4oQFreQzY/sQ+WNO opZD8mbTPMulPq2Y4LScY7TaABZtVaDpMJ71S8/cYAWr89nF1y5utg22I/sBgshrbsHQ gjS9RH8S3nzaiCKmW5WEr/sb8EAcLRoedkPlrs36ICdFhr5qh2/Gm/eLK5WAlLmkyw4s blbGmmseBgNXED1dubRJqIz6qeQ2cXjMweJz7omMgaaNfckpi1KfliQbzR6Zrhdhe9AF 5R1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=4cP+Kkt85KVIT5Kg+deyYplndeWsXSjUrdsBYfz3SFA=; b=FWxmjcoRd3TmOPnPKlVhrDomUSSuJrNVSyaXWEtVdnl4uivSnkWXeRy11asExWA/Km /53A8CytDoDwps8LLpjlAMtqU6kHicIFq8W/ewLYryJnEj2K67Mjqax6+8bkY3F6J3id Wm2Y4rHXb4FFcIlCB8hkM7H14r/NrRiSAz0Wp6gb3O375P3h0GpDd1Mrx4S0X2GUAnN0 V1liSctv5r+O0+X2N6+olYN6ghUzNIDiWIAw2Ape82hSwpcZgzonolYBBi32lfJZMi5W Uo4xUVrb6XgByGFz4dDp2Irnu/4tF847HNUVoK9Phue7DlQj8rifvN4qe1Y2FYd5Uxz9 TcQQ== X-Gm-Message-State: AOAM533UxIvEQpkJzJqyoAmFowPABhKJNvWaYJf8hU10P9dI4kqC4W+N CvF2nvhx58dbf9qkIxJsE+4= X-Google-Smtp-Source: ABdhPJx0nsXUPJqK5qXhQCBg3nas9feiuO7Sm075+8GZRGlIY5R2p9gBFqRjvyEMm0z7NBwXiyNC/w== X-Received: by 2002:a05:6214:1021:: with SMTP id k1mr10239575qvr.4.1623509507485; Sat, 12 Jun 2021 07:51:47 -0700 (PDT) Received: from localhost (pool-71-190-212-171.nycmny.fios.verizon.net. [71.190.212.171]) by smtp.gmail.com with ESMTPSA id q190sm6419283qkf.133.2021.06.12.07.51.46 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Sat, 12 Jun 2021 07:51:46 -0700 (PDT) From: dick.r.chiang@gmail.com To: Eli Zaretskii Subject: Re: bug#48949: 28.0.50; Thread-Process Liberalization References: <877dj1pict.fsf@dick> <8335tpaqvw.fsf@gnu.org> <871r98d7e3.fsf@dick> <83r1h8acpk.fsf@gnu.org> Date: Sat, 12 Jun 2021 10:51:45 -0400 In-Reply-To: <83r1h8acpk.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 11 Jun 2021 13:59:51 +0300") Message-ID: <87fsxni1a6.fsf@dick> User-Agent: Gnus/5.14 (Gnus v5.14pre) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 48949 Cc: 48949@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) EZ> why not unlock the process, so that its output could be EZ> processed by any thread? Yes, why don't I just call pset_thread(proc, Qnil) when the mood strikes in process.c? You make it sound as if pset_thread is an exposed defun. Nine years ago, tromey in commit 6c0d5ae declaimed the notion of locking a thread to a process. Other than raising an error when a thread tried to accept output from a process not its own, there appears to my untrained eye no other ramification, good or bad, of pset_thread. From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 12 10:57:00 2021 Received: (at 48949) by debbugs.gnu.org; 12 Jun 2021 14:57:01 +0000 Received: from localhost ([127.0.0.1]:41915 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls54G-0002wc-Qa for submit@debbugs.gnu.org; Sat, 12 Jun 2021 10:57:00 -0400 Received: from mail-qt1-f179.google.com ([209.85.160.179]:34339) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls54F-0002wQ-NX for 48949@debbugs.gnu.org; Sat, 12 Jun 2021 10:57:00 -0400 Received: by mail-qt1-f179.google.com with SMTP id u20so5010605qtx.1 for <48949@debbugs.gnu.org>; Sat, 12 Jun 2021 07:56:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=bCDbo2iaCv/pl4yaPP7vRsRyJ+LpP1mZ5FwYq+oRkok=; b=LskB3Sp33SSdI6LE0TzbIgyOyC+rDwzt24zI35uxUSCg3Ojk24ch4ngJ4sxrLvlltd y0pHp2Mgdc/igoqXSIF0db6sLKGKEw10VeD0440dr5Dqh1EAch7Hr8BlapyUmRkP6LIe bltufzVSCdjOd1U3E1z8CdunJzsOTcf3gRhPTrCyYbSDXvJK4PvDeVaSr6xhTkc0wdoN tKIbI9hQ+VhI9jWAonOCjSgSXkuI71EqrAy4GLmDYjomlNo08vzL2foRi405AgIAaxzb qZGU0L3lZ1mHs3cqoTI8QY41IwffJwJpPMm6N96w3Gh6dFjvDSV3U+vSb/T+l9Nit0s1 wKVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=bCDbo2iaCv/pl4yaPP7vRsRyJ+LpP1mZ5FwYq+oRkok=; b=S/J1R4fSkJ3sYhNTxCmZx9MW5orxQc7YdNjOU0jXMzdafC4RpRn8QltF8JGBowsBOx TJvPCfiBassfn1xMSH2/JjE4ImgXNeotRm3kmz8Kmj+6kZeesgMtfX7nNFwleVPlTiou A2af0dm63L+D1Pgc7x9NT/6F2aD3QYeALcROlCPJaQ1AAGryfZ5R6O0Zm4D1i43REWnS D+MEKuHo/FufoQGNdH6DuUG5cUEs67YY7u10OTsL5/dA/+fYOzsHCgQNsGNSmXsXx5xS VEgnr9zOYoGdazqO5VPSOX1eIuVjEHg5nXfmeYHPAo0z6lc9RNwMbtDdcL3TUhvjmKaw 363g== X-Gm-Message-State: AOAM532RZfYfVL3JYAIvDOAQGprxXcpXAhalvsUJZMKQu9kg3iLi3Ihy X4gIFBu9qkMLCY2fzAIMoEo= X-Google-Smtp-Source: ABdhPJy6Qo9QuBmGYKXEgF6zaqFOV4zWc5WVCE7TLGsA7QCUo+ioWu1f1JQKoDxb9Rkct7CASQH6DQ== X-Received: by 2002:ac8:6f37:: with SMTP id i23mr8887680qtv.376.1623509814217; Sat, 12 Jun 2021 07:56:54 -0700 (PDT) Received: from localhost (pool-71-190-212-171.nycmny.fios.verizon.net. [71.190.212.171]) by smtp.gmail.com with ESMTPSA id k9sm6655516qkh.11.2021.06.12.07.56.53 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Sat, 12 Jun 2021 07:56:53 -0700 (PDT) From: Eli Zaretskii X-Google-Original-From: Eli Zaretskii To: Eli Zaretskii Subject: Re: bug#48949: 28.0.50; Thread-Process Liberalization References: <877dj1pict.fsf@dick> <8335tpaqvw.fsf@gnu.org> <871r98d7e3.fsf@dick> <83r1h8acpk.fsf@gnu.org> <87fsxni1a6.fsf@dick> Date: Sat, 12 Jun 2021 10:56:53 -0400 In-Reply-To: <87fsxni1a6.fsf@dick> (dick r. chiang's message of "Sat, 12 Jun 2021 10:51:45 -0400") Message-ID: <878s3fi11m.fsf@dick> User-Agent: Gnus/5.14 (Gnus v5.14pre) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 48949 Cc: 48949@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) drc> Yes, why don't I just call pset_thread(proc, Qnil) when the mood strikes drc> in process.c? You make it sound as if pset_thread is an exposed defun. Ah, I'm an ass. There is indeed a defun set-process-thread. From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 12 11:01:15 2021 Received: (at control) by debbugs.gnu.org; 12 Jun 2021 15:01:15 +0000 Received: from localhost ([127.0.0.1]:41919 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls58N-00034Z-9T for submit@debbugs.gnu.org; Sat, 12 Jun 2021 11:01:15 -0400 Received: from mail-qk1-f169.google.com ([209.85.222.169]:41851) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls58L-00034K-PN for control@debbugs.gnu.org; Sat, 12 Jun 2021 11:01:14 -0400 Received: by mail-qk1-f169.google.com with SMTP id c124so34153494qkd.8 for ; Sat, 12 Jun 2021 08:01:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=message-id:from:date:to:subject; bh=2u65frN6+yr9SF7u9QDWPFKHa3E5Z9zaW2idjsRQFpA=; b=Z8H6YdpntKo90YiBpBmMxPY49XZCemlz9lKq5EC34aU2dRujuA3O2x3dNuHE2zFshn MJ8KTTNgjx5zn3cjaaOexwzN0qeKCUW6/BzWbMktIAbJRtabPbF4E3HvhdF6oOzYskT5 NdXUuoE8T+NZbrKHpjBpYdHIFuumjZQlqQnhRNNb0FDmuyeg8bwabpMQ7Hq5hIW0iRcU lKhx/SmzT4yyV+kCQLGmEfmh0jyWAbKPf8C5GkAKboksuW8qH6nt5IEix4eqNVbq05QE d1RHcChwMjGuhYfnGCCMxrkWqi/9jWyTiwChRfaIOaQSpTSHMEMUlqkIwQ8GaZetWF5S WBgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:from:date:to:subject; bh=2u65frN6+yr9SF7u9QDWPFKHa3E5Z9zaW2idjsRQFpA=; b=XnMfKpdWAuUBS1slgSbTaRPNLOPMLnVKNyNbGwiL95JOLKjGLFXS0m5I8bbshtarCS DBQ6y1GGlxtGfHXLWcZfRhe9PLLDMNsOZr+UxLoP93hyunfPVwcQROdAzHnlXVIypJc+ tmrjw+IX/Qg7m9U4Igg98CIf2Z9NP7AtVJzAOwehEheI1kbcR81/7ElFBrwDPM38hgX1 NWHR1qmMPoeYk/xN3qh1g410c9ZO/4Iz/PcYeaSDUmpYEbuk4RmsmdDweSNuHFZxn3nN eDKj/s8pCF/H8H31g0SmmvIQ4VndW2NFbO5hbCl0Q8w4X3vSQ9lG+WpUkrUOPgtnQE1h c7mQ== X-Gm-Message-State: AOAM533TSyYHH11IVqlZfKCXOmKp72a9soJmJi7GcsGpOb1i2OtT9N7I pOxnPEEKpgCvfHXdAcXi8UPKdfOTmDY= X-Google-Smtp-Source: ABdhPJzrV4O110QnRkl5qfFUxx/DO7k7jWnBU90T1+Z/GgbEp9N4NbzTD55mIf/kR7PVJI5tCD+1yg== X-Received: by 2002:a05:620a:2118:: with SMTP id l24mr1395785qkl.153.1623510068075; Sat, 12 Jun 2021 08:01:08 -0700 (PDT) Received: from localhost (pool-71-190-212-171.nycmny.fios.verizon.net. [71.190.212.171]) by smtp.gmail.com with ESMTPSA id p21sm6213855qtq.92.2021.06.12.08.01.07 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Sat, 12 Jun 2021 08:01:07 -0700 (PDT) Message-ID: <60c4cc33.1c69fb81.9c585.d2e5@mx.google.com> From: dick.r.chiang@gmail.com X-Google-Original-From: jimmyvalmer@ycombinator.com Date: Sat, 12 Jun 2021 11:01:06 -0400 To: control@debbugs.gnu.org Subject: control message for bug #48949 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 48949 + notabug quit From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 12 11:01:36 2021 Received: (at control) by debbugs.gnu.org; 12 Jun 2021 15:01:36 +0000 Received: from localhost ([127.0.0.1]:41922 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls58i-00035B-GW for submit@debbugs.gnu.org; Sat, 12 Jun 2021 11:01:36 -0400 Received: from mail-qt1-f181.google.com ([209.85.160.181]:37685) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls58f-00034v-Qk for control@debbugs.gnu.org; Sat, 12 Jun 2021 11:01:35 -0400 Received: by mail-qt1-f181.google.com with SMTP id z4so5014697qts.4 for ; Sat, 12 Jun 2021 08:01:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=message-id:from:date:to:subject; bh=8YloOhecmwkZhrV5ua193wvvrts9jJwe/ZdLiaKlOno=; b=BSbRTqx/lZivomVsrEFY9K/EWVDgJQLkOrnW/q2Z0DXGeE2jmlF5k52BLTxyWzobvP 0uRS4bw5Vnw1lXB8edxv1L+Q96MTRgl/+ZgBwPc55qlDIuPXHNbAHB1kybF/y/7AytKc J0Zjde1XKJI2373n6FBlG+vbw2nh6u7OsHDkNGwyLXu5od8+VzV65gBK8RKPryzDyoOy TBCvNp9/CNbqhqHf2JYOoyUNXHxDHWRY9ECgFeCGET8qq1loF6h/1fiTvgeg8W/Phl2F tLHHUsii+6p7GKdpwgD89GAASmJgtwsSf19fkRsQRYqpD2FoFVV4Mbctr6nuwafEKYAL VSug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:from:date:to:subject; bh=8YloOhecmwkZhrV5ua193wvvrts9jJwe/ZdLiaKlOno=; b=OT0Hp07zhQAinDOSdAKK35xaHlElfi4PJvDR6MBQ6Gcos4HV7YGvYP6LKF8uf2K2Db IFp6B8mysPYgjYpbRitqEYPzkP4G6KIQYyYB9Xm4KiMtfYVW032Jt+xKeW5gv/lfsjvL SQQxT8lo7iWQ+lQusHq4M7D+cYOKLu+XB0gpnc4JisOKvrQ8A4MQ6e6DjNtb2/+FsBkj 9yXocSQJn9Tt3mzvPvwcv/LOZwUlRi6/dGV6PMwgUeQzIepO1LFWpk/qmDv5wXI1j1bI S9e9Abr90LbcA8tQhWmwTs/kyCbwFYV0hiWyvbF/3rl56qQYT28WA1+ldzgZU5XyRx1x +erA== X-Gm-Message-State: AOAM530wjhyUbUMuhNk8nPWO0CzojeU4A0U7AlNkgk0U9eMKebyNnONL nSVCcA3lCk1vscWh8M+2QcHHul9M/Ew= X-Google-Smtp-Source: ABdhPJxW55ygr0np7YsOO6Pc0QqVfv8qV2fYSu/Y39IUwaiOQ+Nc0FjtFCxJSUMeUQb0bFHl/BSLhg== X-Received: by 2002:ac8:468a:: with SMTP id g10mr8701621qto.371.1623510088256; Sat, 12 Jun 2021 08:01:28 -0700 (PDT) Received: from localhost (pool-71-190-212-171.nycmny.fios.verizon.net. [71.190.212.171]) by smtp.gmail.com with ESMTPSA id 197sm507661qke.49.2021.06.12.08.01.27 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Sat, 12 Jun 2021 08:01:27 -0700 (PDT) Message-ID: <60c4cc47.1c69fb81.d19e4.2eda@mx.google.com> From: dick.r.chiang@gmail.com X-Google-Original-From: jimmyvalmer@ycombinator.com Date: Sat, 12 Jun 2021 11:01:27 -0400 To: control@debbugs.gnu.org Subject: control message for bug #48949 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 48949 notabug close 48949 quit From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 12 11:10:30 2021 Received: (at 48949) by debbugs.gnu.org; 12 Jun 2021 15:10:30 +0000 Received: from localhost ([127.0.0.1]:41930 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls5HK-0003IV-AL for submit@debbugs.gnu.org; Sat, 12 Jun 2021 11:10:30 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56854) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ls5HI-0003IJ-F7 for 48949@debbugs.gnu.org; Sat, 12 Jun 2021 11:10:28 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:42732) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ls5HB-00021r-Rk; Sat, 12 Jun 2021 11:10:23 -0400 Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:2331 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ls5Gx-000527-3x; Sat, 12 Jun 2021 11:10:17 -0400 Date: Sat, 12 Jun 2021 18:09:57 +0300 Message-Id: <838s3f86gq.fsf@gnu.org> From: Eli Zaretskii To: dick.r.chiang@gmail.com In-Reply-To: <87fsxni1a6.fsf@dick> (dick.r.chiang@gmail.com) Subject: Re: bug#48949: 28.0.50; Thread-Process Liberalization References: <877dj1pict.fsf@dick> <8335tpaqvw.fsf@gnu.org> <871r98d7e3.fsf@dick> <83r1h8acpk.fsf@gnu.org> <87fsxni1a6.fsf@dick> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 48949 Cc: 48949@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: dick.r.chiang@gmail.com > Cc: 48949@debbugs.gnu.org > Date: Sat, 12 Jun 2021 10:51:45 -0400 > > EZ> why not unlock the process, so that its output could be > EZ> processed by any thread? > > Yes, why don't I just call pset_thread(proc, Qnil) when the mood strikes in > process.c? You make it sound as if pset_thread is an exposed defun. No, I meant to use set-process-thread from Lisp. That's what it is for, and this stuff is documented in the ELisp manual. (And I still don't fully understand why you'd need that, but if you really do, you can; no C source-level changes needed.) From unknown Mon Aug 18 14:25:20 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sun, 11 Jul 2021 11:24:07 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator