From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eric Abrahamsen Newsgroups: gmane.emacs.bugs Subject: bug#53877: 29.0.50; [PATCH] async Gnus/nnml Date: Tue, 08 Feb 2022 12:33:54 -0800 Message-ID: <877da514jx.fsf@ericabrahamsen.net> References: <87leyl1lr9.fsf@elite.giraud> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="26809"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) To: 53877@debbugs.gnu.org Cancel-Lock: sha1:Y03614GdXxl4UME82O2l1AJe3wU= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Feb 08 21:53:36 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nHXUW-0006pK-Hj for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 08 Feb 2022 21:53:36 +0100 Original-Received: from localhost ([::1]:55076 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nHXUV-000121-6u for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 08 Feb 2022 15:53:35 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:45228) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nHXCY-0001aH-Ql for bug-gnu-emacs@gnu.org; Tue, 08 Feb 2022 15:35:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:54977) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nHXCY-0001vL-D3 for bug-gnu-emacs@gnu.org; Tue, 08 Feb 2022 15:35:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nHXCY-000379-8w for bug-gnu-emacs@gnu.org; Tue, 08 Feb 2022 15:35:02 -0500 X-Loop: help-debbugs@gnu.org In-Reply-To: <87leyl1lr9.fsf@elite.giraud> Resent-From: Eric Abrahamsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 08 Feb 2022 20:35:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53877 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.164435246911924 (code B ref -1); Tue, 08 Feb 2022 20:35:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 8 Feb 2022 20:34:29 +0000 Original-Received: from localhost ([127.0.0.1]:48874 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nHXBx-00036C-8i for submit@debbugs.gnu.org; Tue, 08 Feb 2022 15:34:29 -0500 Original-Received: from lists.gnu.org ([209.51.188.17]:33590) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nHXBi-00035n-0v for submit@debbugs.gnu.org; Tue, 08 Feb 2022 15:34:24 -0500 Original-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 ) id 1nHXBh-0000Nz-Pp for bug-gnu-emacs@gnu.org; Tue, 08 Feb 2022 15:34:09 -0500 Original-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 ) id 1nHXBe-0001qk-Em for bug-gnu-emacs@gnu.org; Tue, 08 Feb 2022 15:34:08 -0500 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1nHXBb-0002JO-BT for bug-gnu-emacs@gnu.org; Tue, 08 Feb 2022 21:34:03 +0100 X-Injected-Via-Gmane: http://gmane.org/ Received-SPF: pass client-ip=116.202.254.214; envelope-from=geb-bug-gnu-emacs@m.gmane-mx.org; 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-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:226413 Archived-At: Manuel Giraud 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