about summary refs log tree commit homepage
path: root/lib
DateCommit message (Collapse)
2009-02-09HttpRequest: avoid repeated hash lookups for HTTP_BODY
read_body can be a long-running loop; so avoid wasting CPU cycles by repeatedly performing a hash lookup to get to a temporary buffer.
2009-02-09Simplify HttpResponse since we only handle Rack now
The previous API was very flexible, but I don't think many people really cared for it... We now repeatedly use the same HeaderOut in each process since I completely don't care for multithreading.
2009-02-09HttpResponse: remove send_file
2009-02-09pre-generate HTTP_STATUS_HEADER to avoid repeated snprintf
Regenerating headers constantly is a waste of time.
2009-02-09Remove StringIO usage in HeaderOut
It's more GC-friendly to just use an array than to repeatedly append short strings on top of each other. I also find StringIO confusing...
2009-02-09Disable userspace buffering on client sockets
It's really pointless to allow stdio or something similar to do any sort of buffering on a TCP socket on a Linux box where syscalls are cheap and we have TCP_CORK.
2009-02-09Remove threading and use worker processes instead
All tests for threading and semaphores have been removed. One test was changed because it depended on a shared variable. Tests will be replaced with tests to do process management instead.
2009-02-09s/Mongrel/Unicorn/g
Avoid conflicting with existing Mongrel libraries since we'll be incompatible and break things w/o disrupting Mongrel installations.
2009-02-01Merge branch 'master' of git@github.com:fauna/mongrel v0.0.0
2009-02-01Realistic defaults.
2009-01-31Merge branch 'master' of git@github.com:fauna/mongrel
* 'master' of git@github.com:fauna/mongrel: Clean up some logging.
2009-01-31Fixed lack of QUERY_STRING in env
2009-01-31Clean up some logging.
2009-01-31No more special params hash.
2009-01-31Remove abstract handler.
2009-01-31Remove CGIWrapper.
2009-01-31Made mongrel handle responces the way it should
2009-01-31Mongrel.run(app, opts)
2009-01-31No more throttling.
2009-01-31Make stop raise if server was not started.
2009-01-31Cleanup.
2009-01-31Cleanup.
2009-01-31Cleanup.
2009-01-31Removed bad requires
2009-01-31Merge pivotal code.
Breaks world. Added option to throttle number of concurrent threads processing requests. Conflicts: bin/mongrel_rails lib/mongrel.rb lib/mongrel/configurator.rb lib/mongrel/rails.rb test/unit/test_ws.rb
2009-01-31Moving toward using a logger instead of dumping to STDERR all over the place.
Remove all non-abstract handlers in favor of Rack. Conflicts: lib/mongrel/command.rb lib/mongrel/configurator.rb lib/mongrel/debug.rb lib/mongrel/handlers.rb lib/mongrel/rails.rb test/unit/test_configurator.rb
2009-01-31No commands.
2009-01-31Got rake working took out trash
2009-01-31Merge branch 'rack'
2008-12-04Removed uri_classifier, now we just use racks
2008-12-03Dont need rails adapter anymore, rack handles it
2008-12-03Dont need camping adapter anymore, rack does it for us
2008-12-01Doc fixes
2008-12-01Removed request_progress, make it a middlewear or something
2008-12-01Removed configurator completely
2008-12-01Got rid of handlers and test_conditional, now people just use rack
2008-12-01Removed configurator, replaced by Racks UrlMap
2008-12-01Got tests working with rack
2008-11-28Unjoined thread for now. Will fix later.
2008-11-22Join thread at the end of start
2008-11-22test_ws passes with rack
2008-11-22removed dispatchers
2008-11-22Remove handlers.
2008-11-22Non working rack implementation
2008-11-22Removed examples and debug.rb.
2008-11-08require 'fcntl' for the Fcntl::FD_CLOEXEC flag
Patch by Jos Backus: > /usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:94:in > `initialize': uninitialized constant > Mongrel::HttpServer::Fcntl (NameError) > > That code doesn't have the defined? test. But even if it did, > it wouldn't work as `fcntl' hadn't been require'd so the > Fcntl::FD_CLOEXEC constant couldn't be available until it was > (if it was available). > > So the right thing to do is to also apply this patch which > explicitly require's `fcntl': This is a followup to r1036 git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@1037 19e92222-5c0b-0410-8929-a290d50e31e9
2008-08-20set close-on-exec flag on listen socket
Original patch from Jos Backus, modified to work on weird platforms where Fcntl::FD_CLOEXEC may not be defined. Jos Backus wrote: > Mongrel, at least in 1.1.4, doesn't set the close-on-exec flag > on the listen socket. This leads to trouble in programs that > use Mongrel and fork other programs (like puppetmasterd, part > of Puppet). For an example, see > http://groups.google.com/group/puppet-dev/browse_thread/thread/463f0f8cfc80cc43 git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@1036 19e92222-5c0b-0410-8929-a290d50e31e9
2008-03-31Somehow the RUBY_PLATFORM regexp got lost between branches... great!
Added shebang to mongrel_rails (makes latest RubyGem happier). git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/branches/stable_1-2@1000 19e92222-5c0b-0410-8929-a290d50e31e9
2008-03-24Backport Eric's changes to the http parser from trunk (Eric Wong).
Apply fix for Ragel 6 (Eric Wong, Ry Dahl). Two tests fail with the new parser (1 failed with the old parser). Needs investigation. Close #12 (mongrel_rails send_signal leaves a filehandle open until gc). Close #14 (mongrel_rails command line option --num-procs does not change the max number of procs). Close #15 (mongrel squashes helpful exception in register method). Close #16, XXX needs audit! (CGIWrapper "options" attr_reader has no corresponding @options variable). Close #20 (Mongrel doesn't erase temporary files during it's operation on windows). Close #19, XXX needs audit! (HttpResponse#reset does not properly reset HeaderOut). Close #22 (gem_plugin should load gems from Gem.path not Gem.dir). Close #23 (mongrel_cluster's mongrel_rails configuration option isn't fully respected). If I had git, being offline wouldn't have resulted in one massive commit. git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/branches/stable_1-2@995 19e92222-5c0b-0410-8929-a290d50e31e9
2008-02-23Update all constants for the release, as Luis reminded me.
$ rpl -R -x'.java' -x'.c' -x'.rb' '1.1.3' '1.1.4' * git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/branches/stable_1-2@980 19e92222-5c0b-0410-8929-a290d50e31e9