Return-Path: Delivered-To: apmail-incubator-couchdb-user-archive@locus.apache.org Received: (qmail 47289 invoked from network); 20 Mar 2008 04:22:55 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 20 Mar 2008 04:22:55 -0000 Received: (qmail 26688 invoked by uid 500); 20 Mar 2008 04:22:53 -0000 Delivered-To: apmail-incubator-couchdb-user-archive@incubator.apache.org Received: (qmail 26653 invoked by uid 500); 20 Mar 2008 04:22:53 -0000 Mailing-List: contact couchdb-user-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: couchdb-user@incubator.apache.org Delivered-To: mailing list couchdb-user@incubator.apache.org Received: (qmail 26643 invoked by uid 99); 20 Mar 2008 04:22:53 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 19 Mar 2008 21:22:53 -0700 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 sho.fukamachi@gmail.com designates 209.85.200.175 as permitted sender) Received: from [209.85.200.175] (HELO wf-out-1314.google.com) (209.85.200.175) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 20 Mar 2008 04:22:14 +0000 Received: by wf-out-1314.google.com with SMTP id 23so907744wfg.21 for ; Wed, 19 Mar 2008 21:22:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:from:to:in-reply-to:content-type:mime-version:subject:date:references:x-mailer; bh=TiBPmrlS537gAR98q/iEcPPs+BMa012r7gEmrg+nUrM=; b=AGsAAyx347kDeBK8H197PNkJ9TzsVpZrf5bMQM+4qRWTNTlNH+79lW5bKhbRvw/1uy9x2JZ7k11VSg7rAW9eWKdHcEqO6v7Vws+ADrWgV7150uTBKM6PYsg73k3hoG+fKouJKwQOLvrqiZ0sLlK352QWjJ36+BOcAQylfpvTIhA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=message-id:from:to:in-reply-to:content-type:mime-version:subject:date:references:x-mailer; b=Z74g0wKfdi7Uhm+MvEQMjIhUJbre6Gdz15/oCg+aKc29oTpTkqhIs8e2UKzps06M/gFtZgYVXrqMbEPt6WnVc5gXphIro3aFtsoR2fJCQI8odU665injA4G1ta3av952QIXZaa1yLYwM+pGwQnPSBRa93hHM6JRxOMCxW+HrjbY= Received: by 10.142.155.4 with SMTP id c4mr860557wfe.208.1205986945311; Wed, 19 Mar 2008 21:22:25 -0700 (PDT) Received: from ?10.1.1.8? ( [203.158.33.135]) by mx.google.com with ESMTPS id 32sm2346404wfc.3.2008.03.19.21.22.23 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 19 Mar 2008 21:22:24 -0700 (PDT) Message-Id: <6C718795-8097-495E-8BF0-8746891F3A6D@gmail.com> From: Sho Fukamachi To: couchdb-user@incubator.apache.org In-Reply-To: Content-Type: multipart/signed; boundary=Apple-Mail-183-46474245; micalg=sha1; protocol="application/pkcs7-signature" Mime-Version: 1.0 (Apple Message framework v919.2) Subject: Re: ruby interfaces - the winner is? Date: Thu, 20 Mar 2008 15:22:20 +1100 References: X-Mailer: Apple Mail (2.919.2) X-Virus-Checked: Checked by ClamAV on apache.org --Apple-Mail-183-46474245 Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Thanks for the responses! (combined reply) > I'm just now hacking together yet another Ruby CouchDB library. It's > called CouchRest and is based on Heroku's RestClient as recommended by > Noah Slater. I just took a look at that and it's a lot simpler than I thought! I'll definitely check out rest/client, maybe that's what I wanted all along. > You might try looking at CouchObject or CouchRest to see how the > thinner (less code) libraries handle CouchDB. As Johan said, the > CouchDB HTTP API is so simple and elegant, that you may not need as > much indirection as you're used to with Postgres etc. I think you might be right about that. I was assuming it was going to be a nightmare (like, as you said, writing an interface for Postgres) but looking at how simple your initial implementation is makes me think I should just roll my own. Almost all the low-level stuff I was not looking forward to doing is handled by rest-client. > That said, I'd say it really depends on what you plan on doing, since > you mention replication across three continents I'm guessing you're > comfortable with getting down and nitty-gritty with some real code > (and not just through a "framework"). Well, I don't mind getting down and dirty - it's just a matter of how much time it takes : ) But I'm beginning to think it might take so little time it's not especially faster to learn a pre-existing "framework" after all. Thanks for the responses, guys! And thanks for the code - it's really helpful. Sho --Apple-Mail-183-46474245 Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIGLzCCAugw ggJRoAMCAQICEBSIX9MtV1ZEa0RApBcv2rAwDQYJKoZIhvcNAQEFBQAwYjELMAkGA1UEBhMCWkEx JTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQ ZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5nIENBMB4XDTA3MTExODIzMTczNloXDTA4MTExNzIzMTcz NlowSTEfMB0GA1UEAxMWVGhhd3RlIEZyZWVtYWlsIE1lbWJlcjEmMCQGCSqGSIb3DQEJARYXc2hv LmZ1a2FtYWNoaUBnbWFpbC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC4VztI LAmaS1WLCldsyC8eTG9bLMGvYEwRoJXYnyqJZPXMhQHdzAbw3VTtiqZB8qaWs2QbU/UuioP0zL0N NAdCVHOORhGq59/u7obOxZOkR94yRllz5ofwpbOfTpC2u0Q6sms9ViukqumPuix2XTs3coe2VPAX lPFzyQlNOXRD0K7JLUxff3YfM1sIZTHEosNVQWIWtyw+3Hb6ZhpGLuaxqe8jYKSJ+RnE1cX0/lI8 btdT7PyNapyz8m/sGEeMf/a+O+aDRr/cv50GVQWD98CM3a1tvUob3v9iH7L/wFEGyR4V7NLuhbYr 6sqktCzICnjkrCblAIpZnWWBPbvzuJZtAgMBAAGjNDAyMCIGA1UdEQQbMBmBF3Noby5mdWthbWFj aGlAZ21haWwuY29tMAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEFBQADgYEATlDmSJ8egBeeoqwO HCxUloxGqK+hbn7EVNv21XBa0p3l8qHMoVY4IG5Uo3PmmfbtICWw9akuo1kRbhalcwLJK0Cxb32W Vs0hQMyBrlpHIJJHDfuQ5A1WHW7An20Qdp2CU8WV03TbjdrJw0K7DvwZo6FX65fMiqdDhswP0NTA HfEwggM/MIICqKADAgECAgENMA0GCSqGSIb3DQEBBQUAMIHRMQswCQYDVQQGEwJaQTEVMBMGA1UE CBMMV2VzdGVybiBDYXBlMRIwEAYDVQQHEwlDYXBlIFRvd24xGjAYBgNVBAoTEVRoYXd0ZSBDb25z dWx0aW5nMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMSQwIgYDVQQD ExtUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgQ0ExKzApBgkqhkiG9w0BCQEWHHBlcnNvbmFsLWZy ZWVtYWlsQHRoYXd0ZS5jb20wHhcNMDMwNzE3MDAwMDAwWhcNMTMwNzE2MjM1OTU5WjBiMQswCQYD VQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMj VGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0EwgZ8wDQYJKoZIhvcNAQEBBQADgY0A MIGJAoGBAMSmPFVzVftOucqZWh5owHUEcJ3f6f+jHuy9zfVb8hp2vX8MOmHyv1HOAdTlUAow1wJj WiyJFXCO3cnwK4Vaqj9xVsuvPAsH5/EfkTYkKhPPK9Xzgnc9A74r/rsYPge/QIACZNenprufZdHF KlSFD0gEf6e20TxhBEAeZBlyYLf7AgMBAAGjgZQwgZEwEgYDVR0TAQH/BAgwBgEB/wIBADBDBgNV HR8EPDA6MDigNqA0hjJodHRwOi8vY3JsLnRoYXd0ZS5jb20vVGhhd3RlUGVyc29uYWxGcmVlbWFp bENBLmNybDALBgNVHQ8EBAMCAQYwKQYDVR0RBCIwIKQeMBwxGjAYBgNVBAMTEVByaXZhdGVMYWJl bDItMTM4MA0GCSqGSIb3DQEBBQUAA4GBAEiM0VCD6gsuzA2jZqxnD3+vrL7CF6FDlpSdf0whuPg2 H6otnzYvwPQcUCCTcDz9reFhYsPZOhl+hLGZGwDFGguCdJ4lUJRix9sncVcljd2pnDmOjCBPZV+V 2vf3h9bGCE6u9uo05RAaWzVNd+NWIXiC3CEZNd4ksdMdRv9dX2VPMYIDEDCCAwwCAQEwdjBiMQsw CQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UE AxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0ECEBSIX9MtV1ZEa0RApBcv2rAw CQYFKw4DAhoFAKCCAW8wGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcN MDgwMzIwMDQyMjIxWjAjBgkqhkiG9w0BCQQxFgQU+NOutgrPSGWUyhRVjPPjSS2qv60wgYUGCSsG AQQBgjcQBDF4MHYwYjELMAkGA1UEBhMCWkExJTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQ dHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5nIENBAhAU iF/TLVdWRGtEQKQXL9qwMIGHBgsqhkiG9w0BCRACCzF4oHYwYjELMAkGA1UEBhMCWkExJTAjBgNV BAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJzb25h bCBGcmVlbWFpbCBJc3N1aW5nIENBAhAUiF/TLVdWRGtEQKQXL9qwMA0GCSqGSIb3DQEBAQUABIIB AB3a8fDCFN41NJ8RAqEN1pLeRgOmVlL8AwhPoPVQ2vtYuAvAuqpZ4ukmXycarfViOVeK/cOaOt9r qUrASfIMvlZbmHqR54qSTlGuUKB53oszlU1iuYPb0jih+35ysEDuTuvUGW37HPEH/y6biOgfouNR 9Dip1RPQrdSHyYIxajP69+R8a7rETDXX28grBibm8IKNpe8joO5tnAzn+q3asRaiswnct5YyKlOc /CJiGzGU5BnZ5czaEQEbZOkDk0MJTTlnc9jCfNPmQP1J07abjIn2d0qtuHCilk6Cy7gFxR1lShRB 5sJ63/TTthIVDQHznzDa0Wue3MyLEqPhSrjanWMAAAAAAAA= --Apple-Mail-183-46474245--