Re: [Jmap] JMAP for Files

Neil Jenkins <neilj@fastmailteam.com> Thu, 11 February 2021 10:02 UTC

Return-Path: <neilj@fastmailteam.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 B9F3D3A1460 for <jmap@ietfa.amsl.com>; Thu, 11 Feb 2021 02:02:03 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.119
X-Spam-Level:
X-Spam-Status: No, score=-2.119 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=fastmailteam.com header.b=dz9WiYzp; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=RVyD6Gap
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 tKEjDwxf7D4X for <jmap@ietfa.amsl.com>; Thu, 11 Feb 2021 02:02:01 -0800 (PST)
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 123553A145F for <jmap@ietf.org>; Thu, 11 Feb 2021 02:02:01 -0800 (PST)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 684DB5C00A1 for <jmap@ietf.org>; Thu, 11 Feb 2021 05:02:00 -0500 (EST)
Received: from imap7 ([10.202.2.57]) by compute3.internal (MEProxy); Thu, 11 Feb 2021 05:02:00 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= fastmailteam.com; h=mime-version:message-id:in-reply-to :references:date:from:to:subject:content-type; s=fm1; bh=ORikYuR 2Y2AGvOTNH/wC5uxRpcW98/EBjaak40IaMks=; b=dz9WiYzp4xJtNwc9e2ZiPe/ vs6RTsBDMSzom0MMjimLjiM85gD8SjzETbrgTYQXQ/iBoL+bk4xxOih2N2nKWd1O jFyizQv3jAYPzTzA9Xdwrq7z0FQr1xo5uUB4u5Frf2uLrDUjW9hokJdaGQAyGJ+7 ZqPFaRTsSF0onXmVuDvkJXyBP26t9D3710UObSq0pIrdMgLh6UBIJnpe/Xa8WhDr aSeHw8vN3DHMYUavqixJ5BeZkR9aKqkPOUdfvibqv5IuWMeRotN6ufnOZG2P7RPr rv49wFJ4+R0brT/VvMykdhRSG3+cBefJltf8TpyZ05Cq275ji5THaDNOx05lsng= =
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=ORikYu R2Y2AGvOTNH/wC5uxRpcW98/EBjaak40IaMks=; b=RVyD6Gap7D0PpvgG1gjWwW aB97tBnnW+Cr8ettszO6kP0KFcjNOhs7EB9NWQvH4GMYYO0Xun5+9PpKVx3hMPYN 42o7a0HyE3RSubd5z0xkxmYgP2vkz9ejwfy013uaqN2wKvpihOpbaCxrEeiKKJ/U Og91s0EyF0NCEQ7Z2wjff0NjkLt83EBaXknaPmsXQ93XCWxW4UXVwx1kh14tZTQe hOyU+QIT5/NmvLiUJisqm/EsrAHULhcj2gc+dnRF2avhdU4JP/7SoUo43sOsDhMY D9cWZgYNaMnW2ZylJesL7WWbFPGQAq3UKbw9LA0obsdHbKnrwNfnmbggsSEyJ/mQ ==
X-ME-Sender: <xms:lwAlYEcHrfWZ1n6bGxWN3n0IwYPbdlUtQTL7RMmeCBiZZNpjhQCTDA> <xme:lwAlYGP_n544fmFuGQD45aGyOvWdwPAn5D-54N8DGWO-7PAw0VHwhMe2mV2k1Or-s -Y_V0QCvHs89Q>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrheelgddtkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefofgggkfgjfhffhffvufgtsehmtderreerredtnecuhfhrohhmpedfpfgvihhl ucflvghnkhhinhhsfdcuoehnvghilhhjsehfrghsthhmrghilhhtvggrmhdrtghomheqne cuggftrfgrthhtvghrnhepkeeiteejtdeiieegjeehleehffffiedugfdugeetleetleev gffhheegteduheefnecuffhomhgrihhnpehfrghsthhmrghilhdrtghomhenucevlhhush htvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehnvghilhhjsehfrghs thhmrghilhhtvggrmhdrtghomh
X-ME-Proxy: <xmx:lwAlYFgHN4oexKNJOn4aMNeynJyPcL46tiHswr2zYlmax-nuq4zmeA> <xmx:lwAlYJ-cCqSf-UB7z0gCntWBRHGJuE-vYKhLTqrXgaNgm0FCltfJkA> <xmx:lwAlYAtOE-ISYD06OyakYbfHos3XHBHRTXLzbrcAQcw_e_IZme0D7w> <xmx:mAAlYO5zZtUw_LeNVT2oapWbj_utuC9sAn1yZQ_XqMKRFvANomaA5A>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 95057360064; Thu, 11 Feb 2021 05:01:59 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.5.0-alpha0-141-gf094924a34-fm-20210210.001-gf094924a
Mime-Version: 1.0
Message-Id: <7fdb0cd1-c0d2-4ba1-ad37-00131e46ba2d@dogfood.fastmail.com>
In-Reply-To: <241335e1-dc0d-6504-c85f-1b0d7a6e0a31@audriga.com>
References: <241335e1-dc0d-6504-c85f-1b0d7a6e0a31@audriga.com>
Date: Thu, 11 Feb 2021 21:01:58 +1100
From: "Neil Jenkins" <neilj@fastmailteam.com>
To: "IETF JMAP Mailing List" <jmap@ietf.org>
Content-Type: multipart/mixed; boundary=cbb12d1c87c5474baa7df1946f798b2d
Archived-At: <https://mailarchive.ietf.org/arch/msg/jmap/DGMoW4CvUNkGxAjxPATYFx9uMQU>
Subject: Re: [Jmap] JMAP for Files
X-BeenThere: jmap@ietf.org
X-Mailman-Version: 2.1.29
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: Thu, 11 Feb 2021 10:02:05 -0000

Hi Joris,

> We saw that Fastmail has custom support for files via 
> https://www.fastmail.com/dev/files . Is there already something we could 
> use, like an initial, rough draft?

Sure, I've attached our internal spec for what we call the *StorageNode* data type, which represents a file/folder in a user's file storage. It's really pretty simple compared to the other JMAP data types; it just defines the filesystem hierarchy and metadata, and then the standard JMAP blob system takes care of uploads/downloads. You are welcome to use this as a basis for a draft if there's enough interest to standardise this.

> Maybe even some premature server/client implementations already exist that you could share with us?

We implement the attached spec at Fastmail but it's not something we are able to usefully open source at this time; it's deeply tied to our internal file storage system.

Neil.