From 8c3fe77b34f390dadf59c9dd7c8bd1a0c8f059de Mon Sep 17 00:00:00 2001 From: Robert Mast Date: Sun, 3 Feb 2013 01:06:58 +0100 Subject: [PATCH] RE: [Spam-verdenking][english 100%] RE: Reply all - issue --- ee/50092435eddb2b4ee097056970f0f0a3327841 | 158 ++++++++++++++++++++++ 1 file changed, 158 insertions(+) create mode 100644 ee/50092435eddb2b4ee097056970f0f0a3327841 diff --git a/ee/50092435eddb2b4ee097056970f0f0a3327841 b/ee/50092435eddb2b4ee097056970f0f0a3327841 new file mode 100644 index 000000000..85d879f0c --- /dev/null +++ b/ee/50092435eddb2b4ee097056970f0f0a3327841 @@ -0,0 +1,158 @@ +Return-Path: +X-Original-To: notmuch@notmuchmail.org +Delivered-To: notmuch@notmuchmail.org +Received: from localhost (localhost [127.0.0.1]) + by olra.theworths.org (Postfix) with ESMTP id 50100431FB6 + for ; Sat, 2 Feb 2013 16:07:27 -0800 (PST) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: 0 +X-Spam-Level: +X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none] + autolearn=disabled +Received: from olra.theworths.org ([127.0.0.1]) + by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id tcCSguf1Ipw5 for ; + Sat, 2 Feb 2013 16:07:24 -0800 (PST) +Received: from srv047132.webreus.nl (srv047132.webreus.nl [46.235.47.132]) + (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id BE94E431FAE + for ; Sat, 2 Feb 2013 16:07:23 -0800 (PST) +Received: (qmail 19805 invoked from network); 3 Feb 2013 01:07:20 +0100 +Received: from ip73-109-210-87.adsl2.static.versatel.nl (HELO PCvangebruike) + (87.210.109.73) + by srv047132.webreus.nl with SMTP; 3 Feb 2013 01:07:11 +0100 +From: "Robert Mast" +To: "'David Bremner'" +References: <000001cdfcd9$82500f00$86f02d00$@nl> + + <000001ce0161$5da40990$18ec1cb0$@nl> + <87a9rml9pm.fsf@zancas.localnet> +In-Reply-To: <87a9rml9pm.fsf@zancas.localnet> +Subject: RE: [Spam-verdenking][english 100%] RE: Reply all - issue +Date: Sun, 3 Feb 2013 01:06:58 +0100 +Message-ID: <005401ce01a2$62293300$267b9900$@nl> +MIME-Version: 1.0 +Content-Type: text/plain; + charset="utf-8" +Content-Transfer-Encoding: quoted-printable +X-Mailer: Microsoft Office Outlook 12.0 +Thread-Index: Ac4Bh0PMAEUftH8lRH6w+fV5DvJa7QABgqoQ +Content-Language: nl +Cc: notmuch@notmuchmail.org +X-BeenThere: notmuch@notmuchmail.org +X-Mailman-Version: 2.1.13 +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: Sun, 03 Feb 2013 00:07:27 -0000 + +Thanks for the guidelines! + +One answer I couldn't find under coding: Do you all develop with = +emacs/GDB or is there a more visual and intuitive IDE to code with and = +load/show the dependency-tree? I only debugged some C-code with emacs 15 = +years ago and feel quite clumsy to get emacs to function like a proper = +wysywig-IDE. + +#4) naturally. + +I like your last suggestion at #5) of the header-regexp and agree to = +first work on the design-issues left before coding: + +@#6): I doubt whether I should tamper with threading heuristics at = +all at the level of /lib/database.cc. Does anyone know whether the MUA's = +using notmuch depend on thread-id's at the level of database.cc, or will = +MUA's respect the different threads coming from seeding = +lib/thread.cc/_notmuch_thread_create with all known messages except = +already processed messages as is done with notmuch_query_search_threads? + +If I let lib/thread.cc/_notmuch_thread_create only 'eat' everything from = +'match_set' for a stripped subject the 'seed'-message of another subject = +within the same thread will then lead to another created thread within = +the result set. + +If I start coding this I can try the result with mutt-kz/notmuch and = +notmuch/emacs. + +My aim with getting notmuch working well will be providing a base for = +reviving something like mail2forum for phpBB3 with = +mailcompression-capabilities to prevent for mailthreads to be copied in = +again and again with every mailed answer. + +I think that can be accomplished by keeping the original mails as well = +and compress the forum-threads to sup-like threads (by hiding quoted = +e-mail). + + +-----Oorspronkelijk bericht----- +Van: David Bremner [mailto:david@tethera.net]=20 +Verzonden: zaterdag 2 februari 2013 21:53 +Aan: Robert Mast +CC: notmuch@notmuchmail.org +Onderwerp: [Spam-verdenking][english 100%] RE: Reply all - issue + +Robert Mast writes: + +> +> Anyone interested in me patching Notmuch, or shall I keep the changes=20 +> to myself? +> + +Hi Robert; + +If you have patches, and you want feedback on them, then you are of = +course welcome to send them to the list. Previous experience suggests = +us that it is often faster in the long run (in terms of actually getting = +code into notmuch) to take time to work out the design issues before = +starting coding. Some suggestions/comments: + +1) See http://notmuchmail.org/contributing/ for some general hints on + contributing code to notmuch. + =20 +2) Make sure whatever threading heuristic you use is deterministic, and + robust in the face of messages arriving in different orders, and + munging of headers by mailing lists (subjects in particular get + munged fairly often). =20 + +3) In particular, it seems important that "notmuch dump" followed by + "notmuch restore" (possibly followed by notmuch new?) yields = +unchanged + or equivalent thread structure + +4) Since threading heuristics are a matter of taste (i.e. not everyone + is convinced that the way Gmail does it is the way notmuch should), + you'll need to make this configurable. One constraint is that the + library itself (under ./lib) is should not read configuration files + (or environment variables, although it violates this for debugging). + This just means you will have to change the API to pass configuration + information in to certain routines. + +5) I'd say it's more important that you can shut off the heuristic + completely than have special handling for git (or other version + control system) patch series. If you do decide to add some special + handling for patch series, I'd suggest making it as generic as + possible, perhaps a configurable list of (header, regex) values that + disable the thread splitting heuristics. + +6) Decide how, if at all your design will support manually joining + threads together. I think an acceptable answer would probably be + "disable all thread splitting heuristics and rebuild the + database". I'm not sure if it's feasible to do anything nicer than + that. + +d + + + + +. + -- 2.26.2