1 # -*- encoding: binary -*-
2 ENV["VERSION"] or abort "VERSION= must be specified"
3 manifest = File.readlines('.manifest').map! { |x| x.chomp! }
6 name, summary, title = readme_metadata
8 Gem::Specification.new do |s|
10 s.version = ENV["VERSION"].dup
12 s.authors = ["#{name} hackers"]
13 s.description = readme_description
14 s.email = %q{rainbows-public@bogomips.org}
15 s.executables = %w(rainbows)
16 s.extra_rdoc_files = extra_rdoc_files(manifest)
18 s.homepage = Olddoc.config['rdoc_url']
20 s.rdoc_options = rdoc_options
22 # we want a newer Rack for a valid HeaderHash#each
23 s.add_dependency(%q<rack>, ['~> 1.1'])
25 # kgio 2.5 has kgio_wait_* methods that take optional timeout args
26 s.add_dependency(%q<kgio>, ['~> 2.5'])
28 # we need unicorn for the HTTP parser and process management
29 # we need unicorn 4.8.0+ since we depend on undocumented/unsupported
31 s.add_dependency(%q<unicorn>, ["~> 4.8"])
33 s.add_development_dependency(%q<isolate>, "~> 3.1")
34 s.add_development_dependency(%q<olddoc>, "~> 1.0")
36 # optional runtime dependencies depending on configuration
37 # see t/test_isolate.rb for the exact versions we've tested with
39 # Revactor >= 0.1.5 includes UNIX domain socket support
40 # s.add_dependency(%q<revactor>, [">= 0.1.5"])
42 # Revactor depends on Rev, too, 0.3.0 got the ability to attach IOs
43 # s.add_dependency(%q<rev>, [">= 0.3.2"])
45 # Cool.io is the new Rev, but it doesn't work with Revactor
46 # s.add_dependency(%q<cool.io>, [">= 1.0"])
48 # Rev depends on IOBuffer, which got faster in 0.1.3
49 # s.add_dependency(%q<iobuffer>, [">= 0.1.3"])
51 # We use the new EM::attach/watch API in 0.12.10
52 # s.add_dependency(%q<eventmachine>, ["~> 0.12.10"])
54 # NeverBlock, currently only available on http://gems.github.com/
55 # s.add_dependency(%q<espace-neverblock>, ["~> 0.1.6.1"])
57 # We inherited the Ruby 1.8 license from Mongrel, so we're stuck with it.
59 s.licenses = ["GPLv2+", "Ruby 1.8"]