From mboxrd@z Thu Jan 1 00:00:00 1970 Received: by 10.224.54.131 with SMTP id q3cs296898qag; Wed, 23 Feb 2011 10:42:03 -0800 (PST) Received: by 10.52.164.99 with SMTP id yp3mr6737745vdb.247.1298486523247; Wed, 23 Feb 2011 10:42:03 -0800 (PST) Return-Path: Received: from rubyforge.org (rubyforge.org [205.234.109.19]) by mx.google.com with ESMTP id i17si11800554vcs.59.2011.02.23.10.42.02; Wed, 23 Feb 2011 10:42:02 -0800 (PST) Received-SPF: pass (google.com: domain of sup-devel-bounces@rubyforge.org designates 205.234.109.19 as permitted sender) client-ip=205.234.109.19; Authentication-Results: mx.google.com; spf=pass (google.com: domain of sup-devel-bounces@rubyforge.org designates 205.234.109.19 as permitted sender) smtp.mail=sup-devel-bounces@rubyforge.org Received: from rubyforge.org (rubyforge.org [127.0.0.1]) by rubyforge.org (Postfix) with ESMTP id E0CF61858381; Wed, 23 Feb 2011 13:42:01 -0500 (EST) Received: from masanjin.net (masanjin.net [209.20.72.13]) by rubyforge.org (Postfix) with ESMTP id E76C41858379 for ; Wed, 23 Feb 2011 13:41:53 -0500 (EST) Received: from w by masanjin.net with local (Exim 4.71) (envelope-from ) id 1PsJgU-0004KK-3K for sup-devel@rubyforge.org; Wed, 23 Feb 2011 18:43:34 +0000 From: William Morgan To: sup-devel In-reply-to: <4d64d7dc.5989cc0a.4550.ffffb543@mx.google.com> References: <1298320404-sup-5972@masanjin.net> <1298400274-sup-4941@tilus.net> <1298409714-sup-1926@masanjin.net> <4d64d7dc.5989cc0a.4550.ffffb543@mx.google.com> Date: Wed, 23 Feb 2011 18:43:34 +0000 Message-Id: <1298485426-sup-5530@masanjin.net> User-Agent: Sup/git Subject: Re: [sup-devel] sup-server revisited X-BeenThere: sup-devel@rubyforge.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: Sup developer discussion List-Id: Sup developer discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: sup-devel-bounces@rubyforge.org Errors-To: sup-devel-bounces@rubyforge.org Reformatted excerpts from Nicolas Pouillard's message of 2011-02-23: > I would not go for "labels on threads" only, here is a list of labels that > are more message based than thread based: unread, starred, draft, sent, > attachment. And while it would make sense to have special cases for those > this also prevents from user defined per message labels. One of the major goals of Heliotrope is to formalize this type of thing and to implement it correctly. Here's the model: - Individual messages have "state", including unread, starred, and all the other things you've mentioned. - Threads have "labels", which are user-defined. - Message state is mapped onto thread labels by taking the union of the states of all the messages in a thread. E.g. if one message is unread, the entire thread has the unread label. - Sup maintains that mapping for you. - The user can set (some of) the state of a particular message. - The user can set the labels for a thread, but can't create labels that have the same name as a message state. - The labels of a thread match all messages in a thread at search time. Sup conflates these things, maintains labels on messages only, and does some UI stuff to make it seem like they apply to threads. It's easy to find corner cases where you get weird behavior. -- William _______________________________________________ Sup-devel mailing list Sup-devel@rubyforge.org http://rubyforge.org/mailman/listinfo/sup-devel