Lars Ingebrigtsen <larsi@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Stefan Kangas <stefan@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 11 Feb 2022 17:53:23 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 11 12:53:22 2022 Received: from localhost ([127.0.0.1]:60919 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nIa6k-0004I8-KB for submit <at> debbugs.gnu.org; Fri, 11 Feb 2022 12:53:22 -0500 Received: from mail.ericabrahamsen.net ([52.70.2.18]:46790) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eric@HIDDEN>) id 1nIa6j-0004Hv-8G for 53877 <at> debbugs.gnu.org; Fri, 11 Feb 2022 12:53:21 -0500 Received: from localhost (97-126-64-167.tukw.qwest.net [97.126.64.167]) (Authenticated sender: eric@HIDDEN) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id 81244FFD93; Fri, 11 Feb 2022 17:53:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericabrahamsen.net; s=mail; t=1644601994; bh=rNPgJ6C8fxhghxNUc/uIL/UtXlzKCNN28f8FjxYST3I=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=yv5DqbBLhvWSVx/RuMc6uzSmZ1NEyT3h1P8dnTo5NQjxw/+iOCvct1fVZGaYYh7Qc /2cCOWok0gk5SLAF4A106S5DyWgjcsMQLKmXKyrhgD1UmUaE1c1XEdTLoI0eDVIQQF vZ74RUmwe4Pp4agEboYgbuRvUn0jsspYja/Uh0t8= From: Eric Abrahamsen <eric@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> <877da4cjdg.fsf@HIDDEN> <87o83gq9q5.fsf@HIDDEN> <87o83faybg.fsf@HIDDEN> <87iltma8wj.fsf@HIDDEN> <87sfspacwi.fsf@HIDDEN> Date: Fri, 11 Feb 2022 09:53:12 -0800 In-Reply-To: <87sfspacwi.fsf@HIDDEN> (Manuel Giraud's message of "Fri, 11 Feb 2022 11:57:49 +0100") Message-ID: <87bkzd8f3r.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Manuel Giraud <manuel@HIDDEN> writes: > Eric Abrahamsen <eric@HIDDEN> writes: > > [...] > >> Are you sure the original approach won't work? If you set >> `nnmail-article-buffer' locally within the thread function, it seems to >> work okay. Is this not workable: > > Hi Eric, > > I was trying just something different. The process/sentinel seems like a > good (established) way to do this in emacs without having to rely on > handling threads yielding (when?). Maybe it won't be fruitful though =F0= =9F=98=85 Without having actually gone and written the code myself... my guess is these two approaches will end up being pretty equivalent in design, only the details will vary. You're going to launch several "things" in a loop (the things being either threads, or processes+sentinels), then block the rest of Emacs while you wait for all of the "things" to be done, then carry on with main function execution. Gnus is not set up for these "things" to return at random intervals, ie we cannot "fire and forget". Not to mention that the "things" will block Emacs while running elisp, but relinquish control while receiving process output, which I think would lead to a kind of "stuttering" responsiveness that would be more annoying than simply blocking Emacs altogether. No matter which approach you take it will probably have to wait for all the things to return before it continues, so the only advantage is in being able to "layer" multiple process io and save a little time there. The Trio python library has a neat concept called nurseries, which guarantees that multiple child threads all have to return before main code execution continues, that might be interesting to look at: https://trio.readthedocs.io/en/latest/reference-core.html#nurseries-and-spa= wning
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 11 Feb 2022 10:58:02 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 11 05:58:02 2022 Received: from localhost ([127.0.0.1]:58421 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nITco-0005LC-6Q for submit <at> debbugs.gnu.org; Fri, 11 Feb 2022 05:58:02 -0500 Received: from ledu-giraud.fr ([51.159.28.247]:38126) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <manuel@HIDDEN>) id 1nITcm-0005Kk-3G for 53877 <at> debbugs.gnu.org; Fri, 11 Feb 2022 05:58:01 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=rsa; bh=dgsJAI4eglGjJyGV 74k/4paR1GvKsm4Gb8NZFtKP5ds=; h=in-reply-to:date:references:subject: cc:to:from; d=ledu-giraud.fr; b=hWI0SaB9ImfzMDR5bcJ1jHWmuppouL7L8knOX8 zTV0GcOnTrk66Gc5hiMtsjug5NoPZmUj7aVsRCWwEu9nsZwVNj1DZOyHIvUlhAnI45rJig r7MiyeXAOC7gHJFqBk25kGSnlq0R9ii9Fwbk+RHIuSc1qAAodOXbr3bABARxEmG3jAqrvc IMo4CvbykTCNpewA8/T7gUt4FWPm5dW4q2niszOAL+JN1fgfKfT9+6cPa34E3mn1Ez4dsl e2FOtRwlwyuGKUvgnpgMuvDE6vwQsOE6HNflJNd+30i7cJffhAFEq+dCm8I0ulu4iJQhjm A1OG3Ze7+ZzO6LjoxSsFay8w== Received: from elite.giraud (<unknown> [10.1.1.1]) by ledu-giraud.fr (OpenSMTPD) with ESMTPSA id 7537e8e1 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Fri, 11 Feb 2022 11:57:56 +0100 (CET) From: Manuel Giraud <manuel@HIDDEN> To: Eric Abrahamsen <eric@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> <877da4cjdg.fsf@HIDDEN> <87o83gq9q5.fsf@HIDDEN> <87o83faybg.fsf@HIDDEN> <87iltma8wj.fsf@HIDDEN> Date: Fri, 11 Feb 2022 11:57:49 +0100 In-Reply-To: <87iltma8wj.fsf@HIDDEN> (Eric Abrahamsen's message of "Thu, 10 Feb 2022 10:11:56 -0800") Message-ID: <87sfspacwi.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Eric Abrahamsen <eric@HIDDEN> writes: [...] > Are you sure the original approach won't work? If you set > `nnmail-article-buffer' locally within the thread function, it seems to > work okay. Is this not workable: Hi Eric, I was trying just something different. The process/sentinel seems like a good (established) way to do this in emacs without having to rely on handling threads yielding (when?). Maybe it won't be fruitful though =F0=9F= =98=85 --=20 Manuel Giraud
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 10 Feb 2022 20:37:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 10 15:37:49 2022 Received: from localhost ([127.0.0.1]:57290 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nIGCL-00033G-3K for submit <at> debbugs.gnu.org; Thu, 10 Feb 2022 15:37:49 -0500 Received: from mail.ericabrahamsen.net ([52.70.2.18]:51608) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eric@HIDDEN>) id 1nIGCK-000332-1H for 53877 <at> debbugs.gnu.org; Thu, 10 Feb 2022 15:37:48 -0500 Received: from localhost (c-71-197-232-41.hsd1.wa.comcast.net [71.197.232.41]) (Authenticated sender: eric@HIDDEN) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id 094FCFA08F; Thu, 10 Feb 2022 20:37:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericabrahamsen.net; s=mail; t=1644525462; bh=uNJOS14U3Sz3f7izxx69cIkJHp3uw3j+oEYuHDqSBlc=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=PwjtUXYTz+YxGvNppP/cawux+e+AkfP8u87saxl+mInT88odnYNV7T7CWJAFOiOgM 3rZ/vg5jpz8rzfOXXtY2eZdjSf/gdIRQVol5yWZp+GT8l3Sv4pvlwEX52QVbNQlWBB eJx+kU8IxC4b+oj9zxEdpDHfDRK5DmS3dP0+HQvo= From: Eric Abrahamsen <eric@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> <877da4cjdg.fsf@HIDDEN> <87o83gq9q5.fsf@HIDDEN> <87o83faybg.fsf@HIDDEN> <87iltma8wj.fsf@HIDDEN> <837da2tqof.fsf@HIDDEN> Date: Thu, 10 Feb 2022 12:37:40 -0800 In-Reply-To: <837da2tqof.fsf@HIDDEN> (Eli Zaretskii's message of "Thu, 10 Feb 2022 22:25:20 +0200") Message-ID: <87sfsq8nl7.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org, larsi@HIDDEN, manuel@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Eli Zaretskii <eliz@HIDDEN> writes: >> From: Eric Abrahamsen <eric@HIDDEN> >> Date: Thu, 10 Feb 2022 10:11:56 -0800 >> Cc: 53877 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> >> >> >> (defun test-threads-outer () >> (dolist (label (list "one" "two" "three")) >> (make-thread (lambda () (test-threads-inner label)) label))) >> >> (defun test-threads-inner (label) >> (let ((nnmail-article-buffer (format "nnmail-incoming-%s" label))) >> (with-current-buffer (get-buffer-create nnmail-article-buffer) >> (insert label)))) >> >> That creates three separate buffers, named correctly, and holding the >> correct text. > > But only if you don't do anything in the main thread, just let it sit > idling. Right? Otherwise those other threads won't get an > opportunity to run. Sure, in real life we'd be yielding to these threads and joining afterwards before going on with the rest of the code. This example was just to show that having different locally-bound values for `nnmail-article-buffer' in each thread was a viable approach.
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 10 Feb 2022 20:25:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 10 15:25:49 2022 Received: from localhost ([127.0.0.1]:57239 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nIG0i-0002fL-PC for submit <at> debbugs.gnu.org; Thu, 10 Feb 2022 15:25:49 -0500 Received: from eggs.gnu.org ([209.51.188.92]:49574) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1nIG0g-0002f5-Lp for 53877 <at> debbugs.gnu.org; Thu, 10 Feb 2022 15:25:47 -0500 Received: from [2001:470:142:3::e] (port=35476 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1nIG0M-0003mw-Sl; Thu, 10 Feb 2022 15:25:39 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=A8NU4qh3yPKR6gAAt93l9BjexpDX2ZecaqaJuh+HGOM=; b=aXW1afI2hKF4 v9KV1xbI/18UJj79CQAILScHekSSQazzujCX4YH8rAqthwVOu7N8XDNLCsd1u8Qtm1RaadKAc1rlC IQRC94lKlTC5Mg56XoKpqKBMLzIZTXalqZgNEUnL1MZHDRbgHeeo4cHA/54aQh5hk/ld56gzfK8MB ALVoYOB/fuHq4yHsDhZphBMzih+CPn251FuT9XUOMnh6BOE57GoAW2k1gLx9Hd8c14LVa5a2d8MFF OvmyaeXesLzjV/2+OzkzA1Of/yTQe1eG/dAgTWqgOrvKXUU63FisY6UX8sNwiy1iZkHHdoYAuftv7 af5rr+MXXDRGI0RdmBPOrw==; Received: from [87.69.77.57] (port=3391 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1nIG0J-00044h-VQ; Thu, 10 Feb 2022 15:25:25 -0500 Date: Thu, 10 Feb 2022 22:25:20 +0200 Message-Id: <837da2tqof.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Eric Abrahamsen <eric@HIDDEN> In-Reply-To: <87iltma8wj.fsf@HIDDEN> (message from Eric Abrahamsen on Thu, 10 Feb 2022 10:11:56 -0800) Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> <877da4cjdg.fsf@HIDDEN> <87o83gq9q5.fsf@HIDDEN> <87o83faybg.fsf@HIDDEN> <87iltma8wj.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org, larsi@HIDDEN, manuel@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Eric Abrahamsen <eric@HIDDEN> > Date: Thu, 10 Feb 2022 10:11:56 -0800 > Cc: 53877 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> > > > (defun test-threads-outer () > (dolist (label (list "one" "two" "three")) > (make-thread (lambda () (test-threads-inner label)) label))) > > (defun test-threads-inner (label) > (let ((nnmail-article-buffer (format "nnmail-incoming-%s" label))) > (with-current-buffer (get-buffer-create nnmail-article-buffer) > (insert label)))) > > That creates three separate buffers, named correctly, and holding the > correct text. But only if you don't do anything in the main thread, just let it sit idling. Right? Otherwise those other threads won't get an opportunity to run.
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 10 Feb 2022 18:26:04 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 10 13:26:04 2022 Received: from localhost ([127.0.0.1]:57109 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nIE8q-0005NX-5q for submit <at> debbugs.gnu.org; Thu, 10 Feb 2022 13:26:04 -0500 Received: from mail.ericabrahamsen.net ([52.70.2.18]:46232) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eric@HIDDEN>) id 1nIE8n-0005Mw-8T for 53877 <at> debbugs.gnu.org; Thu, 10 Feb 2022 13:26:02 -0500 Received: from localhost (c-71-197-232-41.hsd1.wa.comcast.net [71.197.232.41]) (Authenticated sender: eric@HIDDEN) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id 76C24FA08F; Thu, 10 Feb 2022 18:25:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericabrahamsen.net; s=mail; t=1644517554; bh=2I163G3qHCeleaMC0t4zGz4+wX1uespfTv+3UWvlgLQ=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=yGoDjcvYMR9UQ3UDyZALXY/tnZegt7yT78yOErS2hKNV2Heio7wI9JMFR8AtX4w09 vexzRYxiummgltcjkLHIEFckCBNqyig4aEso3pEvSXtWWTtKdmlwqX7oJoS7xGl/Du w5gO2XBJRaJOxSBqASj15rQfpGQsgjF0uOmSWsQg= From: Eric Abrahamsen <eric@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> <877da4cjdg.fsf@HIDDEN> <87o83gq9q5.fsf@HIDDEN> <87o83faybg.fsf@HIDDEN> <87iltma8wj.fsf@HIDDEN> Date: Thu, 10 Feb 2022 10:25:52 -0800 In-Reply-To: <87iltma8wj.fsf@HIDDEN> (Eric Abrahamsen's message of "Thu, 10 Feb 2022 10:11:56 -0800") Message-ID: <87a6eya89b.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) On 02/10/22 10:11 AM, Eric Abrahamsen wrote: > On 02/10/22 10:02 AM, Manuel Giraud wrote: >> Eric Abrahamsen <eric@HIDDEN> writes: >> >>> Manuel Giraud <manuel@HIDDEN> writes: >>> >>>> Lars Ingebrigtsen <larsi@HIDDEN> writes: >>>> >>>>> Why can't you bind `nnmail-article-buffer' before calling the splitting >>>>> function? >>>> >>>> I spoke too quickly. The idea was that with a temporay buffer I could >>>> run multiple splitting in "parallel". But rebinding just *one* global >>>> variable won't help much here. >>> >>> Are you sure? AFAIK this was Dick Chiang's approach to threading >>> server updates: let-binding the value of `nntp-server-buffer' within >>> the thread function. As far as I know it worked okay. The splitting >>> function and code run within it will have a separate value of >>> `nnmail-article-buffer'. >> >> I'm trying another approach: seek to the processes in the backend, don't >> wait for them to end but instead attach sentinels for what's left to >> do. Maybe it is not the best approach because Gnus seems to be heavily >> stateful/serial. >> >> I'm not sure about binding in sentinels: do you think it would work as >> binding in threads? > > Are you sure the original approach won't work? If you set > `nnmail-article-buffer' locally within the thread function, it seems to > work okay. Is this not workable: > > (defun test-threads-outer () > (dolist (label (list "one" "two" "three")) > (make-thread (lambda () (test-threads-inner label)) label))) > > (defun test-threads-inner (label) > (let ((nnmail-article-buffer (format "nnmail-incoming-%s" label))) > (with-current-buffer (get-buffer-create nnmail-article-buffer) > (insert label)))) > > That creates three separate buffers, named correctly, and holding the > correct text. Though in this simple example, the copies of the inner function are actually still being executed consecutively, so maybe this doesn't prove anything? I don't have much faith in my reasoning about threads.
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 10 Feb 2022 18:12:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 10 13:12:06 2022 Received: from localhost ([127.0.0.1]:57072 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nIDvJ-0004xL-V9 for submit <at> debbugs.gnu.org; Thu, 10 Feb 2022 13:12:06 -0500 Received: from mail.ericabrahamsen.net ([52.70.2.18]:45614) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eric@HIDDEN>) id 1nIDvH-0004wp-Uc for 53877 <at> debbugs.gnu.org; Thu, 10 Feb 2022 13:12:04 -0500 Received: from localhost (c-71-197-232-41.hsd1.wa.comcast.net [71.197.232.41]) (Authenticated sender: eric@HIDDEN) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id C0B87FA08F; Thu, 10 Feb 2022 18:11:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericabrahamsen.net; s=mail; t=1644516718; bh=xIGQPG4J24jTsw71NlLdU3ri3blVNDj4Rtg4evA/Kys=; h=From:To:Cc:Subject:References:Date:From; b=A2qrFEduVS32wNnKtacTUp4wmt/45LsQR8X30exV4t/wNeBhNanVtstmfxANPyDA/ h0rWKcZizFjGOMJREVOS9mF4/hLN/4g+0bRfT2gPXCparDwipk3PLQiJoQyOp702V1 4MQd3TXy60dfYo7OElW/HgWcOCScOsiyu7trYQ08= From: Eric Abrahamsen <eric@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> <877da4cjdg.fsf@HIDDEN> <87o83gq9q5.fsf@HIDDEN> <87o83faybg.fsf@HIDDEN> Date: Thu, 10 Feb 2022 10:11:56 -0800 Message-ID: <87iltma8wj.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) On 02/10/22 10:02 AM, Manuel Giraud wrote: > Eric Abrahamsen <eric@HIDDEN> writes: > >> Manuel Giraud <manuel@HIDDEN> writes: >> >>> Lars Ingebrigtsen <larsi@HIDDEN> writes: >>> >>>> Why can't you bind `nnmail-article-buffer' before calling the splitting >>>> function? >>> >>> I spoke too quickly. The idea was that with a temporay buffer I could >>> run multiple splitting in "parallel". But rebinding just *one* global >>> variable won't help much here. >> >> Are you sure? AFAIK this was Dick Chiang's approach to threading >> server updates: let-binding the value of `nntp-server-buffer' within >> the thread function. As far as I know it worked okay. The splitting >> function and code run within it will have a separate value of >> `nnmail-article-buffer'. > > I'm trying another approach: seek to the processes in the backend, don't > wait for them to end but instead attach sentinels for what's left to > do. Maybe it is not the best approach because Gnus seems to be heavily > stateful/serial. > > I'm not sure about binding in sentinels: do you think it would work as > binding in threads? Are you sure the original approach won't work? If you set `nnmail-article-buffer' locally within the thread function, it seems to work okay. Is this not workable: (defun test-threads-outer () (dolist (label (list "one" "two" "three")) (make-thread (lambda () (test-threads-inner label)) label))) (defun test-threads-inner (label) (let ((nnmail-article-buffer (format "nnmail-incoming-%s" label))) (with-current-buffer (get-buffer-create nnmail-article-buffer) (insert label)))) That creates three separate buffers, named correctly, and holding the correct text.
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 10 Feb 2022 09:03:04 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 10 04:03:04 2022 Received: from localhost ([127.0.0.1]:53922 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nI5M0-0001ee-3e for submit <at> debbugs.gnu.org; Thu, 10 Feb 2022 04:03:04 -0500 Received: from ledu-giraud.fr ([51.159.28.247]:3959) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <manuel@HIDDEN>) id 1nI5Ly-0001eD-84 for 53877 <at> debbugs.gnu.org; Thu, 10 Feb 2022 04:03:03 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=rsa; bh=kngUuoj3KVgTzESc SGs0cd9vRDO5TlVqiDBSWvlh0+M=; h=in-reply-to:date:references:subject: cc:to:from; d=ledu-giraud.fr; b=JOZ6/LS/cnJzi7LTGIb1BhIWNIBAa7BmmLqn5N MpyQCF8+8qtSYVAqqcUqM+YXMHa+0rM0W2mf/LCvdt3EbMkNoC33LNqOL3lxT7MWPKpXWy zSZKOz/darW6jLqQuq4e4ohKZfEHldohNIafNE6ijKCQrSdl24YUutr8UN3yROvsGcEbhv 2xKleb/F2dli3GKFdjIi4q4ft7KlwGLbLw3HwsLhTxUjK2Oj9s97W31Mz4+EV/a/2C0NpX FIPiGBTfdXt4TjTNo8gnA4vGMmHxKCM0w2dPl8Sy41yjjrLWT5Gt8gH7Tp/tpUlj/PyAix WGCJsy2AMaoViP9joz+ZpHiw== Received: from elite.giraud (<unknown> [10.1.1.1]) by ledu-giraud.fr (OpenSMTPD) with ESMTPSA id 6b652dd8 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Thu, 10 Feb 2022 10:03:00 +0100 (CET) From: Manuel Giraud <manuel@HIDDEN> To: Eric Abrahamsen <eric@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> <877da4cjdg.fsf@HIDDEN> <87o83gq9q5.fsf@HIDDEN> Date: Thu, 10 Feb 2022 10:02:59 +0100 In-Reply-To: <87o83gq9q5.fsf@HIDDEN> (Eric Abrahamsen's message of "Wed, 09 Feb 2022 08:35:14 -0800") Message-ID: <87o83faybg.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Eric Abrahamsen <eric@HIDDEN> writes: > Manuel Giraud <manuel@HIDDEN> writes: > >> Lars Ingebrigtsen <larsi@HIDDEN> writes: >> >>> Why can't you bind `nnmail-article-buffer' before calling the splitting >>> function? >> >> I spoke too quickly. The idea was that with a temporay buffer I could >> run multiple splitting in "parallel". But rebinding just *one* global >> variable won't help much here. > > Are you sure? AFAIK this was Dick Chiang's approach to threading > server updates: let-binding the value of `nntp-server-buffer' within > the thread function. As far as I know it worked okay. The splitting > function and code run within it will have a separate value of > `nnmail-article-buffer'. I'm trying another approach: seek to the processes in the backend, don't wait for them to end but instead attach sentinels for what's left to do. Maybe it is not the best approach because Gnus seems to be heavily stateful/serial. I'm not sure about binding in sentinels: do you think it would work as binding in threads? -- Manuel Giraud
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 20:26:21 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 15:26:20 2022 Received: from localhost ([127.0.0.1]:52871 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHtXg-0001Fz-On for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 15:26:20 -0500 Received: from quimby.gnus.org ([95.216.78.240]:39652) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1nHtXe-0001Fl-SD for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 15:26:19 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID :In-Reply-To:Date:References:Subject:Cc:To:From:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=CqwLexddNhS6BtJWjoHZxXkmru/PhbNNvBIhgqSvE7M=; b=TSt/he3M+xkTMpJS5K+nrNjJUO gyHGQwWB4TQYsfHV1jJRWDjLBCoMuTWphNq+q+7RayBErMQ60FNgk7zgSDCaNs5Dq6vRtWsLFULqI V0LcLtM0fFYeu6Y3yuG8rXUsU/4ENG89lnvKDADRVXDNHaWdv25EyvwjvvLvRXzYoimE=; Received: from [84.212.220.105] (helo=giant) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1nHtXW-0006oB-6V; Wed, 09 Feb 2022 21:26:13 +0100 From: Lars Ingebrigtsen <larsi@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <877da4pi2h.fsf@HIDDEN> <87pmnwcqoo.fsf@HIDDEN> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAGFBMVEVPKhRiUDWKbks0 FgUjGhDZuXDUtm3///+pBA8CAAAAAWJLR0QHFmGI6wAAAAd0SU1FB+YCCRQMDLUtRl4AAAF7SURB VDjLjZPBioMwEIYnjdtzItKzltZzwH2AKLN7LgU911J9/0fYmUkEbSPsIKj/5/yTcRIAyM+pgKaB dDSNblIB8QaOLq01uDfglDAKvQFKpARwmhXtQOut1W5x18Si+g2wP/k4B/AGDC/JKAcKtgD4yfGK 9f+KJ8H3Hug2vzsrENtSwFe/jqJC/L0J+Fnr8ytHPD0S4NYRGD/BcG8RrwnQz8UO6F974L4HhhSY pJPEqobr0PcXPATQ1v39GMDYTQyOoUGv6kcn+tNkJ8koI7AXAVMJgFcCPF+2Alu09dQPkwHEenoh mPjbn1k3c1DTaOcLqgjqGdunDMNm6M+41GhpOj7ovFPMB7AGveUy2JXLaMmgIlkRwzWgaZIC1pIX g3axKunFk0xGGQNvaO9xH4tOCVnMYCCPohvF3yh7Ht0CVDAKFWw+ukYACICg02teCfBQ4KoApRwW kEUQdPRLhkUMJRZgKynuyYH8fTSSPuTIYfIU7B2cXeD+AMqs3g245F3CAAAAJXRFWHRkYXRlOmNy ZWF0ZQAyMDIyLTAyLTA5VDIwOjEyOjEyKzAwOjAw9CN9ugAAACV0RVh0ZGF0ZTptb2RpZnkAMjAy Mi0wMi0wOVQyMDoxMjoxMiswMDowMIV+xQYAAAAASUVORK5CYII= X-Now-Playing: Karen Dalton's _In My Own Time_: "Are You Leaving For The Country" Date: Wed, 09 Feb 2022 21:26:09 +0100 In-Reply-To: <87pmnwcqoo.fsf@HIDDEN> (Manuel Giraud's message of "Wed, 09 Feb 2022 10:52:39 +0100") Message-ID: <87h797g526.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Manuel Giraud <manuel@HIDDEN> writes: > Yes that's the point. After those patches, I've started to work on > moving `mail-source-fetch' from «callback method» to «process+sentinel > method». So far, I have done most simple ones: "file [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Manuel Giraud <manuel@HIDDEN> writes: > Yes that's the point. After those patches, I've started to work on > moving `mail-source-fetch' from =C2=ABcallback method=C2=BB to =C2=ABproc= ess+sentinel > method=C2=BB. So far, I have done most simple ones: "file" and "directory" > sources. Ah, right. Yeah, I think that's probably a good place to start. --=20 (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 16:35:25 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 11:35:25 2022 Received: from localhost ([127.0.0.1]:52436 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHpwD-0000br-JO for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 11:35:25 -0500 Received: from mail.ericabrahamsen.net ([52.70.2.18]:41288) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eric@HIDDEN>) id 1nHpwA-0000ba-F8 for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 11:35:23 -0500 Received: from localhost (c-71-197-232-41.hsd1.wa.comcast.net [71.197.232.41]) (Authenticated sender: eric@HIDDEN) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id 1667BFA08F; Wed, 9 Feb 2022 16:35:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericabrahamsen.net; s=mail; t=1644424516; bh=oVgKU00uHtvYvDI8Y43bpTQsPMM/f4xTI7MKp2lGeTA=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=Jf2aV+LUG5RWVkkIh0h6DC/g5RP9Fc0CHqdVWv/sNNpI6hVlUZX0occFLRDj/s5Mj ioBVglJQUxJY0q3I5rvUiJGfC9oHHDygnVgWPbMGp2ergOI5DK+4z2PQsKsQfHgtCq wS5DI/bJFuluLNJXIvtHw9boQ65oqxg9Kz0SmxIk= From: Eric Abrahamsen <eric@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> <877da4cjdg.fsf@HIDDEN> Date: Wed, 09 Feb 2022 08:35:14 -0800 In-Reply-To: <877da4cjdg.fsf@HIDDEN> (Manuel Giraud's message of "Wed, 09 Feb 2022 13:30:35 +0100") Message-ID: <87o83gq9q5.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Manuel Giraud <manuel@HIDDEN> writes: > Lars Ingebrigtsen <larsi@HIDDEN> writes: > >> Why can't you bind `nnmail-article-buffer' before calling the splitting >> function? > > I spoke too quickly. The idea was that with a temporay buffer I could > run multiple splitting in "parallel". But rebinding just *one* global > variable won't help much here. Are you sure? AFAIK this was Dick Chiang's approach to threading server updates: let-binding the value of `nntp-server-buffer' within the thread function. As far as I know it worked okay. The splitting function and code run within it will have a separate value of `nnmail-article-buffer'.
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 12:30:40 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 07:30:40 2022 Received: from localhost ([127.0.0.1]:50100 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHm7M-00040d-37 for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 07:30:40 -0500 Received: from ledu-giraud.fr ([51.159.28.247]:18429) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <manuel@HIDDEN>) id 1nHm7J-0003wa-Hh for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 07:30:38 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=rsa; bh=4mJyaZq2UXRP0/Zz 2IKxXKTZyK4dfk4H517XxNKwRIE=; h=in-reply-to:date:references:subject: cc:to:from; d=ledu-giraud.fr; b=Icvlxro75sY7bZB09iNW0eLlhs8IW0rEOQP1Vz o1sNfo1JxMWfK4Z8+Jjj1E8Is4DTs2oZ8f5mjqNv5nHzZwxJbM11ktvVT0lmO9VcfZSnpQ oqtDpF1KePP5XWp3IGLH0RYxiuzRsC+5yCnHivlnEMymXa5CC2tNCwfM9EdALYe375xpsA 6SV9cBuG3eOhCimfka2mIOAwYZMTT/UWKlLcNAYk/CY5JZj/u7Jwq0lTvDcsjnwQo2jPmu jc2uTzAIKKSFl2aSatkbCSVIsYwjvKOajcIiK5UlLya2dyR0+2WCxIF7guiH77QTs5E/fO to1qAti9BRUf4fkhw2kNN5iw== Received: from elite.giraud (<unknown> [10.1.1.1]) by ledu-giraud.fr (OpenSMTPD) with ESMTPSA id 00a9de74 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Wed, 9 Feb 2022 13:30:35 +0100 (CET) From: Manuel Giraud <manuel@HIDDEN> To: Lars Ingebrigtsen <larsi@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> Date: Wed, 09 Feb 2022 13:30:35 +0100 In-Reply-To: <87v8xol3tr.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Wed, 09 Feb 2022 11:41:36 +0100") Message-ID: <877da4cjdg.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Lars Ingebrigtsen <larsi@HIDDEN> writes: > Why can't you bind `nnmail-article-buffer' before calling the splitting > function? I spoke too quickly. The idea was that with a temporay buffer I could run multiple splitting in "parallel". But rebinding just *one* global variable won't help much here. -- Manuel Giraud
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 10:50:23 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 05:50:23 2022 Received: from localhost ([127.0.0.1]:50028 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHkYJ-0000Si-9B for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 05:50:23 -0500 Received: from quimby.gnus.org ([95.216.78.240]:34748) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1nHkYH-0000SP-Fo for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 05:50:22 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID :In-Reply-To:Date:References:Subject:Cc:To:From:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=mDWJoVzGTMOZePYw3wmNA7ootsMfGDBZcHEM8lvE/lY=; b=NclBVBy4wUnz3ouWw8SM4ewCWG WJmtgBe5jbGAaxFrZnbKJq73SjCArG0RcHO3RGj8shRe5a/VlPNgjJSNtL2OI4BbrHTRawQJa8wne FxPO64FTCoWnurCVX0WPg1uVMIv7n5KZSLoYLiyu/2+4KE8t11u0qPmy69frFfUkpCj4=; Received: from [84.212.220.105] (helo=giant) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1nHkY8-00010x-Mj; Wed, 09 Feb 2022 11:50:15 +0100 From: Lars Ingebrigtsen <larsi@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> <87czjwco5u.fsf@HIDDEN> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAALVBMVEX+/v7o6OiQkI/S 0tGurq7f398QEBBZWVhKSkl1dXVnZ2cxMTF/f39eX2D////ZTk9FAAAAAWJLR0QOb70wTwAAAAd0 SU1FB+YCCQoiIe1NnX0AAACzSURBVDjLY2DABRgVgASzAbMDkwCYzyIAlQhJCBZlEFIwbxBzZTBl ZGSIDDSASFTt7NzU1LRi9QLpGdOXd7upT59dDpGozGhKKIvcrV0gptE9oyQpm7t6FUTCxcDFQJg5 0MWA2YXBhcHAkJnZlWEUjIJRQDEwdhAAkiJw/qxVy2eWT9eauXz7qlXLDStXrdJSXwqV8NTyOB5V tUpp1XIl552rbmmpTwRLMCIbx6ow0B6CAADcxi10rPrSbAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAy Mi0wMi0wOVQxMDozNDozMyswMDowMDlinS4AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDItMDlU MTA6MzQ6MzMrMDA6MDBIPyWSAAAAAElFTkSuQmCC X-Now-Playing: David Bowie's _Conversation Piece (1): Home Demos_: "Angel Angel Grubby Face (Version 2)" Date: Wed, 09 Feb 2022 11:50:09 +0100 In-Reply-To: <87czjwco5u.fsf@HIDDEN> (Manuel Giraud's message of "Wed, 09 Feb 2022 11:47:09 +0100") Message-ID: <87r18cl3fi.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Manuel Giraud <manuel@HIDDEN> writes: > Ah yes of course 😅. Should I resubmit modified patch on this bug report? Yes, please. Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Manuel Giraud <manuel@HIDDEN> writes: > Ah yes of course =F0=9F=98=85. Should I resubmit modified patch on this b= ug report? Yes, please. --=20 (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 10:47:14 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 05:47:14 2022 Received: from localhost ([127.0.0.1]:50020 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHkVG-0000Kn-Kc for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 05:47:14 -0500 Received: from ledu-giraud.fr ([51.159.28.247]:19903) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <manuel@HIDDEN>) id 1nHkVE-0000Kb-98 for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 05:47:12 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=rsa; bh=hDVWr3C/kdX8WojU xATiT8UBGQHnwz8zauEWGEqe5is=; h=in-reply-to:date:references:subject: cc:to:from; d=ledu-giraud.fr; b=bBv/heVbEMpj5mkxbE222xgtiO29KSeNYyCcxd /YZnbPt0zDDvrYxZLEu3olZSwkc7eQJWfCUeUUwu8HA9JTG9OJulGdvLyS+yh1+8xJDWo4 fBnqAZbDJ/iQZCMCVpU92kEQmkZ0dAcqmwxEthWEt68buRVaVO4RPZ5KOgbT+DbHjkhJg5 aUKQRwmKIPVYDmShc6fXJ91G3kUCYlH5V4ym4RKfYfoe5IXwno/xfSJWV1jXavZXXxSqCa jXrM2ZIG8QBGZgiBuRprEyzbeVjHBk0wHx4+4uZeSKovJOW9LITM61rljZJgN0e4nWxTJK AWmOf4Jzf/9qKNqgA/oxsq4w== Received: from elite.giraud (<unknown> [10.1.1.1]) by ledu-giraud.fr (OpenSMTPD) with ESMTPSA id 9b688f6e (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Wed, 9 Feb 2022 11:47:10 +0100 (CET) From: Manuel Giraud <manuel@HIDDEN> To: Lars Ingebrigtsen <larsi@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> <87v8xol3tr.fsf@HIDDEN> Date: Wed, 09 Feb 2022 11:47:09 +0100 In-Reply-To: <87v8xol3tr.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Wed, 09 Feb 2022 11:41:36 +0100") Message-ID: <87czjwco5u.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Lars Ingebrigtsen <larsi@HIDDEN> writes: > Manuel Giraud <manuel@HIDDEN> writes: > >> Ouch! Too bad because I don't think I could achieve multiple mail-source >> fetchers in parallel without it. > > Why can't you bind `nnmail-article-buffer' before calling the splitting > function? Ah yes of course =F0=9F=98=85. Should I resubmit modified patch on this bug= report? --=20 Manuel Giraud
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 10:41:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 05:41:49 2022 Received: from localhost ([127.0.0.1]:50003 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHkQ1-000077-7l for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 05:41:49 -0500 Received: from quimby.gnus.org ([95.216.78.240]:34706) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1nHkPy-00006q-JS for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 05:41:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=MxIN12CnBdIylog0FpAvkgiJiG2rjrQ1zlEvqhqFqEU=; b=tvJ2A+DiiSciOeRsG/ynT6I+z0 8p6lNrXNz2yCtVN6ETDspdwC6izhEtPUF5Jigfv+AcNmFu+pjHS4/EapmSqCJSJzG7SfzgCWgyo3L AbzM1HkWh8NQQCn/UfnQYK3H1QwAMKD6CM/sigmsaWX+dOeMh+9CyIYpjtKHy9H1ssGk=; Received: from [84.212.220.105] (helo=giant) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1nHkPp-0000wm-3c; Wed, 09 Feb 2022 11:41:39 +0100 From: Lars Ingebrigtsen <larsi@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> <87k0e4cojb.fsf@HIDDEN> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAALVBMVEX+/v7o6OiQkI/S 0tGurq7f398QEBBZWVhKSkl1dXVnZ2cxMTF/f39eX2D////ZTk9FAAAAAWJLR0QOb70wTwAAAAd0 SU1FB+YCCQoiIe1NnX0AAACzSURBVDjLY2DABRgVgASzAbMDkwCYzyIAlQhJCBZlEFIwbxBzZTBl ZGSIDDSASFTt7NzU1LRi9QLpGdOXd7upT59dDpGozGhKKIvcrV0gptE9oyQpm7t6FUTCxcDFQJg5 0MWA2YXBhcHAkJnZlWEUjIJRQDEwdhAAkiJw/qxVy2eWT9eauXz7qlXLDStXrdJSXwqV8NTyOB5V tUpp1XIl552rbmmpTwRLMCIbx6ow0B6CAADcxi10rPrSbAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAy Mi0wMi0wOVQxMDozNDozMyswMDowMDlinS4AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDItMDlU MTA6MzQ6MzMrMDA6MDBIPyWSAAAAAElFTkSuQmCC X-Now-Playing: David Bowie's _Conversation Piece (1): Home Demos_: "Love All Around" Date: Wed, 09 Feb 2022 11:41:36 +0100 In-Reply-To: <87k0e4cojb.fsf@HIDDEN> (Manuel Giraud's message of "Wed, 09 Feb 2022 11:39:04 +0100") Message-ID: <87v8xol3tr.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Manuel Giraud <manuel@HIDDEN> writes: > Ouch! Too bad because I don't think I could achieve multiple mail-source > fetchers in parallel without it. Why can't you bind `nnmail-article-buffer' before calling the splitting function? Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Manuel Giraud <manuel@HIDDEN> writes: > Ouch! Too bad because I don't think I could achieve multiple mail-source > fetchers in parallel without it. Why can't you bind `nnmail-article-buffer' before calling the splitting function? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 10:39:10 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 05:39:10 2022 Received: from localhost ([127.0.0.1]:49998 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHkNR-0008UI-RF for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 05:39:10 -0500 Received: from ledu-giraud.fr ([51.159.28.247]:25281) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <manuel@HIDDEN>) id 1nHkNP-0008U7-Q6 for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 05:39:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=rsa; bh=KpXQX4jaXvSkj5Uq P0B/zQbTRqjZvv4ECB8Arkw4TOQ=; h=in-reply-to:date:references:subject: cc:to:from; d=ledu-giraud.fr; b=hFRFs9UuHyx+Gbo6HfB5IXfiBV6m38qCB/JaQR TY5cfIFVt84aHMrdYf1dqAhGl+aB3d1ZQuLt5HhxLK9sMEt2D11Uo8fIr6Ry6LdsFqiobM z+UnPAvgNF8tlhyj08PAhyZg0zoiFzYa2ebMWuO6/7E7BETBgT7NEZIAYMj3gfexPPmrdK gwb/OsT4ol+iEamc3Wv9QN40kDHYXKjqPP7DVcosYmdUAspcmvTd1BndFZ3nKxEofnGxjF 70cBS8sRQARs65F57B4ZbRmC9dZsYiDtVaD3hXYmHAm2B+fOd3ffl9I1LI2Pe7F8IdjncY 5ODbdyuCkQ3P2FVCHSWpICfg== Received: from elite.giraud (<unknown> [10.1.1.1]) by ledu-giraud.fr (OpenSMTPD) with ESMTPSA id 18b1576c (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Wed, 9 Feb 2022 11:39:05 +0100 (CET) From: Manuel Giraud <manuel@HIDDEN> To: Lars Ingebrigtsen <larsi@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> <878rukmkpf.fsf@HIDDEN> Date: Wed, 09 Feb 2022 11:39:04 +0100 In-Reply-To: <878rukmkpf.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Wed, 09 Feb 2022 10:51:40 +0100") Message-ID: <87k0e4cojb.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Lars Ingebrigtsen <larsi@HIDDEN> writes: > People have code like > > (defun split-on-body () > (save-excursion > (set-buffer nnmail-article-buffer) > (goto-char (point-min)) > (let ((case-fold-search t)) > (cond > ((re-search-forward > ... Ouch! Too bad because I don't think I could achieve multiple mail-source fetchers in parallel without it. OTOH, this is not the example in the info file which is correct. -- Manuel Giraud
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 09:52:44 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 04:52:43 2022 Received: from localhost ([127.0.0.1]:49905 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHjeV-0004ya-MV for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 04:52:43 -0500 Received: from ledu-giraud.fr ([51.159.28.247]:6801) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <manuel@HIDDEN>) id 1nHjeT-0004yR-K4 for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 04:52:42 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=rsa; bh=yHpV3NiD2NwAjcei TqOE31mFD7AdkFdi2DzQA0z0ZJc=; h=in-reply-to:date:references:subject: cc:to:from; d=ledu-giraud.fr; b=qIdsTCoUxpv7/e49bTXL6Zs+lFSO7Hk4WlolTl ob5RJDWMZTR6CwopkgDV1m48P+x+D13gzE3r4aunAC6eVLBs9szvCoNDe4VFgdfu5q9PxV YpCZ8DdR6e2fw7CCTlsK7HOLaputJPW3b98DSRGVCnDSlsRr7KSAkBClaW2+pJIfAY1H4O 7P3wWStSpgG4/Yx5eVsDHoIF1Y2h1qR8AVeQeGVBlIglOerYifdlCzVL74bTm0XCB+YEpC 4wh+16pviO0LFIvPyauaRhZzY+5O73/3EddG6jCMSsnjfmp7iBlJO3e+WCB4+uSR8qNNBC GkkMA/tMhwcLf3YKBqoTk88A== Received: from elite.giraud (<unknown> [10.1.1.1]) by ledu-giraud.fr (OpenSMTPD) with ESMTPSA id 11e6bf64 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Wed, 9 Feb 2022 10:52:39 +0100 (CET) From: Manuel Giraud <manuel@HIDDEN> To: Lars Ingebrigtsen <larsi@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <877da4pi2h.fsf@HIDDEN> Date: Wed, 09 Feb 2022 10:52:39 +0100 In-Reply-To: <877da4pi2h.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Wed, 09 Feb 2022 09:20:22 +0100") Message-ID: <87pmnwcqoo.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Lars Ingebrigtsen <larsi@HIDDEN> writes: > Manuel Giraud <manuel@HIDDEN> writes: > >> -(defcustom mail-source-crash-box "~/.emacs-mail-crash-box" >> - "File where mail will be stored while processing it." >> +(defcustom mail-source-crash-box-prefix "~/.emacs-mail-crash-box-" >> + "Prefix of files where mail will be stored while processing it." >> :type 'file) > > Is the point here that we want to have several mail-source-fetchers > going in parallel? Yes that's the point. After those patches, I've started to work on moving `mail-source-fetch' from =C2=ABcallback method=C2=BB to =C2=ABproces= s+sentinel method=C2=BB. So far, I have done most simple ones: "file" and "directory" sources. >> +(defun mail-source-existing-crash-boxes () >> + (let ((directory (file-name-directory mail-source-crash-box-prefix)) >> + (partial (file-name-nondirectory mail-source-crash-box-prefix))) >> + (mapcar #'(lambda (name) (file-name-concat directory name)) >> + (file-name-all-completions partial directory)))) > > `directory-files' takes a MATCH parameter, and is the way to get > matches -- not the completion machinery. Thanks, I'll change that. --=20 Manuel Giraud
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 09:51:52 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 04:51:52 2022 Received: from localhost ([127.0.0.1]:49897 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHjdg-0004wf-7B for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 04:51:52 -0500 Received: from quimby.gnus.org ([95.216.78.240]:34254) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1nHjde-0004wH-HH for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 04:51:51 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=hhPCoW2dV9ewVTAhSaRObGtUIxX8AaAPbSwjYTl4N+0=; b=rHpDlJOr5jHW1lhmBx4I71RtOD VbrGzqXk3nDQTYmlV6uzXoHqg+cCnrdHOWcAMoT+tiB/ljKVSH9nmLduyVmMZAO+aHvQA+8gGHl4T CQW959Ezjk72QahmdJOAAyqHW8zmza4ywxPeliLuAyf3NkauH0aaz9VeUbumLnE1mTzw=; Received: from [84.212.220.105] (helo=giant) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1nHjdW-0000Zh-1T; Wed, 09 Feb 2022 10:51:44 +0100 From: Lars Ingebrigtsen <larsi@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> <87tud8cr5q.fsf@HIDDEN> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAM1BMVEX+/v7JyMgRERPX 1tby8Ozo6OfBv77i39yxsK+SkpIeHyFubm8rKy09P0JOTlB8fX////8jyDhzAAAAAWJLR0QQlbIN LAAAAAd0SU1FB+YCCQkzFgRvpTsAAAFaSURBVEjH5ZVhk4QgCIZBoFCr/f//9kDb2qxp1p27/XLv NOUYDyoKAnQJQ5/9FwD6FYDJhpZBEPj0bzwDjGYJzCxIStL8lXDyrgwSzX1EX2PrTlLrHs03a0aJ kbxJdDSYmjUpoZBLWJFEVFBuAFuuzSXnHKO/czb/Ircj+LznEBaNUwhB15i9qBkBSyDVgEzTJHWW h+AuxxG0hkUeIU1zNRyOkWoA0nXGmpZnz3H3MlwTjHXPCJutawGLkkdebDEWVEJqT0c8nxc0r+bf EG3dF+Dc5wepAFe6BO6kMPYB2AsQ0B8Dcs6Re/EXgKEPgH5AuwH+j0BnQnwAdCbEu8C+Ut0SQmox BrEkQSse6zOIT3s321qidpPAaGVhAFRnvHZ7fQKrTnuB2lEGeCfE2pmjHwCdKXcTVr96pd54iKhV EXIs36JctSzLPM/Tq1JKoQq8XRRald6n+WbxA8l/CbfhPZ98AAAAJXRFWHRkYXRlOmNyZWF0ZQAy MDIyLTAyLTA5VDA5OjUxOjIyKzAwOjAwR7l8nQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMi0wMi0w OVQwOTo1MToyMiswMDowMDbkxCEAAAAASUVORK5CYII= X-Now-Playing: =?utf-8?B?SsOpcsO0bWU=?= Lorichon's _Twenty Years of Prohibited Records: Curiosities_: "Thanks Mam" Date: Wed, 09 Feb 2022 10:51:40 +0100 In-Reply-To: <87tud8cr5q.fsf@HIDDEN> (Manuel Giraud's message of "Wed, 09 Feb 2022 10:42:25 +0100") Message-ID: <878rukmkpf.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Manuel Giraud <manuel@HIDDEN> writes: > I've just test this with my patch in place: People have code like Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Manuel Giraud <manuel@HIDDEN> writes: > I've just test this with my patch in place: People have code like (defun split-on-body () (save-excursion (set-buffer nnmail-article-buffer) (goto-char (point-min)) (let ((case-fold-search t)) (cond ((re-search-forward ... -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 09:42:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 04:42:31 2022 Received: from localhost ([127.0.0.1]:49860 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHjUd-0002Nk-HI for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 04:42:31 -0500 Received: from ledu-giraud.fr ([51.159.28.247]:31404) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <manuel@HIDDEN>) id 1nHjUa-0002NZ-US for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 04:42:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=rsa; bh=qOv+2vgSRDavB7GK 18KqVcEENuAQhLQe00RUQUBDF+s=; h=in-reply-to:date:references:subject: cc:to:from; d=ledu-giraud.fr; b=PiCLqgJsyMWz/2MQhvaeqX6/M924aQmdYB+xcM 82/na7Q+QKeIPmBPppFluF6in9ytofRce4uuhjsJcj2Vj6KHIhmujp1XiSUqhDaYpVFS6G M0HdPGjoVjjbeOlcdVMBOHGwtUVPqqAAHAzb5AZeEPXRNSJfIG6ppa1O6OT7VnhL8slGB6 MFT8fEVQIaUTgPjHLb7s5YivDjJ+fslB9OFETJtGRCtL8AKtt67+Hf1fcz/NF6eumWFym+ wSUcET2PSWAPfRBjX4jwpEWSSVwKShn/P0fyvMNVVIi3wp38efHwuoj/iGykpreDphKuCk G7JFJLI6aXFvpvsT8xQWRt+Q== Received: from elite.giraud (<unknown> [10.1.1.1]) by ledu-giraud.fr (OpenSMTPD) with ESMTPSA id c3200d99 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Wed, 9 Feb 2022 10:42:26 +0100 (CET) From: Manuel Giraud <manuel@HIDDEN> To: Lars Ingebrigtsen <larsi@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <87bkzgpi9u.fsf@HIDDEN> Date: Wed, 09 Feb 2022 10:42:25 +0100 In-Reply-To: <87bkzgpi9u.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Wed, 09 Feb 2022 09:15:57 +0100") Message-ID: <87tud8cr5q.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Lars Ingebrigtsen <larsi@HIDDEN> writes: > Manuel Giraud <manuel@HIDDEN> writes: > >> -(defvar nnmail-article-buffer " *nnmail incoming*" >> - "The buffer used for splitting incoming mails.") > > [...] > >> - (with-current-buffer (gnus-get-buffer-create nnmail-article-buffer) >> - (erase-buffer) > > No, this would break lots of Gnus installations -- people have splitting > rules that go > > (: split-on-body) > > where that function looks into nnmail-article-buffer to do whatever they > want. I've just test this with my patch in place: --8<---------------cut here---------------start------------->8--- (defun foo-split () (save-excursion (save-restriction (widen) (goto-char (point-min)) (when (re-search-forward "booga" nil t) "booga")))) ;; Mail splitting (XXX order is important) (setq nnmail-split-methods 'nnmail-split-fancy nnmail-split-fancy `(| (: foo-split) "elsewhere")) --8<---------------cut here---------------end--------------->8--- =E2=80=A6and it works as expected: splitting a mail containing "booga" to "booga". `nnmail-split-it' does not seems to have a reference to nnmail-buffer-article and just works on the current buffer: --8<---------------cut here---------------start------------->8--- ;; Builtin : operation. ((eq (car split) ':) (nnmail-log-split split) (nnmail-split-it (save-excursion (eval (cdr split) t)))) --8<---------------cut here---------------end--------------->8--- --=20 Manuel Giraud
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 09:00:18 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 04:00:18 2022 Received: from localhost ([127.0.0.1]:49751 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHipl-00037K-RZ for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 04:00:18 -0500 Received: from mail-wr1-f41.google.com ([209.85.221.41]:38558) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rpluim@HIDDEN>) id 1nHipj-0002yL-QC for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 04:00:17 -0500 Received: by mail-wr1-f41.google.com with SMTP id s10so2800143wra.5 for <53877 <at> debbugs.gnu.org>; Wed, 09 Feb 2022 01:00:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :mime-version:content-transfer-encoding; bh=wEoMcg2f9ppv/A+9Q2wzk3HGR0bSikW2chAQuRnaR74=; b=mQ2EMSeFmhKodO/ryaVHygBvzbRp4iY6EWkzJEOpT9DDgUIWyv8hapD9HVwVNJz33X vaNsqRk/EA75jBD4fJbzRN0EFQovoFbgQrhCjnlYdm00H9MtH+oMovHbCRGlajVxkL2c JmZEEUwqqCIUvRlGeN15gmh5MxFHw39h6NsWN2U9704IipAYYfqQDrOqvUnhDUaDdIFf s1ZecthzQeVEbZ4T4Q7XkX5jiXqR5rQ58jGmroWxUsZ3hcgW4cgUGPbfdb4PUIHH/Qdh 8xEAfAo+2/xbmU40vYGBEDwdOmqOLBtnL4ZUBe9pHyhauSyXyiDklGLZE9jOQNVMFdv6 BioQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:mime-version:content-transfer-encoding; bh=wEoMcg2f9ppv/A+9Q2wzk3HGR0bSikW2chAQuRnaR74=; b=KSwmLUeSc9lOgcup23MNzCUVmOoz6VhGkXHVEsMkkfC/nx1ogTr83FFWZAU/RsDmHA bw4atp+8Zy/KOomLxfSYIYnExAzXbJZX5+drwdi7Sof9HxwVyFW7f/IBa6x3tGL4fp7v xcIww35R3+/LjHv9Kwul97EsrHOTd0P3uGgG7xLHgpkO1BUaRLBY1XrJqPnPD1VYuYkv IYuceX2xrfbOAyEXWxNQL55/DvluwEw37/flhI0xYzru/StmknTRiZ76jfVjRhssyqES vQWoCnE9OdckgNEYIpZ/9uYl/HySYSkjTUDhTR6YkTNX4OILNs/ubNPER0Aeg8Lp7X2f sfzw== X-Gm-Message-State: AOAM532KP26DvHAy96XmP/vi50uGG3st9rr1Jl+tfLdSOB6/DUvPeSmp ONa41C+4OgZYeDEQ+nxaCDvU0k9svfrRpQ== X-Google-Smtp-Source: ABdhPJxUdeFoErI1sjA9Pmqb2GrQSYupye7rs7RmajrXVOnftpPvaOh4DHfo98TMCUfqmKz21IEoaQ== X-Received: by 2002:a5d:6b4a:: with SMTP id x10mr1235312wrw.715.1644397209575; Wed, 09 Feb 2022 01:00:09 -0800 (PST) Received: from rltb ([2a01:e0a:3f3:fb50:a7fc:d931:6725:24e8]) by smtp.gmail.com with ESMTPSA id bg23sm5428859wmb.5.2022.02.09.01.00.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Feb 2022 01:00:09 -0800 (PST) From: Robert Pluim <rpluim@HIDDEN> To: Eric Abrahamsen <eric@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> <877da514jx.fsf@HIDDEN> Date: Wed, 09 Feb 2022 10:00:08 +0100 In-Reply-To: <877da514jx.fsf@HIDDEN> (Eric Abrahamsen's message of "Tue, 08 Feb 2022 12:33:54 -0800") Message-ID: <87bkzg4dpj.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) >>>>> On Tue, 08 Feb 2022 12:33:54 -0800, Eric Abrahamsen <eric@ericabraham= sen.net> said: Eric> Manuel Giraud <manuel@HIDDEN> writes: >> Hi, >>=20 >> I'm trying to have an asynchronous Gnus nnml backend. In the process= , I >> found some things that I'd like to have first in nnmail.el and >> mail-sources.el (see patches). >>=20 >> There is nothing asynchronous so far so Gnus behaviour shouldn't have >> changed that much. Eric> Hi Manuel, Eric> Thanks for working on this! Getting rid of `nnmail-article-buffer= ' looks Eric> fine to me. My paranoid side says that I=CA=BCd rather have a predictable buffer name when treating incoming email than a temporary buffer. Eric> In the crash box patch, I wonder if we really need to change the = name of Eric> the option. It could be used as-is as a prefix, without really ne= eding Eric> to involve the user. Maybe changing the docstring would be enough? Right. Backwards compatibility is important. Robert --=20
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 08:20:35 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 03:20:35 2022 Received: from localhost ([127.0.0.1]:49640 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHiDL-0005fT-Dq for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 03:20:35 -0500 Received: from quimby.gnus.org ([95.216.78.240]:32942) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1nHiDJ-0005fF-5I for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 03:20:34 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=4QHF7IcxUR9krqciLZXQtqzC5JmExhU2B1cePP/hvxk=; b=vF4iHS5fq3G8AcLhLcdxGKQvhh KE4I2NR/EIVTKCnD/CU3jje0P5cRgn+8FT7qLwbdcqOWqFkyoj2SMYfXLp/zeb3vDYqHdK9TxYu+T AGhJ9gE4KLFTJPqZ1N/uaFFkCJsQ2tAMdLzVOyyFaJ6vE3kcwMXzKiCRkTX8MRc/mOMw=; Received: from [84.212.220.105] (helo=giant) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1nHiDA-00082M-PG; Wed, 09 Feb 2022 09:20:27 +0100 From: Lars Ingebrigtsen <larsi@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> X-Now-Playing: Simon & Garfunkel's _Live From New York City, 1967_: "You Don't Know Where Your Interest Lies" Date: Wed, 09 Feb 2022 09:20:22 +0100 In-Reply-To: <87leyl1lr9.fsf@HIDDEN> (Manuel Giraud's message of "Tue, 08 Feb 2022 15:22:18 +0100") Message-ID: <877da4pi2h.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Manuel Giraud <manuel@HIDDEN> writes: > -(defcustom mail-source-crash-box "~/.emacs-mail-crash-box" > - "File where mail will be stored while processing it." > +(defcustom mail-source-crash-box-prefix "~/.emacs-mail-crash-box-" > + "Prefi [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Manuel Giraud <manuel@HIDDEN> writes: > -(defcustom mail-source-crash-box "~/.emacs-mail-crash-box" > - "File where mail will be stored while processing it." > +(defcustom mail-source-crash-box-prefix "~/.emacs-mail-crash-box-" > + "Prefix of files where mail will be stored while processing it." > :type 'file) Is the point here that we want to have several mail-source-fetchers going in parallel? > +(defun mail-source-existing-crash-boxes () > + (let ((directory (file-name-directory mail-source-crash-box-prefix)) > + (partial (file-name-nondirectory mail-source-crash-box-prefix))) > + (mapcar #'(lambda (name) (file-name-concat directory name)) > + (file-name-all-completions partial directory)))) `directory-files' takes a MATCH parameter, and is the way to get matches -- not the completion machinery. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at 53877) by debbugs.gnu.org; 9 Feb 2022 08:16:10 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 09 03:16:10 2022 Received: from localhost ([127.0.0.1]:49628 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHi94-0004Rz-0u for submit <at> debbugs.gnu.org; Wed, 09 Feb 2022 03:16:10 -0500 Received: from quimby.gnus.org ([95.216.78.240]:32890) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1nHi91-0004L1-Pl for 53877 <at> debbugs.gnu.org; Wed, 09 Feb 2022 03:16:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=33KKfDV/jU4RbB2ZD8gTJl1gcBqc0KXSK62sTqG9odI=; b=L5m6RA65bPb5ZsEIYfFT8lqi3N YwaD9R4gZ/SEP9RMZcuxcl1xcKZRUcdwgK1u4gKV+OQFa2g2ooihCdCV6Z2tFECO3HuAv7mtlVSNf 6UI6jFuw7crsUt0icHxTtzTcH/UnmRSq8wc6+Lbx+jvUGV2BN8tOpFv8SqJ3QeNhBeg0=; Received: from [84.212.220.105] (helo=giant) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1nHi8s-0007zC-Bo; Wed, 09 Feb 2022 09:16:01 +0100 From: Lars Ingebrigtsen <larsi@HIDDEN> To: Manuel Giraud <manuel@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml References: <87leyl1lr9.fsf@HIDDEN> X-Now-Playing: Simon & Garfunkel's _Live From New York City, 1967_: "Homeward Bound" Date: Wed, 09 Feb 2022 09:15:57 +0100 In-Reply-To: <87leyl1lr9.fsf@HIDDEN> (Manuel Giraud's message of "Tue, 08 Feb 2022 15:22:18 +0100") Message-ID: <87bkzgpi9u.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Manuel Giraud <manuel@HIDDEN> writes: > -(defvar nnmail-article-buffer " *nnmail incoming*" > - "The buffer used for splitting incoming mails.") [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53877 Cc: 53877 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Manuel Giraud <manuel@HIDDEN> writes: > -(defvar nnmail-article-buffer " *nnmail incoming*" > - "The buffer used for splitting incoming mails.") [...] > - (with-current-buffer (gnus-get-buffer-create nnmail-article-buffer) > - (erase-buffer) No, this would break lots of Gnus installations -- people have splitting rules that go (: split-on-body) where that function looks into nnmail-article-buffer to do whatever they want. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 8 Feb 2022 20:34:29 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 08 15:34:29 2022 Received: from localhost ([127.0.0.1]:48874 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHXBx-00036C-8i for submit <at> debbugs.gnu.org; Tue, 08 Feb 2022 15:34:29 -0500 Received: from lists.gnu.org ([209.51.188.17]:33590) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <geb-bug-gnu-emacs@HIDDEN>) id 1nHXBi-00035n-0v for submit <at> debbugs.gnu.org; Tue, 08 Feb 2022 15:34:24 -0500 Received: from eggs.gnu.org ([209.51.188.92]:44994) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <geb-bug-gnu-emacs@HIDDEN>) id 1nHXBh-0000Nz-Pp for bug-gnu-emacs@HIDDEN; Tue, 08 Feb 2022 15:34:09 -0500 Received: from ciao.gmane.io ([116.202.254.214]:59400) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <geb-bug-gnu-emacs@HIDDEN>) id 1nHXBe-0001qk-Em for bug-gnu-emacs@HIDDEN; Tue, 08 Feb 2022 15:34:08 -0500 Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from <geb-bug-gnu-emacs@HIDDEN>) id 1nHXBb-0002JO-BT for bug-gnu-emacs@HIDDEN; Tue, 08 Feb 2022 21:34:03 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: bug-gnu-emacs@HIDDEN From: Eric Abrahamsen <eric@HIDDEN> Subject: Re: bug#53877: 29.0.50; [PATCH] async Gnus/nnml Date: Tue, 08 Feb 2022 12:33:54 -0800 Message-ID: <877da514jx.fsf@HIDDEN> References: <87leyl1lr9.fsf@HIDDEN> Mime-Version: 1.0 Content-Type: text/plain User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) Cancel-Lock: sha1:Y03614GdXxl4UME82O2l1AJe3wU= Received-SPF: pass client-ip=116.202.254.214; envelope-from=geb-bug-gnu-emacs@HIDDEN; helo=ciao.gmane.io X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.248, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.2 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: Manuel Giraud <manuel@HIDDEN> writes: > Hi, > > I'm trying to have an asynchronous Gnus nnml backend. In the process, I > found some things that I'd like to have first in nnmail.el and > mail-sources.el (see patches). > > There is nothing [...] Content analysis details: (1.2 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.2 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different 0.0 T_SPF_HELO_TEMPERROR SPF: test of HELO record failed (temperror) 0.9 SPF_FAIL SPF: sender does not match SPF record (fail) [SPF failed: Please see http://www.openspf.org/Why?s=mfrom; id=geb-bug-gnu-emacs%40m.gmane-mx.org; ip=209.51.188.17; r=debbugs.gnu.org] -0.0 T_SCC_BODY_TEXT_LINE No description available. X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.1 (---) Manuel Giraud <manuel@HIDDEN> writes: > Hi, > > I'm trying to have an asynchronous Gnus nnml backend. In the process, I > found some things that I'd like to have first in nnmail.el and > mail-sources.el (see patches). > > There is nothing asynchronous so far so Gnus behaviour shouldn't have > changed that much. Hi Manuel, Thanks for working on this! Getting rid of `nnmail-article-buffer' looks fine to me. In the crash box patch, I wonder if we really need to change the name of the option. It could be used as-is as a prefix, without really needing to involve the user. Maybe changing the docstring would be enough? In mail-source-fetch: + (dolist (box (mail-source-existing-crash-boxes)) + (message "Processing mail from %s..." box) + (setq found (mail-source-callback callback box box)) You'll want to use cl-incf on `found' here (as in the other files). In the nnmail cache mutex patch, I guess we're preparing for multiple threads to potentially be writing to/reading from `nnmail-cache-buffer', right? The mutex prevents concurrent access, but are we sure that leftover text in the buffer won't confuse the regexp searches? Would it be safer just to clear the buffer altogether after each transaction? I'm not quite sure why you're refactoring out `gnus-update-unread-group', is the idea that that will be used in other places as well? Or is this the function that will get run in a thread eventually? Lastly, have you done your copyright assignment? Thanks, Eric
bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 8 Feb 2022 14:22:52 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 08 09:22:52 2022 Received: from localhost ([127.0.0.1]:45964 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nHROM-0004ic-4E for submit <at> debbugs.gnu.org; Tue, 08 Feb 2022 09:22:52 -0500 Received: from lists.gnu.org ([209.51.188.17]:53482) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <manuel@HIDDEN>) id 1nHROI-0004iO-MT for submit <at> debbugs.gnu.org; Tue, 08 Feb 2022 09:22:49 -0500 Received: from eggs.gnu.org ([209.51.188.92]:51620) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <manuel@HIDDEN>) id 1nHRO8-0006X2-US for bug-gnu-emacs@HIDDEN; Tue, 08 Feb 2022 09:22:42 -0500 Received: from ledu-giraud.fr ([51.159.28.247]:30481) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <manuel@HIDDEN>) id 1nHRNz-00065L-Vy for bug-gnu-emacs@HIDDEN; Tue, 08 Feb 2022 09:22:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=rsa; bh=MflCLgKLhS03eJRr foezj4gmZOHn5HowuWq1hJOQWso=; h=date:subject:to:from; d=ledu-giraud.fr; b=HuvqSTFk2gA8MYXXGPAnQQH6XN9jbbpFQa3ogfPGdf/afIPIWl 9CW3yfU8D+/FgO5IsHMgH/WK5Zcn1HGAERj6Q2pfyWWaaX0kKHcjkfdE7j31NEKvBc7W0K aPKTaYF8gvwAcs9W0ursTqXljpdkJJUCgEoX73ZRumdaAsXb33eqlD61U1wSkol2dgU36+ IpzCaP5UGsKkBZx7hYamIJKujcWBOz81aPGLAVV40w7PS+szk0DnX6+Zz3rHLWkm9Z7fCW nf4wIxa28lBgXENRM31OjUzK26cCLS7ki5OTxx5IL8TzAZGTVoKooNTrqmwek/uRWwyfvI Xnh2cQtksvnA== Received: from elite.giraud (<unknown> [10.1.1.1]) by ledu-giraud.fr (OpenSMTPD) with ESMTPSA id f2382942 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO) for <bug-gnu-emacs@HIDDEN>; Tue, 8 Feb 2022 15:22:19 +0100 (CET) From: Manuel Giraud <manuel@HIDDEN> To: bug-gnu-emacs@HIDDEN Subject: 29.0.50; [PATCH] async Gnus/nnml Date: Tue, 08 Feb 2022 15:22:18 +0100 Message-ID: <87leyl1lr9.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (berkeley-unix) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=51.159.28.247; envelope-from=manuel@HIDDEN; helo=ledu-giraud.fr 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, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.4 (--) --=-=-= Content-Type: text/plain Hi, I'm trying to have an asynchronous Gnus nnml backend. In the process, I found some things that I'd like to have first in nnmail.el and mail-sources.el (see patches). There is nothing asynchronous so far so Gnus behaviour shouldn't have changed that much. Best regards, --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-just-use-temp-buffer-for-nnmail-article-buffer.patch From 21a6dfc1648cf5ec3a773d7624806a24c9b358a4 Mon Sep 17 00:00:00 2001 From: Manuel Giraud <manuel@HIDDEN> Date: Tue, 8 Feb 2022 13:19:44 +0100 Subject: [PATCH 1/4] just use temp-buffer for `nnmail-article-buffer'. It is used in one and only place as a temporary buffer. --- lisp/gnus/nnmail.el | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/lisp/gnus/nnmail.el b/lisp/gnus/nnmail.el index c71627f83a..af9c439280 100644 --- a/lisp/gnus/nnmail.el +++ b/lisp/gnus/nnmail.el @@ -571,9 +571,6 @@ nnmail-debug-splitting ;;; Internal variables. -(defvar nnmail-article-buffer " *nnmail incoming*" - "The buffer used for splitting incoming mails.") - (defvar nnmail-split-history nil "List of group/article elements that say where the previous split put messages.") @@ -1043,8 +1040,7 @@ nnmail-split-incoming (list (list group "")) nnmail-split-methods))) ;; Insert the incoming file. - (with-current-buffer (gnus-get-buffer-create nnmail-article-buffer) - (erase-buffer) + (with-temp-buffer (if (bufferp incoming) (insert-buffer-substring incoming) ;; The following coding system is set to @@ -1072,8 +1068,7 @@ nnmail-split-incoming (t (nnmail-process-unix-mail-format func artnum-func)))) (when exit-func - (funcall exit-func)) - (kill-buffer (current-buffer)))))) + (funcall exit-func)))))) (defun nnmail-article-group (func &optional trace junk-func) "Look at the headers and return an alist of groups that match. -- 2.35.1 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0002-uniquify-mail-source-crash-box-on-each-different-mai.patch From 798555baaa3f4afca663a6ac29bc42bf313144bc Mon Sep 17 00:00:00 2001 From: Manuel Giraud <manuel@HIDDEN> Date: Wed, 2 Feb 2022 10:50:57 +0100 Subject: [PATCH 2/4] uniquify mail-source-crash-box on each different mail-source fetcher. --- lisp/gnus/mail-source.el | 386 ++++++++++++++++++++------------------- 1 file changed, 202 insertions(+), 184 deletions(-) diff --git a/lisp/gnus/mail-source.el b/lisp/gnus/mail-source.el index 5d0c0e2654..4498ea13f6 100644 --- a/lisp/gnus/mail-source.el +++ b/lisp/gnus/mail-source.el @@ -238,10 +238,12 @@ mail-source-flash "If non-nil, flash periodically when mail is available." :type 'boolean) -(defcustom mail-source-crash-box "~/.emacs-mail-crash-box" - "File where mail will be stored while processing it." +(defcustom mail-source-crash-box-prefix "~/.emacs-mail-crash-box-" + "Prefix of files where mail will be stored while processing it." :type 'file) +(make-obsolete-variable 'mail-source-crash-box 'mail-source-crash-box-prefix "29.1") + (defcustom mail-source-directory message-directory "Directory where incoming mail source files (if any) will be stored." :type 'directory) @@ -518,6 +520,18 @@ mail-source-value (autoload 'nnheader-message "nnheader") +(defun mail-source-fetcher (source) + (cadr (assq (car source) mail-source-fetcher-alist))) + +(defun mail-source-crash-box () + (make-temp-name mail-source-crash-box-prefix)) + +(defun mail-source-existing-crash-boxes () + (let ((directory (file-name-directory mail-source-crash-box-prefix)) + (partial (file-name-nondirectory mail-source-crash-box-prefix))) + (mapcar #'(lambda (name) (file-name-concat directory name)) + (file-name-all-completions partial directory)))) + (defun mail-source-fetch (source callback &optional method) "Fetch mail from SOURCE and call CALLBACK zero or more times. CALLBACK will be called with the name of the file where (some of) @@ -536,21 +550,20 @@ mail-source-fetch (format "%s: " method) "") (car source))) - (let ((function (cadr (assq (car source) mail-source-fetcher-alist))) + (let ((fetcher (mail-source-fetcher source)) (found 0)) - (unless function + (unless fetcher (error "%S is an invalid mail source specification" source)) - ;; If there's anything in the crash box, we do it first. - (when (file-exists-p mail-source-crash-box) - (message "Processing mail from %s..." mail-source-crash-box) - (setq found (mail-source-callback - callback mail-source-crash-box)) - (mail-source-delete-crash-box)) + ;; If there's anything in some crash boxes, we do it first. + (dolist (box (mail-source-existing-crash-boxes)) + (message "Processing mail from %s..." box) + (setq found (mail-source-callback callback box box)) + (mail-source-delete-crash-box box)) (+ found (if (or debug-on-quit debug-on-error) - (funcall function source callback) + (funcall fetcher source callback) (condition-case err - (funcall function source callback) + (funcall fetcher source callback) (error (gnus-error 5 @@ -596,24 +609,24 @@ mail-source-delete-old-incoming t)) (delete-file ffile)))))) -(defun mail-source-callback (callback info) +(defun mail-source-callback (callback info crash-box) "Call CALLBACK on the mail file. Pass INFO on to CALLBACK." - (if (or (not (file-exists-p mail-source-crash-box)) + (if (or (not (file-exists-p crash-box)) (zerop (file-attribute-size - (file-attributes mail-source-crash-box)))) + (file-attributes crash-box)))) (progn - (when (file-exists-p mail-source-crash-box) - (delete-file mail-source-crash-box)) + (when (file-exists-p crash-box) + (delete-file crash-box)) 0) - (funcall callback mail-source-crash-box info))) + (funcall callback crash-box info))) (defvar mail-source-incoming-last-checked-time nil) -(defun mail-source-delete-crash-box () - (when (file-exists-p mail-source-crash-box) +(defun mail-source-delete-crash-box (crash-box) + (when (file-exists-p crash-box) ;; Delete or move the incoming mail out of the way. (if (eq mail-source-delete-incoming t) - (delete-file mail-source-crash-box) + (delete-file crash-box) (let ((incoming (make-temp-file (expand-file-name @@ -621,7 +634,7 @@ mail-source-delete-crash-box mail-source-directory)))) (unless (file-exists-p (file-name-directory incoming)) (make-directory (file-name-directory incoming) t)) - (rename-file mail-source-crash-box incoming t) + (rename-file crash-box incoming t) ;; remove old incoming files? (when (natnump mail-source-delete-incoming) ;; Don't check for old incoming files more than once per day to @@ -750,17 +763,18 @@ mail-source-call-script (defun mail-source-fetch-file (source callback) "Fetcher for single-file sources." (mail-source-bind (file source) - (mail-source-run-script - prescript `((?t . ,mail-source-crash-box)) - prescript-delay) - (let ((mail-source-string (format "file:%s" path))) - (if (mail-source-movemail path mail-source-crash-box) - (prog1 - (mail-source-callback callback path) - (mail-source-run-script - postscript `((?t . ,mail-source-crash-box))) - (mail-source-delete-crash-box)) - 0)))) + (let ((crash-box (mail-source-crash-box))) + (mail-source-run-script + prescript `((?t . ,crash-box)) + prescript-delay) + (let ((mail-source-string (format "file:%s" path))) + (if (mail-source-movemail path crash-box) + (prog1 + (mail-source-callback callback path crash-box) + (mail-source-run-script + postscript `((?t . ,crash-box))) + (mail-source-delete-crash-box crash-box)) + 0))))) (defun mail-source-fetch-directory (source callback) "Fetcher for directory sources." @@ -768,92 +782,94 @@ mail-source-fetch-directory (mail-source-run-script prescript `((?t . ,path)) prescript-delay) (let ((found 0) - (mail-source-string (format "directory:%s" path))) + (mail-source-string (format "directory:%s" path)) + (crash-box (mail-source-crash-box))) (dolist (file (directory-files path t (concat (regexp-quote suffix) "$"))) (when (and (file-regular-p file) (funcall predicate file) - (mail-source-movemail file mail-source-crash-box)) - (cl-incf found (mail-source-callback callback file)) + (mail-source-movemail file crash-box)) + (cl-incf found (mail-source-callback callback file crash-box)) (mail-source-run-script postscript `((?t . ,path))) - (mail-source-delete-crash-box))) + (mail-source-delete-crash-box crash-box))) found))) (defun mail-source-fetch-pop (source callback) "Fetcher for single-file sources." (mail-source-bind (pop source) - ;; fixme: deal with stream type in format specs - (mail-source-run-script - prescript - `((?p . ,password) (?t . ,mail-source-crash-box) - (?s . ,server) (?P . ,port) (?u . ,user)) - prescript-delay) - (let ((from (format "%s:%s:%s" server user port)) - (mail-source-string (format "pop:%s@%s" user server)) - (process-environment (if server - (cons (concat "MAILHOST=" server) - process-environment) - process-environment)) - result) - (when (eq authentication 'password) - (setq password - (or password - (cdr (assoc from mail-source-password-cache)) - (read-passwd - (format "Password for %s at %s: " user server))))) - (setq result - (cond - (program - (mail-source-fetch-with-program - (format-spec - program - `((?p . ,password) (?t . ,mail-source-crash-box) - (?s . ,server) (?P . ,port) (?u . ,user))))) - (function - (funcall function mail-source-crash-box)) - ;; The default is to use pop3.el. - (t - (require 'pop3) - (dlet ((pop3-password password) - (pop3-maildrop user) - (pop3-mailhost server) - (pop3-port port) - (pop3-authentication-scheme - (if (eq authentication 'apop) 'apop 'pass)) - (pop3-stream-type stream) - (pop3-leave-mail-on-server leave)) - (if (or debug-on-quit debug-on-error) - (save-excursion (pop3-movemail mail-source-crash-box)) - (condition-case err - (save-excursion (pop3-movemail mail-source-crash-box)) - (error - ;; We nix out the password in case the error - ;; was because of a wrong password being given. - (setq mail-source-password-cache - (delq (assoc from mail-source-password-cache) - mail-source-password-cache)) - (signal (car err) (cdr err))))))))) - (if result - (progn - (when (eq authentication 'password) - (unless (assoc from mail-source-password-cache) - (push (cons from password) mail-source-password-cache))) - (prog1 - (mail-source-callback callback server) - ;; Update display-time's mail flag, if relevant. - (if (equal source mail-source-primary-source) - (setq mail-source-new-mail-available nil)) - (mail-source-run-script - postscript - `((?p . ,password) (?t . ,mail-source-crash-box) - (?s . ,server) (?P . ,port) (?u . ,user))) - (mail-source-delete-crash-box))) - ;; We nix out the password in case the error - ;; was because of a wrong password being given. - (setq mail-source-password-cache - (delq (assoc from mail-source-password-cache) - mail-source-password-cache)) - 0)))) + (let ((crash-box (mail-source-crash-box))) + ;; fixme: deal with stream type in format specs + (mail-source-run-script + prescript + `((?p . ,password) (?t . ,crash-box) + (?s . ,server) (?P . ,port) (?u . ,user)) + prescript-delay) + (let ((from (format "%s:%s:%s" server user port)) + (mail-source-string (format "pop:%s@%s" user server)) + (process-environment (if server + (cons (concat "MAILHOST=" server) + process-environment) + process-environment)) + result) + (when (eq authentication 'password) + (setq password + (or password + (cdr (assoc from mail-source-password-cache)) + (read-passwd + (format "Password for %s at %s: " user server))))) + (setq result + (cond + (program + (mail-source-fetch-with-program + (format-spec + program + `((?p . ,password) (?t . ,crash-box) + (?s . ,server) (?P . ,port) (?u . ,user))))) + (function + (funcall function crash-box)) + ;; The default is to use pop3.el. + (t + (require 'pop3) + (dlet ((pop3-password password) + (pop3-maildrop user) + (pop3-mailhost server) + (pop3-port port) + (pop3-authentication-scheme + (if (eq authentication 'apop) 'apop 'pass)) + (pop3-stream-type stream) + (pop3-leave-mail-on-server leave)) + (if (or debug-on-quit debug-on-error) + (save-excursion (pop3-movemail crash-box)) + (condition-case err + (save-excursion (pop3-movemail crash-box)) + (error + ;; We nix out the password in case the error + ;; was because of a wrong password being given. + (setq mail-source-password-cache + (delq (assoc from mail-source-password-cache) + mail-source-password-cache)) + (signal (car err) (cdr err))))))))) + (if result + (progn + (when (eq authentication 'password) + (unless (assoc from mail-source-password-cache) + (push (cons from password) mail-source-password-cache))) + (prog1 + (mail-source-callback callback server crash-box) + ;; Update display-time's mail flag, if relevant. + (if (equal source mail-source-primary-source) + (setq mail-source-new-mail-available nil)) + (mail-source-run-script + postscript + `((?p . ,password) (?t . ,crash-box) + (?s . ,server) (?P . ,port) (?u . ,user))) + (mail-source-delete-crash-box crash-box))) + ;; We nix out the password in case the error + ;; was because of a wrong password being given. + (setq mail-source-password-cache + (delq (assoc from mail-source-password-cache) + mail-source-password-cache)) + 0))))) (defun mail-source-check-pop (source) "Check whether there is new mail." @@ -1001,6 +1017,7 @@ mail-source-fetch-maildir "Fetcher for maildir sources." (mail-source-bind (maildir source) (let ((found 0) + (crash-box (mail-source-crash-box)) mail-source-string) (unless (string-match "/$" path) (setq path (concat path "/"))) @@ -1011,12 +1028,12 @@ mail-source-fetch-maildir (when (and (not (file-directory-p file)) (not (if function ;; `function' should return nil if successful. - (funcall function file mail-source-crash-box) + (funcall function file crash-box) (let ((coding-system-for-write mm-text-coding-system) (coding-system-for-read mm-text-coding-system)) - (with-temp-file mail-source-crash-box + (with-temp-file crash-box (insert-file-contents file) (goto-char (point-min)) ;;; ;; Unix mail format @@ -1031,8 +1048,8 @@ mail-source-fetch-maildir (insert "\001\001\001\001\n")) (delete-file file) nil)))) - (cl-incf found (mail-source-callback callback file)) - (mail-source-delete-crash-box))))) + (cl-incf found (mail-source-callback callback file crash-box)) + (mail-source-delete-crash-box crash-box))))) found))) (autoload 'imap-open "imap") @@ -1058,78 +1075,79 @@ mail-source-imap-file-coding-system (defun mail-source-fetch-imap (source callback) "Fetcher for imap sources." (mail-source-bind (imap source) - (mail-source-run-script - prescript - `((?p . ,password) (?t . ,mail-source-crash-box) - (?s . ,server) (?P . ,port) (?u . ,user)) - prescript-delay) - (let ((from (format "%s:%s:%s" server user port)) - (found 0) - (buf (generate-new-buffer " *imap source*")) - (mail-source-string (format "imap:%s:%s" server mailbox)) - (imap-shell-program (or (list program) imap-shell-program)) - remove) - (if (and (imap-open server port stream authentication buf) - (imap-authenticate - user (or (cdr (assoc from mail-source-password-cache)) - password) - buf)) - (let ((mailbox-list (if (listp mailbox) mailbox (list mailbox)))) - (dolist (mailbox mailbox-list) - (when (imap-mailbox-select mailbox nil buf) - (let ((coding-system-for-write mail-source-imap-file-coding-system) - str) - (message "Fetching from %s..." mailbox) - (with-temp-file mail-source-crash-box - ;; Avoid converting 8-bit chars from inserted strings to - ;; multibyte. - (mm-disable-multibyte) - ;; remember password - (with-current-buffer buf - (when (and imap-password - (not (member (cons from imap-password) - mail-source-password-cache))) - (push (cons from imap-password) mail-source-password-cache))) - ;; if predicate is nil, use all uids - (dolist (uid (imap-search (or predicate "1:*") buf)) - (when (setq str - (if (imap-capability 'IMAP4rev1 buf) - (caddar (imap-fetch uid "BODY.PEEK[]" - 'BODYDETAIL nil buf)) - (imap-fetch uid "RFC822.PEEK" 'RFC822 nil buf))) - (push uid remove) - (insert "From imap " (current-time-string) "\n") - (save-excursion - (insert str "\n\n")) - (while (let ((case-fold-search nil)) - (re-search-forward "^From " nil t)) - (replace-match ">From ")) - (goto-char (point-max)))) - (nnheader-ms-strip-cr)) - (cl-incf found (mail-source-callback callback server)) - (mail-source-delete-crash-box) - (when (and remove fetchflag) - (setq remove (nreverse remove)) - (imap-message-flags-add - (imap-range-to-message-set (gnus-compress-sequence remove)) - fetchflag nil buf)) - (if dontexpunge - (imap-mailbox-unselect buf) - (imap-mailbox-close nil buf))))) - (imap-close buf)) - (imap-close buf) - ;; We nix out the password in case the error - ;; was because of a wrong password being given. - (setq mail-source-password-cache - (delq (assoc from mail-source-password-cache) - mail-source-password-cache)) - (error "IMAP error: %s" (imap-error-text buf))) - (kill-buffer buf) + (let ((crash-box (mail-source-crash-box))) (mail-source-run-script - postscript - `((?p . ,password) (?t . ,mail-source-crash-box) - (?s . ,server) (?P . ,port) (?u . ,user))) - found))) + prescript + `((?p . ,password) (?t . ,crash-box) + (?s . ,server) (?P . ,port) (?u . ,user)) + prescript-delay) + (let ((from (format "%s:%s:%s" server user port)) + (found 0) + (buf (generate-new-buffer " *imap source*")) + (mail-source-string (format "imap:%s:%s" server mailbox)) + (imap-shell-program (or (list program) imap-shell-program)) + remove) + (if (and (imap-open server port stream authentication buf) + (imap-authenticate + user (or (cdr (assoc from mail-source-password-cache)) + password) + buf)) + (let ((mailbox-list (if (listp mailbox) mailbox (list mailbox)))) + (dolist (mailbox mailbox-list) + (when (imap-mailbox-select mailbox nil buf) + (let ((coding-system-for-write mail-source-imap-file-coding-system) + str) + (message "Fetching from %s..." mailbox) + (with-temp-file crash-box + ;; Avoid converting 8-bit chars from inserted strings to + ;; multibyte. + (mm-disable-multibyte) + ;; remember password + (with-current-buffer buf + (when (and imap-password + (not (member (cons from imap-password) + mail-source-password-cache))) + (push (cons from imap-password) mail-source-password-cache))) + ;; if predicate is nil, use all uids + (dolist (uid (imap-search (or predicate "1:*") buf)) + (when (setq str + (if (imap-capability 'IMAP4rev1 buf) + (caddar (imap-fetch uid "BODY.PEEK[]" + 'BODYDETAIL nil buf)) + (imap-fetch uid "RFC822.PEEK" 'RFC822 nil buf))) + (push uid remove) + (insert "From imap " (current-time-string) "\n") + (save-excursion + (insert str "\n\n")) + (while (let ((case-fold-search nil)) + (re-search-forward "^From " nil t)) + (replace-match ">From ")) + (goto-char (point-max)))) + (nnheader-ms-strip-cr)) + (cl-incf found (mail-source-callback callback server crash-box)) + (mail-source-delete-crash-box crash-box) + (when (and remove fetchflag) + (setq remove (nreverse remove)) + (imap-message-flags-add + (imap-range-to-message-set (gnus-compress-sequence remove)) + fetchflag nil buf)) + (if dontexpunge + (imap-mailbox-unselect buf) + (imap-mailbox-close nil buf))))) + (imap-close buf)) + (imap-close buf) + ;; We nix out the password in case the error + ;; was because of a wrong password being given. + (setq mail-source-password-cache + (delq (assoc from mail-source-password-cache) + mail-source-password-cache)) + (error "IMAP error: %s" (imap-error-text buf))) + (kill-buffer buf) + (mail-source-run-script + postscript + `((?p . ,password) (?t . ,crash-box) + (?s . ,server) (?P . ,port) (?u . ,user))) + found)))) (provide 'mail-source) -- 2.35.1 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0003-mutex-on-nnmail-cache.patch From a1dc119bfb777f813f7967256fc0835c34d2c0be Mon Sep 17 00:00:00 2001 From: Manuel Giraud <manuel@HIDDEN> Date: Thu, 3 Feb 2022 13:52:41 +0100 Subject: [PATCH 3/4] mutex on nnmail cache. --- lisp/gnus/nnmail.el | 83 ++++++++++++++++++++++++--------------------- 1 file changed, 44 insertions(+), 39 deletions(-) diff --git a/lisp/gnus/nnmail.el b/lisp/gnus/nnmail.el index af9c439280..642ca16e28 100644 --- a/lisp/gnus/nnmail.el +++ b/lisp/gnus/nnmail.el @@ -1556,6 +1556,7 @@ nnmail-message-id ;;; (defvar nnmail-cache-buffer nil) +(defvar nnmail-cache-buffer-mutex (make-mutex)) (defun nnmail-cache-open () (if (or (not nnmail-treat-duplicates) @@ -1574,22 +1575,23 @@ nnmail-cache-close (when (and nnmail-treat-duplicates (buffer-live-p nnmail-cache-buffer) (buffer-modified-p nnmail-cache-buffer)) - (with-current-buffer nnmail-cache-buffer - ;; Weed out the excess number of Message-IDs. - (goto-char (point-max)) - (when (search-backward "\n" nil t nnmail-message-id-cache-length) - (progn - (beginning-of-line) - (delete-region (point-min) (point)))) - ;; Save the buffer. - (or (file-exists-p (file-name-directory nnmail-message-id-cache-file)) - (make-directory (file-name-directory nnmail-message-id-cache-file) - t)) - (nnmail-write-region (point-min) (point-max) - nnmail-message-id-cache-file nil 'silent) - (set-buffer-modified-p nil) - (setq nnmail-cache-buffer nil) - (gnus-kill-buffer (current-buffer))))) + (with-mutex nnmail-cache-buffer-mutex + (with-current-buffer nnmail-cache-buffer + ;; Weed out the excess number of Message-IDs. + (goto-char (point-max)) + (when (search-backward "\n" nil t nnmail-message-id-cache-length) + (progn + (beginning-of-line) + (delete-region (point-min) (point)))) + ;; Save the buffer. + (or (file-exists-p (file-name-directory nnmail-message-id-cache-file)) + (make-directory (file-name-directory nnmail-message-id-cache-file) + t)) + (nnmail-write-region (point-min) (point-max) + nnmail-message-id-cache-file nil 'silent) + (set-buffer-modified-p nil) + (setq nnmail-cache-buffer nil) + (gnus-kill-buffer (current-buffer)))))) (defun nnmail-cache-insert (id grp &optional subject sender) (when (stringp id) @@ -1605,18 +1607,19 @@ nnmail-cache-insert ;; pass the first (of possibly >1) group which matches. -Josh (unless (gnus-buffer-live-p nnmail-cache-buffer) (nnmail-cache-open)) - (with-current-buffer nnmail-cache-buffer - (goto-char (point-max)) - (if (and grp (not (string= "" grp)) - (gnus-methods-equal-p gnus-command-method - (nnmail-cache-primary-mail-backend))) - (let ((regexp (if (consp nnmail-cache-ignore-groups) - (mapconcat #'identity nnmail-cache-ignore-groups - "\\|") - nnmail-cache-ignore-groups))) - (unless (and regexp (string-match regexp grp)) - (insert id "\t" grp "\n"))) - (insert id "\n")))))) + (with-mutex nnmail-cache-buffer-mutex + (with-current-buffer nnmail-cache-buffer + (goto-char (point-max)) + (if (and grp (not (string= "" grp)) + (gnus-methods-equal-p gnus-command-method + (nnmail-cache-primary-mail-backend))) + (let ((regexp (if (consp nnmail-cache-ignore-groups) + (mapconcat #'identity nnmail-cache-ignore-groups + "\\|") + nnmail-cache-ignore-groups))) + (unless (and regexp (string-match regexp grp)) + (insert id "\t" grp "\n"))) + (insert id "\n"))))))) (defun nnmail-cache-primary-mail-backend () (let ((be-list (cons gnus-select-method gnus-secondary-select-methods)) @@ -1638,14 +1641,15 @@ nnmail-cache-primary-mail-backend ;; cache. (defun nnmail-cache-fetch-group (id) (when (and nnmail-treat-duplicates nnmail-cache-buffer) - (with-current-buffer nnmail-cache-buffer - (goto-char (point-max)) - (when (search-backward id nil t) - (beginning-of-line) - (skip-chars-forward "^\n\r\t") - (unless (looking-at "[\r\n]") - (forward-char 1) - (buffer-substring (point) (point-at-eol))))))) + (with-mutex nnmail-cache-buffer-mutex + (with-current-buffer nnmail-cache-buffer + (goto-char (point-max)) + (when (search-backward id nil t) + (beginning-of-line) + (skip-chars-forward "^\n\r\t") + (unless (looking-at "[\r\n]") + (forward-char 1) + (buffer-substring (point) (point-at-eol)))))))) ;; Function for nnmail-split-fancy: look up all references in the ;; cache and if a match is found, return that group. @@ -1682,9 +1686,10 @@ nnmail-split-fancy-with-parent (defun nnmail-cache-id-exists-p (id) (when nnmail-treat-duplicates - (with-current-buffer nnmail-cache-buffer - (goto-char (point-max)) - (search-backward id nil t)))) + (with-mutex nnmail-cache-buffer-mutex + (with-current-buffer nnmail-cache-buffer + (goto-char (point-max)) + (search-backward id nil t))))) (defun nnmail-fetch-field (header) (save-excursion -- 2.35.1 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0004-separate-update-unread-of-group.patch From 07dae695797f2646a1653691cdda7123b2c0e160 Mon Sep 17 00:00:00 2001 From: Manuel Giraud <manuel@HIDDEN> Date: Sat, 5 Feb 2022 16:39:01 +0100 Subject: [PATCH 4/4] separate update unread of group. --- lisp/gnus/gnus-start.el | 174 ++++++++++++++++++++-------------------- 1 file changed, 88 insertions(+), 86 deletions(-) diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el index dd9c277805..edf7296bee 100644 --- a/lisp/gnus/gnus-start.el +++ b/lisp/gnus/gnus-start.el @@ -1485,6 +1485,93 @@ gnus-activate-group ;; Return the new active info. active))))) +(defun gnus-update-unread-group (info active) + (let* ((range (gnus-info-read info)) + (num 0)) + + ;; These checks are present in gnus-activate-group but skipped + ;; due to setting dont-check in the preceding call. + + ;; If a cache is present, we may have to alter the active info. + (when (and gnus-use-cache info) + (inline (gnus-cache-possibly-alter-active + (gnus-info-group info) active))) + + ;; If the agent is enabled, we may have to alter the active info. + (when (and gnus-agent info) + (gnus-agent-possibly-alter-active (gnus-info-group info) active info)) + + ;; Modify the list of read articles according to what articles + ;; are available; then tally the unread articles and add the + ;; number to the group hash table entry. + (cond + ((zerop (cdr active)) + (setq num 0)) + ((not range) + (setq num (- (1+ (cdr active)) (car active)))) + ((not (listp (cdr range))) + ;; Fix a single (num . num) range according to the + ;; active hash table. + ;; Fix by Carsten Bormann <cabo@HIDDEN>. + (and (< (cdr range) (car active)) (setcdr range (1- (car active)))) + (and (> (cdr range) (cdr active)) (setcdr range (cdr active))) + ;; Compute number of unread articles. + (setq num (max 0 (- (cdr active) (- (1+ (cdr range)) (car range)))))) + (t + ;; The read list is a list of ranges. Fix them according to + ;; the active hash table. + ;; First peel off any elements that are below the lower + ;; active limit. + (while (and (cdr range) + (>= (car active) + (or (and (atom (cadr range)) (cadr range)) + (caadr range)))) + (if (numberp (car range)) + (setcar range + (cons (car range) + (or (and (numberp (cadr range)) + (cadr range)) + (cdadr range)))) + (setcdr (car range) + (or (and (numberp (nth 1 range)) (nth 1 range)) + (cdadr range)))) + (setcdr range (cddr range))) + ;; Adjust the first element to be the same as the lower limit. + (when (and (not (atom (car range))) + (< (cdar range) (car active))) + (setcdr (car range) (1- (car active)))) + ;; Then we want to peel off any elements that are higher + ;; than the upper active limit. + (let ((srange range)) + ;; Go past all valid elements. + (while (and (cdr srange) + (<= (or (and (atom (cadr srange)) + (cadr srange)) + (caadr srange)) + (cdr active))) + (setq srange (cdr srange))) + (when (cdr srange) + ;; Nuke all remaining invalid elements. + (setcdr srange nil)) + + ;; Adjust the final element. + (when (and (not (atom (car srange))) + (> (cdar srange) (cdr active))) + (setcdr (car srange) (cdr active)))) + ;; Compute the number of unread articles. + (while range + (setq num (+ num (- (1+ (or (and (atom (car range)) (car range)) + (cdar range))) + (or (and (atom (car range)) (car range)) + (caar range))))) + (setq range (cdr range))) + (setq num (max 0 (- (cdr active) num))))) + ;; Set the number of unread articles. + (when (and info + (gnus-group-entry (gnus-info-group info))) + (setcar (gnus-group-entry (gnus-info-group info)) num)) + num)) + (defun gnus-get-unread-articles-in-group (info active &optional update) (when (and info active) ;; Allow the backend to update the info in the group. @@ -1493,92 +1580,7 @@ gnus-get-unread-articles-in-group info (inline (gnus-find-method-for-group (gnus-info-group info))))) (gnus-activate-group (gnus-info-group info) nil t)) - - (let* ((range (gnus-info-read info)) - (num 0)) - - ;; These checks are present in gnus-activate-group but skipped - ;; due to setting dont-check in the preceding call. - - ;; If a cache is present, we may have to alter the active info. - (when (and gnus-use-cache info) - (inline (gnus-cache-possibly-alter-active - (gnus-info-group info) active))) - - ;; If the agent is enabled, we may have to alter the active info. - (when (and gnus-agent info) - (gnus-agent-possibly-alter-active (gnus-info-group info) active info)) - - ;; Modify the list of read articles according to what articles - ;; are available; then tally the unread articles and add the - ;; number to the group hash table entry. - (cond - ((zerop (cdr active)) - (setq num 0)) - ((not range) - (setq num (- (1+ (cdr active)) (car active)))) - ((not (listp (cdr range))) - ;; Fix a single (num . num) range according to the - ;; active hash table. - ;; Fix by Carsten Bormann <cabo@HIDDEN>. - (and (< (cdr range) (car active)) (setcdr range (1- (car active)))) - (and (> (cdr range) (cdr active)) (setcdr range (cdr active))) - ;; Compute number of unread articles. - (setq num (max 0 (- (cdr active) (- (1+ (cdr range)) (car range)))))) - (t - ;; The read list is a list of ranges. Fix them according to - ;; the active hash table. - ;; First peel off any elements that are below the lower - ;; active limit. - (while (and (cdr range) - (>= (car active) - (or (and (atom (cadr range)) (cadr range)) - (caadr range)))) - (if (numberp (car range)) - (setcar range - (cons (car range) - (or (and (numberp (cadr range)) - (cadr range)) - (cdadr range)))) - (setcdr (car range) - (or (and (numberp (nth 1 range)) (nth 1 range)) - (cdadr range)))) - (setcdr range (cddr range))) - ;; Adjust the first element to be the same as the lower limit. - (when (and (not (atom (car range))) - (< (cdar range) (car active))) - (setcdr (car range) (1- (car active)))) - ;; Then we want to peel off any elements that are higher - ;; than the upper active limit. - (let ((srange range)) - ;; Go past all valid elements. - (while (and (cdr srange) - (<= (or (and (atom (cadr srange)) - (cadr srange)) - (caadr srange)) - (cdr active))) - (setq srange (cdr srange))) - (when (cdr srange) - ;; Nuke all remaining invalid elements. - (setcdr srange nil)) - - ;; Adjust the final element. - (when (and (not (atom (car srange))) - (> (cdar srange) (cdr active))) - (setcdr (car srange) (cdr active)))) - ;; Compute the number of unread articles. - (while range - (setq num (+ num (- (1+ (or (and (atom (car range)) (car range)) - (cdar range))) - (or (and (atom (car range)) (car range)) - (caar range))))) - (setq range (cdr range))) - (setq num (max 0 (- (cdr active) num))))) - ;; Set the number of unread articles. - (when (and info - (gnus-group-entry (gnus-info-group info))) - (setcar (gnus-group-entry (gnus-info-group info)) num)) - num))) + (gnus-update-unread-group info active))) ;; Go though `gnus-newsrc-alist' and compare with `gnus-active-hashtb' ;; and compute how many unread articles there are in each group. -- 2.35.1 --=-=-= Content-Type: text/plain In GNU Emacs 29.0.50 (build 1, x86_64-unknown-openbsd7.0, X toolkit, cairo version 1.17.4, Xaw scroll bars) of 2022-02-08 built on elite.giraud Repository revision: 798555baaa3f4afca663a6ac29bc42bf313144bc Repository branch: mgi-gnus2 Windowing system distributor 'The X.Org Foundation', version 11.0.12101001 System Description: OpenBSD elite.giraud 7.0 GENERIC.MP#314 amd64 Configured using: 'configure --prefix=/home/manuel/emacs --bindir=/home/manuel/bin --with-x-toolkit=athena --without-sound --without-compress-install CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib' Configured features: CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBXML2 M17N_FLT MODULES NOTIFY KQUEUE PDUMPER PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS WEBP X11 XDBE XIM XPM LUCID ZLIB Important settings: value of $LC_ALL: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Magit Minor modes in effect: global-git-commit-mode: t magit-auto-revert-mode: t icomplete-mode: t display-time-mode: t shell-dirtrack-mode: t repeat-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t line-number-mode: t indent-tabs-mode: t transient-mark-mode: t Load-path shadows: /home/manuel/.el/google-maps.el/google-maps hides /home/manuel/.el/google-maps /home/manuel/.emacs.d/elpa/transient-20220130.1941/transient hides /home/manuel/emacs/share/emacs/29.0.50/lisp/transient ~/emacs-repo/lisp/gnus/gnus-uu hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-uu ~/emacs-repo/lisp/gnus/gnus-fun hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-fun ~/emacs-repo/lisp/gnus/spam hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/spam ~/emacs-repo/lisp/gnus/spam-wash hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/spam-wash ~/emacs-repo/lisp/gnus/spam-stat hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/spam-stat ~/emacs-repo/lisp/gnus/spam-report hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/spam-report ~/emacs-repo/lisp/gnus/smime hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/smime ~/emacs-repo/lisp/gnus/smiley hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/smiley ~/emacs-repo/lisp/gnus/score-mode hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/score-mode ~/emacs-repo/lisp/gnus/nnweb hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnweb ~/emacs-repo/lisp/gnus/gnus-rmail hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-rmail ~/emacs-repo/lisp/gnus/nnvirtual hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnvirtual ~/emacs-repo/lisp/gnus/nntp hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nntp ~/emacs-repo/lisp/gnus/nnspool hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnspool ~/emacs-repo/lisp/gnus/nnselect hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnselect ~/emacs-repo/lisp/gnus/nnrss hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnrss ~/emacs-repo/lisp/gnus/nnregistry hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnregistry ~/emacs-repo/lisp/gnus/nnoo hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnoo ~/emacs-repo/lisp/gnus/nnnil hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnnil ~/emacs-repo/lisp/gnus/nnml hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnml ~/emacs-repo/lisp/gnus/nnmh hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnmh ~/emacs-repo/lisp/gnus/nnmbox hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnmbox ~/emacs-repo/lisp/gnus/nnmairix hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnmairix ~/emacs-repo/lisp/gnus/gnus-delay hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-delay ~/emacs-repo/lisp/gnus/nnmaildir hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnmaildir ~/emacs-repo/lisp/gnus/nndoc hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nndoc ~/emacs-repo/lisp/gnus/mml1991 hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mml1991 ~/emacs-repo/lisp/gnus/mml-smime hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mml-smime ~/emacs-repo/lisp/gnus/gnus-win hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-win ~/emacs-repo/lisp/gnus/gnus-topic hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-topic ~/emacs-repo/lisp/gnus/nngateway hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nngateway ~/emacs-repo/lisp/gnus/nndraft hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nndraft ~/emacs-repo/lisp/gnus/nndir hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nndir ~/emacs-repo/lisp/gnus/nndiary hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nndiary ~/emacs-repo/lisp/gnus/mm-util hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-util ~/emacs-repo/lisp/gnus/mm-extern hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-extern ~/emacs-repo/lisp/gnus/mm-partial hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-partial ~/emacs-repo/lisp/gnus/mm-encode hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-encode ~/emacs-repo/lisp/gnus/mm-bodies hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-bodies ~/emacs-repo/lisp/gnus/gnus-vm hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-vm ~/emacs-repo/lisp/gnus/gnus-undo hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-undo ~/emacs-repo/lisp/gnus/gnus-spec hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-spec ~/emacs-repo/lisp/gnus/gnus-salt hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-salt ~/emacs-repo/lisp/gnus/gnus-rfc1843 hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-rfc1843 ~/emacs-repo/lisp/gnus/gnus-range hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-range ~/emacs-repo/lisp/gnus/gnus-picon hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-picon ~/emacs-repo/lisp/gnus/gnus-notifications hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-notifications ~/emacs-repo/lisp/gnus/gnus-group hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-group ~/emacs-repo/lisp/gnus/deuglify hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/deuglify ~/emacs-repo/lisp/gnus/canlock hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/canlock ~/emacs-repo/lisp/gnus/gnus-util hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-util ~/emacs-repo/lisp/gnus/gnus-mlspl hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-mlspl ~/emacs-repo/lisp/gnus/gnus-ml hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-ml ~/emacs-repo/lisp/gnus/gnus-mh hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-mh ~/emacs-repo/lisp/gnus/gnus-logic hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-logic ~/emacs-repo/lisp/gnus/gnus-html hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-html ~/emacs-repo/lisp/gnus/gnus-dup hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-dup ~/emacs-repo/lisp/gnus/gnus-eform hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-eform ~/emacs-repo/lisp/gnus/gnus-diary hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-diary ~/emacs-repo/lisp/gnus/gnus-demon hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-demon ~/emacs-repo/lisp/gnus/gnus-cus hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-cus ~/emacs-repo/lisp/gnus/gnus-cite hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-cite ~/emacs-repo/lisp/gnus/gnus-bcklg hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-bcklg ~/emacs-repo/lisp/gnus/gnus-score hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-score ~/emacs-repo/lisp/gnus/gnus-msg hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-msg ~/emacs-repo/lisp/gnus/gnus hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus ~/emacs-repo/lisp/gnus/gnus-dired hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-dired ~/emacs-repo/lisp/gnus/gnus-bookmark hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-bookmark ~/emacs-repo/lisp/gnus/gnus-agent hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-agent ~/emacs-repo/lisp/gnus/mml hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mml ~/emacs-repo/lisp/gnus/nneething hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nneething ~/emacs-repo/lisp/gnus/mml-sec hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mml-sec ~/emacs-repo/lisp/gnus/mm-url hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-url ~/emacs-repo/lisp/gnus/mail-source hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mail-source ~/emacs-repo/lisp/gnus/gnus-sieve hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-sieve ~/emacs-repo/lisp/gnus/nnfolder hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnfolder ~/emacs-repo/lisp/gnus/mm-decode hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-decode ~/emacs-repo/lisp/gnus/gnus-srvr hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-srvr ~/emacs-repo/lisp/gnus/gnus-start hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-start ~/emacs-repo/lisp/gnus/gnus-draft hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-draft ~/emacs-repo/lisp/gnus/gnus-cloud hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-cloud ~/emacs-repo/lisp/gnus/gnus-cache hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-cache ~/emacs-repo/lisp/gnus/nnbabyl hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnbabyl ~/emacs-repo/lisp/gnus/gnus-registry hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-registry ~/emacs-repo/lisp/gnus/mm-view hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-view ~/emacs-repo/lisp/gnus/message hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/message ~/emacs-repo/lisp/gnus/nnmail hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnmail ~/emacs-repo/lisp/gnus/nnimap hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnimap ~/emacs-repo/lisp/gnus/nnheader hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnheader ~/emacs-repo/lisp/gnus/nnagent hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/nnagent ~/emacs-repo/lisp/gnus/gnus-search hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-search ~/emacs-repo/lisp/gnus/gnus-art hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-art ~/emacs-repo/lisp/gnus/gnus-dbus hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-dbus ~/emacs-repo/lisp/gnus/gnus-sum hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-sum ~/emacs-repo/lisp/gnus/gnus-async hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-async ~/emacs-repo/lisp/gnus/mml2015 hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mml2015 ~/emacs-repo/lisp/gnus/mm-uu hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-uu ~/emacs-repo/lisp/gnus/mm-archive hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/mm-archive ~/emacs-repo/lisp/gnus/legacy-gnus-agent hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/legacy-gnus-agent ~/emacs-repo/lisp/gnus/gnus-icalendar hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-icalendar ~/emacs-repo/lisp/gnus/gssapi hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gssapi ~/emacs-repo/lisp/gnus/gnus-int hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-int ~/emacs-repo/lisp/gnus/gnus-kill hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-kill ~/emacs-repo/lisp/gnus/gnus-gravatar hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gnus-gravatar ~/emacs-repo/lisp/gnus/gmm-utils hides /home/manuel/emacs/share/emacs/29.0.50/lisp/gnus/gmm-utils Features: (goto-addr view cal-china lunar solar cal-dst cal-bahai cal-islam cal-hebrew holidays hol-loaddefs cal-iso org-element avl-tree ol-eww eww xdg url-queue ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-search eieio-opt speedbar ezimage dframe ol-docview ol-bibtex ol-bbdb ol-w3m ol-doi org-link-doi org-agenda org-refile shadow shortdoc emacsbug whitespace magit-patch gnus-dired cl-print dabbrev rmail magit-extras face-remap magit-submodule magit-obsolete 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 which-func imenu magit-diff smerge-mode diff git-commit log-edit pcvs-util add-log magit-core magit-autorevert autorevert filenotify magit-margin magit-transient magit-process with-editor magit-mode transient magit-git magit-section magit-utils dash pulse help-fns radix-tree misearch multi-isearch vc-git diff-mode bug-reference executable mailalias bbdb-message vc-dispatcher vc-svn sort gnus-cite mail-extr textsec uni-scripts idna-mapping ucs-normalize uni-confusable textsec-check gnus-async gnus-bcklg gnus-ml gnus-topic mm-archive url-http url-gw url-auth qp utf-7 imap rfc2104 nnrss mm-url nndoc nndraft nnmh gnutls network-stream nsm nnfolder bbdb-gnus nnml gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg nntp gnus-cache w3m w3m-hist w3m-fb bookmark-w3m w3m-ems w3m-favicon w3m-image tab-line w3m-proc w3m-util cl-extra help-mode paredit edmacro icomplete time battery cus-load exwm-randr xcb-randr exwm-config exwm exwm-input xcb-keysyms exwm-manage exwm-floating xcb-cursor xcb-render exwm-layout exwm-workspace exwm-core xcb-ewmh xcb-icccm xcb xcb-xkb xcb-xproto xcb-types xcb-debug kmacro server modus-operandi-theme modus-themes pcase google-maps google-maps-static google-maps-geocode google-maps-base osm-mode url-cache mingus libmpdee gnuplot info-look transmission color calc-bin calc-ext calc calc-loaddefs rect calc-macs w3m-load mu4e mu4e-org mu4e-main mu4e-view mu4e-view-gnus gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum gnus-group gnus-undo gnus-start gnus-dbus gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo gnus-spec gnus-int gnus-range gnus-win gnus nnheader range wid-edit mu4e-view-common mu4e-headers mu4e-compose mu4e-context mu4e-draft mu4e-actions ido rfc2368 smtpmail sendmail mu4e-mark mu4e-proc mu4e-utils doc-view jka-compr image-mode exif mu4e-lists mu4e-message shr pixel-fill kinsoku svg dom flow-fill mule-util hl-line mu4e-vars message yank-media rmc puny rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mail-utils gmm-utils mailheader mu4e-meta supercite regi bbdb-anniv diary-lib diary-loaddefs bbdb-mua bbdb-com crm mailabbrev bbdb bbdb-site timezone org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete org-list org-faces org-entities org-version ob-emacs-lisp ob-core ob-eval org-table oc-basic bibtex ol rx org-keys oc org-compat org-macs org-loaddefs find-func cal-menu calendar cal-loaddefs visual-basic-mode web-mode disp-table erlang-start smart-tabs-mode skeleton cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs movitz-slime cl slime-asdf grep slime-tramp tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat shell pcomplete parse-time iso8601 time-date ls-lisp format-spec slime-fancy slime-indentation slime-cl-indent cl-indent slime-trace-dialog slime-fontifying-fu slime-package-fu slime-references slime-compiler-notes-tree advice slime-scratch slime-presentations bridge slime-macrostep macrostep slime-mdot-fu slime-enclosing-context slime-fuzzy slime-fancy-trace slime-fancy-inspector slime-c-p-c slime-editing-commands slime-autodoc slime-repl slime-parse slime compile text-property-search etags fileloop generator xref project arc-mode archive-mode noutline outline pp comint ansi-color ring hyperspec thingatpt slime-autoloads dired-aux dired-x dired dired-loaddefs notifications dbus xml repeat easy-mmode tex-site 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 map url-vars seq gv subr-x byte-opt bytecomp byte-compile cconv cl-loaddefs cl-lib iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode 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 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 emoji-zwj 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 keymap hashtable-print-readable backquote threads dbusbind kqueue lcms2 dynamic-setting system-font-setting font-render-setting cairo x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 868893 102442) (symbols 48 59739 8) (strings 32 276306 16458) (string-bytes 1 8495369) (vectors 16 147772) (vector-slots 8 2714405 148428) (floats 8 1138 546) (intervals 56 12268 4311) (buffers 992 47)) -- Manuel Giraud --=-=-=--
Manuel Giraud <manuel@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#53877
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.