support rack 2.x
[rainbows.git] / rainbows.gemspec
blob4283a85457250e651ca03bf2bedb298631cdbd38
1 # -*- encoding: binary -*-
2 ENV["VERSION"] or abort "VERSION= must be specified"
3 manifest = File.readlines('.manifest').map! { |x| x.chomp! }
4 require 'olddoc'
5 extend Olddoc::Gemspec
6 name, summary, title = readme_metadata
8 Gem::Specification.new do |s|
9   s.name = %q{rainbows}
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)
17   s.files = manifest
18   s.homepage = Olddoc.config['rdoc_url']
19   s.summary = summary
21   # we want a newer Rack for a valid HeaderHash#each
22   s.add_dependency(%q<rack>, ['>= 1.1', '< 3.0'])
24   # kgio 2.5 has kgio_wait_* methods that take optional timeout args
25   s.add_dependency(%q<kgio>, ['~> 2.5'])
27   # we need unicorn for the HTTP parser and process management
28   # we need unicorn 5.1+ to relax the Rack dependency.
29   s.add_dependency(%q<unicorn>, ["~> 5.1"])
31   s.add_development_dependency(%q<isolate>, "~> 3.1")
32   s.add_development_dependency(%q<olddoc>, "~> 1.2")
34   # optional runtime dependencies depending on configuration
35   # see t/test_isolate.rb for the exact versions we've tested with
36   #
37   # Revactor >= 0.1.5 includes UNIX domain socket support
38   # s.add_dependency(%q<revactor>, [">= 0.1.5"])
39   #
40   # Revactor depends on Rev, too, 0.3.0 got the ability to attach IOs
41   # s.add_dependency(%q<rev>, [">= 0.3.2"])
42   #
43   # Cool.io is the new Rev, but it doesn't work with Revactor
44   # s.add_dependency(%q<cool.io>, [">= 1.0"])
45   #
46   # Rev depends on IOBuffer, which got faster in 0.1.3
47   # s.add_dependency(%q<iobuffer>, [">= 0.1.3"])
48   #
49   # We use the new EM::attach/watch API in 0.12.10
50   # s.add_dependency(%q<eventmachine>, ["~> 0.12.10"])
51   #
52   # NeverBlock, currently only available on http://gems.github.com/
53   # s.add_dependency(%q<espace-neverblock>, ["~> 0.1.6.1"])
55   # Note: To avoid ambiguity, we intentionally avoid the SPDX-compatible
56   # 'Ruby' here since Ruby 1.9.3 switched to BSD-2-Clause license while
57   # we already inherited our license from Mongrel during Ruby 1.8.
58   # We cannot automatically switch licenses when Ruby changes their license,
59   # so we remain optionally-licensed under the terms of Ruby 1.8 despite
60   # not having a good way to specify this in an SPDX-compatible way...
61   s.licenses = ['GPL-2.0+', 'Nonstandard'] # Nonstandard = 'Ruby 1.8'
62 end