From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id yPEoNlhD+WZHdgAAe85BDQ:P1 (envelope-from ) for ; Sun, 29 Sep 2024 12:08:57 +0000 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id yPEoNlhD+WZHdgAAe85BDQ (envelope-from ) for ; Sun, 29 Sep 2024 14:08:57 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=tethera.net header.s=2024 header.b=B8EBAufz; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 2a01:4f9:c011:7a79::1 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1727611736; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-owner:list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=dDTfYdwdqataRDvNwsrm/uGewfo86HE4KOCWxDsqBzs=; b=B0V5UrECKrhy32E9YCYvlw18f+OqKWBMwwFJUqr8nr6qOLGKTBg8FeeSBtizNahZndJ+de C2g3yAFeIIBlmNvGpJcBKP1mBHxzRV/ppIwoDb61tNXO70SqO8Prxt8AhOTLhR7aHUo/Ok A5AoDO+HEX/qd8ZRwLVflu1nkx4cgSZwZqYAB/NXWuP8ijIu/AjixhbS9Lg9eglpxk31xw /s4cdEdZ4Xz76+AAlRg3i0Eai5CN6a3f7GIIZYeq5R/XaLgoTcllvSW1TKQ13QPjjLVvBa IIVwojlggSsipNu8d46Pf63h2aCRNPOyrZZykBw0CBQUFyN8erPz6ra3r/F9/g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=tethera.net header.s=2024 header.b=B8EBAufz; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 2a01:4f9:c011:7a79::1 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org ARC-Seal: i=1; s=key1; d=yhetil.org; t=1727611736; a=rsa-sha256; cv=none; b=cFC/mKFBmIPSTpjp1ZgAXHuuxOnETz1mJdP+TSB1aNj9jj5jE2kb3D2pOonZy+c1FVS+aT RZ/dHg6jmL1hbrIMAAEQNzWVUj+iptoS6+lcm0ZLGmZGptCS6nRArH8eiPmlwzPxlyRF6U Ezsm4mp/OqF5mSxF7ux6WnCNFirCGkPYdv+jNFnmOmfxwgn6tMNke67Jk5Pe7h1wQRkRre WRdoDq6OWhy838lb0yFsOmXBwTByTZYrkPoIV4jbUJF3Fg8ASa0qoT0kKFaUuNFMW8QJdp thYsXmArkX6b9DIqsGl7R6uWzEuGDP+f/XuIjrYhLNz8K/fCwsxNTEDHItcbNQ== Received: from mail.notmuchmail.org (yantan.tethera.net [IPv6:2a01:4f9:c011:7a79::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 4ABEF76A66 for ; Sun, 29 Sep 2024 14:08:55 +0200 (CEST) Received: from yantan.tethera.net (localhost [127.0.0.1]) by mail.notmuchmail.org (Postfix) with ESMTP id EE9FC5E295; Sun, 29 Sep 2024 12:08:51 +0000 (UTC) Received: from phubs.tethera.net (phubs.tethera.net [192.99.9.157]) by mail.notmuchmail.org (Postfix) with ESMTPS id B787C5E291 for ; Sun, 29 Sep 2024 12:08:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tethera.net; i=@tethera.net; q=dns/txt; s=2024; t=1727611726; h=from : to : cc : subject : in-reply-to : references : date : message-id : mime-version : content-type : from; bh=jdtkqMZ7W50GDAPkstxFaQKIkukDXd5h7M/Jfd6F9bc=; b=B8EBAufzvwiumAoQ96kgh2HOH4RcSn19PdzsJML4wATLJWFIWFz6J1zuIOxoefSrIqaK3 tXSRG/aa5hHAN3qdww+cPaR25UOi16N7DJcVPnD6hw2w6BT1TTL4EyEuL28jn+plOmYU5CI zHdU7kXBmOO59OhywarKfp8gXd4eAFU73+1Ys69Z6xz/PWlFpHsIBHENFMrH44IZUaRyR57 KKiASPcBz+rslYbJ2sbKMUZeHB9IPFrwP8GTDryBO/OD+vJ6MevZZEkpgDQCsZIRkmsilbL mL6l6UBBGeynY2GJ+h4i6+gfrj51/6ae6ok7N1FdSnZteQBaSvMzuxHO4nqQ== Received: from tethera.net (fctnnbsc51w-159-2-211-58.dhcp-dynamic.fibreop.nb.bellaliant.net [159.2.211.58]) by phubs.tethera.net (Postfix) with ESMTPS id C0ECC18006E; Sun, 29 Sep 2024 09:08:46 -0300 (ADT) Received: (nullmailer pid 930975 invoked by uid 1000); Sun, 29 Sep 2024 12:08:45 -0000 From: David Bremner To: frederik@ofb.net Subject: Re: searching for a message by path In-Reply-To: <20240928025630.km2tcgjgt3xub4jo@localhost> References: <20240928025630.km2tcgjgt3xub4jo@localhost> Date: Sun, 29 Sep 2024 09:08:45 -0300 Message-ID: <87wmiur7aq.fsf@tethera.net> MIME-Version: 1.0 Message-ID-Hash: QM3UMFX5JMRDKZX7P2SXTG4LOHMPP6SM X-Message-ID-Hash: QM3UMFX5JMRDKZX7P2SXTG4LOHMPP6SM X-MailFrom: david@tethera.net X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-notmuch.notmuchmail.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: notmuch@notmuchmail.org X-Mailman-Version: 3.3.3 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Migadu-Flow: FLOW_IN X-Migadu-Country: DE X-Migadu-Queue-Id: 4ABEF76A66 X-Migadu-Scanner: mx10.migadu.com X-Migadu-Spam-Score: 1.40 X-Spam-Score: 1.40 X-TUID: CsdqqYw7UidD Frederick Eaton writes: > it is rather common to receive multiple distinct messages with the > same ID, for example when someone replies to a mailing list post and > Cc's me, and I would want these to be separately viewable (they are > linked together ith an "=" in the Mutt thread view) for security > reasons' Just for the record, both copies are also separately viewable in the Emacs interface in current notmuch. I don't know how other front ends handle it. > If Notmuch is meant to function as an abstraction layer over message > files stored on the file system, then why doesn't it provide a > standard way to go from file paths to Notmuch messages? Although I think notmuch as it exists is far from "an abstraction layer", the specific feature request seems reasonable. It would need someone who wants it to get familiar with the low level implementation details of notmuch. In particular it would require writing a database upgrade and having a new version of the database schema. It might happen eventually as a side effect of reworking the way threading works in notmuch. I'd have to dig up the details of that, but the core idea is to use Xapian "collapse keys" for more flexible handling of duplicates. > As for why it would be a security issue to ignore new messages with > duplicate message IDs, [...] Although perhaps not so colourfully, this has been extensively discussed on the mailing list, which is what lead to the functionality of indexing all files with the same message IDs. In short, new messages are not being ignored. > > My recommendation would be to split the Notmuch project into three > teams: Since there is a very small number of active developers (in some sense just me at the moment), I guess that won't happen. > (I think that all software projects should be run this way, so please > don't be offended.) I understand you probably didn't set out to become a notmuch contributor, but if you want your organizational suggestions to be taken seriously, I'm afraid that is a prerequisite. Of course contributions to all three of the areas you mentioned are welcome. > I wrote some Perl scripts a long time ago [...] > I am having to use Notmuch because of a third piece of software that > depends on it I can't speak to third party software dependencies, but you might investigate mu [1], or mairix [2] which might make design choices more to your liking. > It is somewhat perplexing to me that no one else has had my use case > before I guess one of the side effects of working on software like notmuch, which has several different interfaces (CLI, library, bindings), is that even after almost 15 years, it is impossible to predict all of the different ways people will try to use it. We try to accomodate new use cases as they arrive, but our priority is not breaking things for the existing users. This means being cautious about adding new features, given our limited resources for maintainance and support. [1]: https://www.djcbsoftware.nl/code/mu/ [2]: https://github.com/rc0/mairix