Reply all - issue
Robert Mast
beheerder at tekenbeetziekten.nl
Sun Feb 3 07:26:27 PST 2013
I committed a little patch on a memory-issue I found.
Can someone look whether I used git the right way, or should I study git send-email some further?
-----Oorspronkelijk bericht-----
Van: David Bremner [mailto:david at tethera.net]
Verzonden: zaterdag 2 februari 2013 21:53
Aan: Robert Mast
CC: notmuch at notmuchmail.org
Onderwerp: [Spam-verdenking][english 100%] RE: Reply all - issue
Robert Mast <beheerder at tekenbeetziekten.nl> writes:
>
> Anyone interested in me patching Notmuch, or shall I keep the changes
> 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.
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).
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
.
More information about the notmuch
mailing list