From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eric Wong Newsgroups: gmane.comp.lang.ruby.mongrel.devel Subject: Re: [ANN] Unicorn: UNIX+localhost/LAN-only Mongrel fork Date: Sat, 21 Feb 2009 07:10:17 -0800 Message-ID: <20090221151017.GA3788@untitled> References: <20090211230457.GB22926@dcvr.yhbt.net> <20090216233904.GB3198@dcvr.yhbt.net> <2A92C72C-498A-4A6E-9035-059CCF4C7371@gmail.com> <20090218004036.GA29439@dcvr.yhbt.net> Reply-To: mongrel-development-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1235231637 8788 80.91.229.12 (21 Feb 2009 15:53:57 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 21 Feb 2009 15:53:57 +0000 (UTC) To: mongrel-development-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org Original-X-From: mongrel-development-bounces-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org Sat Feb 21 16:55:12 2009 Return-path: Envelope-to: gclrmd-mongrel-development@m.gmane.org Content-Disposition: inline In-Reply-To: <20090218004036.GA29439-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org> User-Agent: Mutt/1.5.18 (2008-05-17) X-BeenThere: mongrel-development-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: mongrel-development-bounces-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org Errors-To: mongrel-development-bounces-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org Xref: news.gmane.org gmane.comp.lang.ruby.mongrel.devel:94 Archived-At: Received: from rubyforge.org ([205.234.109.19]) by lo.gmane.org with esmtp (Exim 4.50) id 1LauC7-0005GO-2d for gclrmd-mongrel-development@m.gmane.org; Sat, 21 Feb 2009 16:55:11 +0100 Received: from rubyforge.org (rubyforge.org [127.0.0.1]) by rubyforge.org (Postfix) with ESMTP id 6063E18580EE; Sat, 21 Feb 2009 10:53:48 -0500 (EST) Received: from dcvr.yhbt.net (dcvr.yhbt.net [64.71.152.64]) by rubyforge.org (Postfix) with ESMTP id 746F818580EE for ; Sat, 21 Feb 2009 10:10:19 -0500 (EST) Received: from localhost (unknown [127.0.2.5]) by dcvr.yhbt.net (Postfix) with ESMTP id 4A62B1F5FD; Sat, 21 Feb 2009 15:10:18 +0000 (UTC) List-Post: Eric Wong wrote: > Ezra Zygmuntowicz wrote: > > Seems to work as advertised so far, cool stuff ;) One suggestion, folks > > are pretty standardized on rack and config.ru files these days. I'd much > > rather see unicorn look for a APP_ROOT/config.ru to load as its config > > file rather then the eval that returns a hash style it uses now. > > Ezra, thanks for testing and feedback. Good point about config.ru, > I'll try to make that change hopefully today to make it easier to > migrate from existing Rack apps. I just pushed out the following changes. * revamp configuration with Configurator DSL * Replace unicorn binary with something rackup-like * GNUMakefile: revamp for parallel 1.8/1.9 runs * test_exec: fix for temporary files not being cleaned * Fix+test reexec error handling on bad inputs There's also a few to http11 for general Rack compatibility that should probably be merged for Mongrel 2.0: * http11: set SERVER_NAME env regardless of Host: header * http11: don't bother defining SERVER_SOFTWARE (actually I think I only introduced this second one into Unicorn when I renamed the sources and stripped out a line) Basically the latest push includes config.ru compatibility and new test cases in test/exec/test_exec.rb for binary reexecution, listener inheritance, and reloading config files (even bad ones). This new config stuff is completely untested for any real apps and I'll need to update the examples soonish. But the new test cases pass in both 1.9.1 and 1.8.7, which is a good sign. I think I'll be writing more tests for various parts in the next few days and avoiding major changes otherwise since I'm satisfied with the existing feature set. I also lack many real apps to test on atm since the production apps I admin are still on various pre-Rack Rails versions[1]. So yeah, some real world testing/feedback by you all would be greatly appreciated. [1] Speaking of which, has anybody written a Rack app that wraps old Rails interfaces and makes them Rack-compatible yet? -- Eric Wong