Excerpts from Rich Lane's message of Thu Sep 03 12:25:03 -0700 2009: > By default Index#load_messages_in_thread_for does skip killed threads, > so you should already have the behavior you want without modifying the > query (unless you're using an old xapian-index version that doesn't > support killed threads). Adding a !label:killed term will actually cause > threads that are "killed" (have at least one message labeled killed) but > also have a message not labeled killed that matches the query to be > displayed, which I don't think is the behavior you're looking for.
Wow, that's surprising! But thanks for explaining that since that's the exact behavior I've been getting since I starting using queries with "!label:killed" in them, (I'm trying to get views that act like filtered versions of the inbox). Excerpts from William Morgan's message of Thu Sep 03: > I'm not sure how I feel about this patch. The semantics of being killed > are very tied to the inbox. I'm reluctant to start spreading them to > other types of buffers. William, perhaps you can take this chance to explain something to me. I've been trying to figure out the philosophy and the mechanics of sup labels and searching. >From the point-of-view of a naive user it has seemed to me like the philosophy is that threads are the primary objects so all labels apply to a thread as a whole, and all searches return results consisting of entire threads. And this all seems very good to me. But the above discussion of "killed" suggests that the mechanics aren't at all like that. But that instead, labels are applied to individual messages, and searches match individual messages and then construct threads from the results. Is that more or less how things work? So is there a mismatch between the philosophy and the mechanics, or did I just misunderstand the philosophy? That is, do current users of sup ever distinguish between searching for messages with specific labels as opposed to searching for threads that contain messages with specific labels? If not, it seems like it would be possible for a query like "!label:killed" to do exactly what is wanted without needing any special treatment for killed internally. And I'd like this, because I would sometimes want to do a similar negative filter based on my own custom labels. Does that make sense? -Carl
signature.asc
Description: PGP signature
_______________________________________________ sup-talk mailing list sup-talk@rubyforge.org http://rubyforge.org/mailman/listinfo/sup-talk