unicorn is an HTTP server for Rack applications designed to only serve fast clients on low-latency, high-bandwidth connections and take advantage of features in Unix/Unix-like kernels. Slow clients should only be served by placing a reverse proxy capable of fully buffering both the the request and response in between unicorn and slow clients. Disclaimer: Due to its ability to tolerate crashes and isolate clients, unicorn is unfortunately known to prolong the existence of bugs in applications and libraries which run on top of it. Consider this just an announcement to inform existing users of a new version, not something to convince you to switch to something that set the entire Ruby world back decades in terms of concurrency. Note: .onion URLs below are available for Tor users and can reduce our operating costs: * https://yhbt.net/unicorn/ http://unicorn.7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/ * public list: unicorn-public@yhbt.net * mail archives: https://yhbt.net/unicorn-public/ http://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/unicorn-public/ * git clone https://yhbt.net/unicorn.git torsocks git clone http://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/unicorn.git * https://yhbt.net/unicorn/NEWS.atom.xml http://unicorn.7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/NEWS.atom.xml * nntps://news.public-inbox.org/inbox.comp.lang.ruby.unicorn nntp://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/inbox.comp.lang.ruby.unicorn imaps://yhbt.net/inbox.comp.lang.ruby.unicorn.0 imap://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/inbox.comp.lang.ruby.unicorn.0 Changes: This release reduces CPU usage for Linux 4.5+ in most cases. See "[PATCH 6/6] use EPOLLEXCLUSIVE on Linux 4.5+" for more details: https://yhbt.net/unicorn-public/20211001030923.26705-7-bofh@yhbt.net/ There's a couple of updates for Ruby 3.1, but we've finally started relying on Ruby 2.0.0 features after 9 years :P (so Ruby 1.9.3 users are stuck with older versions). And the usual round of doc updates and some build speedups. 13 changes by the Bozo Doofus maintainer since v6.0.0: test_util: less excessive encoding tests drop Ruby 1.9.3 support, require 2.0+ for now drop unnecessary IO#close_on_exec=true assignment extconf.rb: get rid of unnecessary checks makefile: reduce unnecessary rebuilds HACKING: drop outdated information about pandoc http_server: get rid of Process.ppid check worker_loop: get rid of select() avoidance hack use EPOLLEXCLUSIVE on Linux 4.5+ allow Ruby to deduplicate remaining globals epollexclusive: remove rb_gc_force_recycle call drop Ruby version warning, fix speling errer doc: v3 .onion updates, nntp => nntps, minor wording changes
The warning was probably lost in the noise of the build, anyways. --- ext/unicorn_http/extconf.rb | 5 ----- unicorn.gemspec | 2 +- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/ext/unicorn_http/extconf.rb b/ext/unicorn_http/extconf.rb index 13dec412..80d00e56 100644 --- a/ext/unicorn_http/extconf.rb +++ b/ext/unicorn_http/extconf.rb @@ -1,11 +1,6 @@ # -*- encoding: binary -*- require 'mkmf' -unless RUBY_VERSION < '3.1' - warn "Unicorn was only tested against MRI up to 3.0.\n" \ - "It might not properly work with #{RUBY_VERSION}" -end - have_func("rb_hash_clear", "ruby.h") or abort 'Ruby 2.0+ required' message('checking if String#-@ (str_uminus) dedupes... ') diff --git a/unicorn.gemspec b/unicorn.gemspec index 9230199d..b12cf9d3 100644 --- a/unicorn.gemspec +++ b/unicorn.gemspec @@ -25,7 +25,7 @@ s.homepage = 'https://yhbt.net/unicorn/' s.test_files = test_files - # 2.0.0 is the minumum supported version. We don't specify + # 2.0.0 is the minimum supported version. We don't specify # a maximum version to make it easier to test pre-releases, # but we do warn users if they install unicorn on an untested # version in extconf.rb
All tested on some of the same HW I had in 2008/2009 :> Bozo Doofus For Life (3): epollexclusive: remove rb_gc_force_recycle call drop Ruby version warning, fix speling errer doc: v3 .onion updates, nntp => nntps, minor wording changes .olddoc.yml | 11 +++++---- CONTRIBUTORS | 8 +++++-- ISSUES | 38 +++++++++++++++---------------- README | 8 +++---- ext/unicorn_http/epollexclusive.h | 1 - ext/unicorn_http/extconf.rb | 5 ---- unicorn.gemspec | 2 +- 7 files changed, 36 insertions(+), 37 deletions(-)