Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 88065 invoked from network); 9 Mar 2009 16:58:46 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 9 Mar 2009 16:58:46 -0000 Received: (qmail 89057 invoked by uid 500); 9 Mar 2009 16:58:45 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 89014 invoked by uid 500); 9 Mar 2009 16:58:45 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 89003 invoked by uid 99); 9 Mar 2009 16:58:45 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 09 Mar 2009 09:58:45 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of cmlenz@gmx.de designates 213.165.64.20 as permitted sender) Received: from [213.165.64.20] (HELO mail.gmx.net) (213.165.64.20) by apache.org (qpsmtpd/0.29) with SMTP; Mon, 09 Mar 2009 16:58:35 +0000 Received: (qmail invoked by alias); 09 Mar 2009 16:58:13 -0000 Received: from vpn.mediatis.de (EHLO [192.168.28.231]) [62.96.5.68] by mail.gmx.net (mp060) with SMTP; 09 Mar 2009 17:58:13 +0100 X-Authenticated: #2618757 X-Provags-ID: V01U2FsdGVkX1+UIdJ4iBqU2Uwxax69hf13bsf8HT2W9C2v426OGx qnLNkLE7uzKQgH Message-Id: From: Christopher Lenz To: dev@couchdb.apache.org In-Reply-To: <5D1FAFEE-4CC9-4A73-AFB0-5EA2E2B2C815@apache.org> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.4) Subject: Re: REST, Hypermedia, and CouchApps Date: Mon, 9 Mar 2009 17:58:13 +0100 References: <33A2F492-1437-4FE5-BF42-0DD12A891F27@gmx.de> <5D1FAFEE-4CC9-4A73-AFB0-5EA2E2B2C815@apache.org> X-Mailer: Apple Mail (2.930.4) X-Y-GMX-Trusted: 0 X-FuHaFi: 0.57 X-Virus-Checked: Checked by ClamAV on apache.org On 05.03.2009, at 23:34, Jan Lehnardt wrote: > On 5 Mar 2009, at 21:38, Christopher Lenz wrote: >> Actually, I'd go even further, and suggest that the "show" and >> "list" features should be part of that CouchApp plugin, and not >> actually included with CouchDB itself. You really only need those >> features when you're developing CouchApp-style applications. Moving >> them into a corresponding plugin would help keep CouchDB itself >> lean and clean. > > show and list are useful in the non-couchapp case. a list gives you > RSS/Atom feeds on views (say blog posts or events) for free. a show > would help you to mangle your data for other systems that e.g. like > to consume XML. I like that this can be done without a middleware > layer. > > I'm +1 on modularizing additional features on the Erlang level, but > show & list I'd consider core CouchDB and -1 on making them optional. "core" is a strong word for something where you just said "I like that this can be done without a middleware layer". I'm not convinced. I'm talking about the case where you already have "middleware" anyway -- if you don't, you have a CouchApp-style app. Generating Atom, HTML, and such is pretty darn convenient for me with Python and Genshi, I don't think moving that into CouchDB show/list functions will buy me anything. And since I'm hiding CouchDB itself behind that middleware I'd have to proxy the CouchDB responses through it anyway. Note that I'm just stating my opinion, I knew it'd be controversial, especially with the CouchApp fans :P I'm totally willing to accept the majority preference here, which seems pretty clearly in favor of show/list in core. Cheers, -- Christopher Lenz cmlenz at gmx.de http://www.cmlenz.net/