Re: [Jmap] Hacker News Discussion - getMailboxes single data set vs tree primitives or paging

Ted Lemon <mellon@fugue.com> Sun, 07 May 2017 16:14 UTC

Return-Path: <mellon@fugue.com>
X-Original-To: jmap@ietfa.amsl.com
Delivered-To: jmap@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BAEBF126CE8 for <jmap@ietfa.amsl.com>; Sun, 7 May 2017 09:14:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.601
X-Spam-Level:
X-Spam-Status: No, score=-2.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=fugue-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zlwJCV5TyCfN for <jmap@ietfa.amsl.com>; Sun, 7 May 2017 09:14:51 -0700 (PDT)
Received: from mail-qk0-x231.google.com (mail-qk0-x231.google.com [IPv6:2607:f8b0:400d:c09::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 64E19124D6C for <jmap@ietf.org>; Sun, 7 May 2017 09:14:51 -0700 (PDT)
Received: by mail-qk0-x231.google.com with SMTP id u75so36172601qka.3 for <jmap@ietf.org>; Sun, 07 May 2017 09:14:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fugue-com.20150623.gappssmtp.com; s=20150623; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=G+l+rRyZNyksP+BH5XVyJP6rTD+IOL3GX+9SY/cRWAA=; b=SjNqsF52ecr7zyRPtwXDXDM7mxDl43OUKfhhLoAlh1T7v45lAIXlXgPVYd/e67c9X3 dtZ2o72poTH81OZ2E0KDYwAkhPv6O9ecY/8dKwqxS7KToRCpm5tRP36pp+RkysKTp9GS KS0qIc9z3lQLId5iJFyhmyXvYC5jkzLBbVhrqeo5sy/pEmvOGFWXuvf7wIJF9qNwRllH lR3OTROH6KkwcSj1ey/Dh1ogLnFI4W9TAzp0Vj/5Wpj9hDxRjwgKsA5kPGCGX1+Gjkn4 LBxbgGXmx4SnlT17CaV6ctEwFgcZvQxArQIhYtHrUf5mm2+aeMi30rph/kdZmhgqWi3a 8yIQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=G+l+rRyZNyksP+BH5XVyJP6rTD+IOL3GX+9SY/cRWAA=; b=Iw0op81yH73IoESZzy/x42niFln4ifkjLz6FPnw3yiK0RYBdWiDIAcDbFm+n55zfH8 +bSOXtg53seEwYdfq8PMU04eCnybuQBy9lMjibE0eVEMM8pX9/CqJZvCb8VYo3IXH9b6 eehFB0habsK25hu+ZHr18uaJWC0R4C32d59HFtSIqSGnBNz6NgfVzMhcCwwfMUQQs0NU AQmP7McGzHxTSzCEpHdFv4klVyyqGSduh+atdmYbyLIe8e2sUzoE1fujE48h8vo7a9FZ +VyHFSyTE9G+wfw8vyoZmwbg6ATUNHs5H/nCQW0w2njPOCXn1rkN0DHX5tZku+ZIgK5e aO/g==
X-Gm-Message-State: AODbwcByX3lWWAzUop7k5F2ZJJJ2T+ubiXzVsX6gPHK7V7vBFFMFziKb p2mc0v2eUKheBmCPDRA=
X-Received: by 10.55.214.76 with SMTP id t73mr24007349qki.279.1494173690312; Sun, 07 May 2017 09:14:50 -0700 (PDT)
Received: from [10.0.30.228] (c-73-167-64-188.hsd1.nh.comcast.net. [73.167.64.188]) by smtp.gmail.com with ESMTPSA id b130sm8643908qka.0.2017.05.07.09.14.49 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 07 May 2017 09:14:49 -0700 (PDT)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
From: Ted Lemon <mellon@fugue.com>
In-Reply-To: <20170507123912.GA22520@snake.grepular.com>
Date: Sun, 07 May 2017 12:14:47 -0400
Cc: jmap@ietf.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <FF749B75-173D-4086-BAE6-AFB897D5F676@fugue.com>
References: <20170507123912.GA22520@snake.grepular.com>
To: Mike Cardwell <jmap@lists.grepular.com>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/jmap/kyDs4ZnJAmCSFoLQomuJNsBZNS8>
Subject: Re: [Jmap] Hacker News Discussion - getMailboxes single data set vs tree primitives or paging
X-BeenThere: jmap@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: JSON Message Access Protocol <jmap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jmap>, <mailto:jmap-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jmap/>
List-Post: <mailto:jmap@ietf.org>
List-Help: <mailto:jmap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jmap>, <mailto:jmap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 07 May 2017 16:14:53 -0000

I tend to think that folders are only notionally hierarchical, so I don't love the idea of hierarchy as the mechanism for hiding folders that are no longer relevant.   Why not just have an archived flag?   Clients that care about archived folders can sync that list; clients that do not, do not have to.   The archived flag could be done automatically: "flag anything that hasn't had any new messages added to it in the past year as archived".  Or "flag anything that is hierarchically below this folder as archived" for your use case.   You could even have an "archived-when" modifier.

If there are to be bazillions of folders, the folder list could also be treated as a versioned entity and traded about using diffs.