Return-Path: Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: (qmail 27656 invoked from network); 15 Jan 2010 09:50:46 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 15 Jan 2010 09:50:46 -0000 Received: (qmail 611 invoked by uid 500); 15 Jan 2010 09:50:45 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 528 invoked by uid 500); 15 Jan 2010 09:50:45 -0000 Mailing-List: contact user-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@couchdb.apache.org Delivered-To: mailing list user@couchdb.apache.org Received: (qmail 518 invoked by uid 99); 15 Jan 2010 09:50:45 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Jan 2010 09:50:45 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of b.candler@pobox.com designates 208.72.237.25 as permitted sender) Received: from [208.72.237.25] (HELO sasl.smtp.pobox.com) (208.72.237.25) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Jan 2010 09:50:35 +0000 Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTP id 8455F91914 for ; Fri, 15 Jan 2010 04:50:12 -0500 (EST) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=date:from:to :subject:message-id:references:mime-version:content-type :in-reply-to; s=sasl; bh=SrLzPk7ACec64+4SpOGCIE5nG0E=; b=bnnGvS8 ltpbntMpSAoVBFH0Us4Cfs47yiyPhmTUANDXbcDlh06SQ+iLGCjMGE3rbgeWPjmF GBQk+Su/ZOx0kCs0JUlEd5fNo01taKHj0qY3WHwj4zVOpbC78NWLu9UslXuytREy sjYgVJTNxTfQU/QIgQKxDFWE8aZHoI5xiM9w= DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=date:from:to :subject:message-id:references:mime-version:content-type :in-reply-to; q=dns; s=sasl; b=FxS498RNr9RKDjTLKeZdun7N4y63sXqrS lMWyJr7/b/rzFbNVdiqlF0Wgb65BOdTkSl+OnNbujHU9Qb7Vxhy0QZrjGPTAkaSy OVZ5IqR+BC+Gy/4jvtZNysBWZcJYwPsQJuLJiHH0qONFff8D84zfXC7x8l4+7Whx ZDehkFv70w= Received: from a-pb-sasl-quonix. (unknown [127.0.0.1]) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTP id 8095191913 for ; Fri, 15 Jan 2010 04:50:12 -0500 (EST) Received: from zino (unknown [87.194.77.98]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTPSA id 4AB4991912 for ; Fri, 15 Jan 2010 04:50:12 -0500 (EST) Received: from lists by zino with local (Exim 4.69) (envelope-from ) id 1NViok-0001yG-Cz for user@couchdb.apache.org; Fri, 15 Jan 2010 09:50:10 +0000 Date: Fri, 15 Jan 2010 09:50:10 +0000 From: Brian Candler To: user@couchdb.apache.org Subject: Binary data [was Bulk CSV import?] Message-ID: <20100115095010.GA7498@uk.tiscali.com> References: <20100114164558.GA32497@uk.tiscali.com> <20100114221231.GB10239@uk.tiscali.com> <20100115084554.GA4187@uk.tiscali.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100115084554.GA4187@uk.tiscali.com> User-Agent: Mutt/1.5.20 (2009-06-14) X-Pobox-Relay-ID: 5FF6D022-01BB-11DF-A961-6AF7ED7EF46B-28021239!a-pb-sasl-quonix.pobox.com A couple more thoughts about importing and exporting aggregate batches of document-oriented data. * A desktop-friendly way to bundle documents is in a ZIP file. Unfortunately that's a binary format, and _list/_external use a JSON (UTF-8) protocol. I see that an _external function can give back base64-encoded binary data: http://wiki.apache.org/couchdb/ExternalProcesses I don't think _list or _show can, and in any case you'd need a ZIP library written in Javascript. Maybe this is too far out of scope for a JS-backed CouchApp. But with erlview it makes a lot more sense: you have a binary-clean interface, and many libraries available for handling binary formats. e.g. http://www.erlang.org/doc/man/zip.html * The other option I've tried is MIME multipart documents, but in my testing I found that browsers don't handle them well. At best you just get the first one saved. I think that option can be discarded. Regards, Brian.