From mboxrd@z Thu Jan 1 00:00:00 1970 Delivered-To: chneukirchen@gmail.com Received: by 10.142.191.1 with SMTP id o1cs114683wff; Mon, 14 Dec 2009 10:42:53 -0800 (PST) Received: from mr.google.com ([10.91.63.35]) by 10.91.63.35 with SMTP id q35mr3712076agk.12.1260816171291 (num_hops = 1); Mon, 14 Dec 2009 10:42:51 -0800 (PST) Received: by 10.91.63.35 with SMTP id q35mr504013agk.12.1260816151858; Mon, 14 Dec 2009 10:42:31 -0800 (PST) X-BeenThere: rack-devel@googlegroups.com Received: by 10.204.151.83 with SMTP id b19ls1161612bkw.2.p; Mon, 14 Dec 2009 10:42:29 -0800 (PST) Received: by 10.204.154.88 with SMTP id n24mr168101bkw.12.1260816149451; Mon, 14 Dec 2009 10:42:29 -0800 (PST) Received: by 10.204.154.88 with SMTP id n24mr168100bkw.12.1260816149433; Mon, 14 Dec 2009 10:42:29 -0800 (PST) Return-Path: Received: from dcvr.yhbt.net (dcvr.yhbt.net [64.71.152.64]) by gmr-mx.google.com with ESMTP id 11si313197bwz.15.2009.12.14.10.42.28; Mon, 14 Dec 2009 10:42:29 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of normalperson@yhbt.net designates 64.71.152.64 as permitted sender) client-ip=64.71.152.64; Received: from localhost (dcvr.yhbt.net [127.0.0.1]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPSA id 10E741F4FA; Mon, 14 Dec 2009 18:42:28 +0000 (UTC) Date: Mon, 14 Dec 2009 18:42:27 +0000 From: Eric Wong To: rack-devel@googlegroups.com Subject: Re: [ANN/RFC] LMGTWTY - Web Sockets for Rack+Rainbows! Message-ID: <20091214184227.GB12789@dcvr.yhbt.net> References: <20091211201958.GD2121@dcvr.yhbt.net> <20091213205355.GB30229@dcvr.yhbt.net> MIME-Version: 1.0 In-Reply-To: User-Agent: Mutt/1.5.18 (2008-05-17) X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: best guess record for domain of normalperson@yhbt.net designates 64.71.152.64 as permitted sender) smtp.mail=normalperson@yhbt.net X-Original-Sender: normalperson@yhbt.net Reply-To: rack-devel@googlegroups.com Precedence: list Mailing-list: list rack-devel@googlegroups.com; contact rack-devel+owners@googlegroups.com List-ID: List-Post: , List-Help: , List-Archive: X-Thread-Url: http://groups.google.com/group/rack-devel/t/1214d460ed982748 X-Message-Url: http://groups.google.com/group/rack-devel/msg/83e2f358c3e37562 Sender: rack-devel@googlegroups.com List-Unsubscribe: , List-Subscribe: , Content-Type: text/plain; charset=us-ascii Content-Disposition: inline James Tucker wrote: > On 14 Dec 2009, at 00:23, Lakshan Perera wrote: > > This is awesome! Thanks for coming up something like this, in a > > short period of time. I hope this would be part of Rack, which > > would enable all Ruby Frameworks to work effortlessly with > > WebSockets. > > I really want to work out an abstraction away from IO instances, #read > and #write for this stuff. It's highly coupled, getting in the way of > tests, and heavy lifting environments. I have big plans for Rack 2.0 > to remove all IO that has not been properly abstracted and decoupled > from implementation details, but that's a long way off, mostly due to > lack of time and incentive. In the meantime, I can implore you all to > take steps in the right direction :-) Huh? I don't see what the problem with IO instances/semantics is, especially with the availability of StringIO for testing. "rack.input" is clearly specified and works fine as-is IMHO, though the rewindability requirement does add some unnecessary overhead. -- Eric Wong