From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by arlo.cworth.org (Postfix) with ESMTP id 5B7186DE2F08 for ; Mon, 26 Jun 2017 13:49:54 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at cworth.org X-Spam-Flag: NO X-Spam-Score: -0.419 X-Spam-Level: X-Spam-Status: No, score=-0.419 tagged_above=-999 required=5 tests=[AWL=-0.097, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.211, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=disabled Received: from arlo.cworth.org ([127.0.0.1]) by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YABuc41i4kBj for ; Mon, 26 Jun 2017 13:49:53 -0700 (PDT) Received: from mail-pf0-f176.google.com (mail-pf0-f176.google.com [209.85.192.176]) by arlo.cworth.org (Postfix) with ESMTPS id 014816DE2EF2 for ; Mon, 26 Jun 2017 13:49:52 -0700 (PDT) Received: by mail-pf0-f176.google.com with SMTP id s66so5675504pfs.1 for ; Mon, 26 Jun 2017 13:49:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=from:to:subject:in-reply-to:references:date:message-id:mime-version; bh=alfdAp7m5m+A2PC5Dq91LaupPMG4Zk804aCe7/XuTaQ=; b=lkNN8PWqy7QFNlCHSgLnVRYyUsW2B05pgSF5+ISZrduvBlYzgR1GAQU5kLf2dA59GE ItKzpAFpCWLNHS+DyT8tOnj+WVXJs/mJMJcMBk7qXiWSGBNjyb54iYsxlcCKRhATDZsX j64QUBawDgLvuuY7DAaaI/KhZD27S/qv21GA0H6OSdEUD8bpT4HHgaQVHa0v1aB+v/qw JJaw3EwKDX2t/1eM1zFWoanefQoqc6QrsMR0dF4CEiQ4ao0ex7xrx13ddwyygs2guBCm //zvzNfQrl2NvpvCV/nzyk5VK6AWrOmsOh6ze+8K73FNzgxB/mPMY/mdvhX+BVaAFmnN 21Rg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:date :message-id:mime-version; bh=alfdAp7m5m+A2PC5Dq91LaupPMG4Zk804aCe7/XuTaQ=; b=f4A0YT9PXRh8NFI9kDHplhdJGYDjE/1yVkcoEXdZOiM1eKTfDpdknlaLIoeKRDltit 01SHHbS7b8L3L0yTDR6a8/PNDwtIiXnCpa+sQnRQ37ZSl9FggTEJ7SKMJBBgWrqjDTSu EsDaE75QcudMiFjXVX8eWSxwrNcTiq8QS9LAq7EeRO/DKlDNNXRIINP3lJoG+ZtQnLE/ hQb48bzXayn+yreY+nPQI0t9SB0AP23orQ933PRcMZCkFbKl+ZxnArXd6/ZnT1ny+w2h dMSBnQXmahGbqmypI4Ibo65qTwM3Lp11tXtdh5D77PVX4auFQ3iL+nIoYx/Hg7JcOUTu 00Dg== X-Gm-Message-State: AKS2vOy92Xy2RIkN3Xbq4Rg3ic6cLVNTgAnPiXSXcgiiOpXiJOo46iX/ UZ9R4ShxoMHzDKW0 X-Received: by 10.84.139.195 with SMTP id 61mr2052153plr.90.1498510192335; Mon, 26 Jun 2017 13:49:52 -0700 (PDT) Received: from marmstrong-linux.kir.corp.google.com ([2620:0:1008:11:ed09:69a4:df9d:fb34]) by smtp.gmail.com with ESMTPSA id x124sm1548235pgb.20.2017.06.26.13.49.50 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Mon, 26 Jun 2017 13:49:51 -0700 (PDT) From: Matt Armstrong To: David Bremner , Daniel Kahn Gillmor , Gaute Hope , notmuch@notmuchmail.org, Xu Wang Subject: Re: finding incoming messages in threads in which i've participated [was: Re: find threads where I and Jian participated but not Dave] In-Reply-To: <87vank9egp.fsf@tethera.net> References: <87bmprtqgo.fsf@tethera.net> <87fuf1nnl5.fsf@fifthhorseman.net> <8737b1rojw.fsf@tethera.net> <1497594312.ahjx44w937.astroid@strange.none> <87r2ydgh9t.fsf@fifthhorseman.net> <1498111587.9x086zp6wn.astroid@strange.none> <1498112439.apimm1pnum.astroid@strange.none> <87efu8t6ia.fsf@fifthhorseman.net> <87vank9egp.fsf@tethera.net> Date: Mon, 26 Jun 2017 13:49:50 -0700 Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Jun 2017 20:49:54 -0000 David Bremner writes: > Daniel Kahn Gillmor writes: > >> >> For example, would it make sense to have "notmuch new" (and "notmuch >> insert") do "thread-based propagation" of specific tags? for example, >> consider the following (i've just made up the config options): >> >> notmuch config set new.from_self_tags participated >> notmuch config set new.propagate_thread_tags participated >> >> the idea is that "new.from_self_tags" would be applied by "notmuch new" or >> "notmuch insert" if the message was explicitly from: user.primary_email >> or user.other_email. > > At the moment I'm more inclined to work on "doing things right" by > adding xapian documents (database items) for threads. Many of the > ideas in this thread amount to working around their absence. OTOH, > it's certainly true that this last idea (unlike some of the query > ideas) would be relatively straightforward to impliment. David, that makes a lot of sense. Take two other examples from my post-hook: # Unmute all threads with new messages sent to me. notmuch search --output=threads tag:new AND tag:me | \ xargs --no-run-if-empty notmuch tag -muted -- # Remove all muted threads from the inbox and mark # every message in them muted. notmuch search --output=threads tag:muted | \ xargs --no-run-if-empty notmuch tag -inbox +muted -- Above I'm just operating on all the messages in a thread as a unit. If notmuch had a 'database item' for each thread, I could potentially tag just that to achieve similar results with simpler commands. It has some subtle implications. E.g. when I tag through a particular UI do I mean to tag a particular message or the thread? Is it worth making the user think about the difference? Is there some way to express this such that they never do? Are some tags configured to always apply to the thread? Are these the only tags that do? Or do "thread tags" always contain the union of all associated message tags? Fun stuff. :)