thin 1.2.3-x86-mswin32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of thin might be problematic. Click here for more details.

Files changed (137) hide show
  1. data/CHANGELOG +263 -0
  2. data/COPYING +18 -0
  3. data/README +69 -0
  4. data/Rakefile +36 -0
  5. data/benchmark/abc +51 -0
  6. data/benchmark/benchmarker.rb +80 -0
  7. data/benchmark/runner +82 -0
  8. data/bin/thin +6 -0
  9. data/example/adapter.rb +32 -0
  10. data/example/async_app.ru +126 -0
  11. data/example/async_chat.ru +247 -0
  12. data/example/async_tailer.ru +100 -0
  13. data/example/config.ru +22 -0
  14. data/example/monit_sockets +20 -0
  15. data/example/monit_unixsock +20 -0
  16. data/example/myapp.rb +1 -0
  17. data/example/ramaze.ru +12 -0
  18. data/example/thin.god +80 -0
  19. data/example/thin_solaris_smf.erb +36 -0
  20. data/example/thin_solaris_smf.readme.txt +150 -0
  21. data/example/vlad.rake +64 -0
  22. data/ext/thin_parser/common.rl +55 -0
  23. data/ext/thin_parser/ext_help.h +14 -0
  24. data/ext/thin_parser/extconf.rb +6 -0
  25. data/ext/thin_parser/parser.c +452 -0
  26. data/ext/thin_parser/parser.h +49 -0
  27. data/ext/thin_parser/parser.rl +157 -0
  28. data/ext/thin_parser/thin.c +433 -0
  29. data/lib/rack/adapter/loader.rb +79 -0
  30. data/lib/rack/adapter/rails.rb +181 -0
  31. data/lib/thin.rb +46 -0
  32. data/lib/thin/backends/base.rb +141 -0
  33. data/lib/thin/backends/swiftiply_client.rb +56 -0
  34. data/lib/thin/backends/tcp_server.rb +29 -0
  35. data/lib/thin/backends/unix_server.rb +51 -0
  36. data/lib/thin/command.rb +53 -0
  37. data/lib/thin/connection.rb +222 -0
  38. data/lib/thin/controllers/cluster.rb +127 -0
  39. data/lib/thin/controllers/controller.rb +183 -0
  40. data/lib/thin/controllers/service.rb +75 -0
  41. data/lib/thin/controllers/service.sh.erb +39 -0
  42. data/lib/thin/daemonizing.rb +174 -0
  43. data/lib/thin/headers.rb +39 -0
  44. data/lib/thin/logging.rb +54 -0
  45. data/lib/thin/request.rb +153 -0
  46. data/lib/thin/response.rb +101 -0
  47. data/lib/thin/runner.rb +209 -0
  48. data/lib/thin/server.rb +247 -0
  49. data/lib/thin/stats.html.erb +216 -0
  50. data/lib/thin/stats.rb +52 -0
  51. data/lib/thin/statuses.rb +43 -0
  52. data/lib/thin/version.rb +32 -0
  53. data/lib/thin_parser.so +0 -0
  54. data/spec/backends/swiftiply_client_spec.rb +66 -0
  55. data/spec/backends/tcp_server_spec.rb +33 -0
  56. data/spec/backends/unix_server_spec.rb +37 -0
  57. data/spec/command_spec.rb +25 -0
  58. data/spec/configs/cluster.yml +9 -0
  59. data/spec/configs/single.yml +9 -0
  60. data/spec/connection_spec.rb +106 -0
  61. data/spec/controllers/cluster_spec.rb +235 -0
  62. data/spec/controllers/controller_spec.rb +129 -0
  63. data/spec/controllers/service_spec.rb +50 -0
  64. data/spec/daemonizing_spec.rb +192 -0
  65. data/spec/headers_spec.rb +40 -0
  66. data/spec/logging_spec.rb +46 -0
  67. data/spec/perf/request_perf_spec.rb +50 -0
  68. data/spec/perf/response_perf_spec.rb +19 -0
  69. data/spec/perf/server_perf_spec.rb +39 -0
  70. data/spec/rack/loader_spec.rb +29 -0
  71. data/spec/rack/rails_adapter_spec.rb +106 -0
  72. data/spec/rails_app/app/controllers/application.rb +10 -0
  73. data/spec/rails_app/app/controllers/simple_controller.rb +19 -0
  74. data/spec/rails_app/app/helpers/application_helper.rb +3 -0
  75. data/spec/rails_app/app/views/simple/index.html.erb +15 -0
  76. data/spec/rails_app/config/boot.rb +109 -0
  77. data/spec/rails_app/config/environment.rb +64 -0
  78. data/spec/rails_app/config/environments/development.rb +18 -0
  79. data/spec/rails_app/config/environments/production.rb +19 -0
  80. data/spec/rails_app/config/environments/test.rb +22 -0
  81. data/spec/rails_app/config/initializers/inflections.rb +10 -0
  82. data/spec/rails_app/config/initializers/mime_types.rb +5 -0
  83. data/spec/rails_app/config/routes.rb +35 -0
  84. data/spec/rails_app/public/404.html +30 -0
  85. data/spec/rails_app/public/422.html +30 -0
  86. data/spec/rails_app/public/500.html +30 -0
  87. data/spec/rails_app/public/dispatch.cgi +10 -0
  88. data/spec/rails_app/public/dispatch.fcgi +24 -0
  89. data/spec/rails_app/public/dispatch.rb +10 -0
  90. data/spec/rails_app/public/favicon.ico +0 -0
  91. data/spec/rails_app/public/images/rails.png +0 -0
  92. data/spec/rails_app/public/index.html +277 -0
  93. data/spec/rails_app/public/javascripts/application.js +2 -0
  94. data/spec/rails_app/public/javascripts/controls.js +963 -0
  95. data/spec/rails_app/public/javascripts/dragdrop.js +972 -0
  96. data/spec/rails_app/public/javascripts/effects.js +1120 -0
  97. data/spec/rails_app/public/javascripts/prototype.js +4225 -0
  98. data/spec/rails_app/public/robots.txt +5 -0
  99. data/spec/rails_app/script/about +3 -0
  100. data/spec/rails_app/script/console +3 -0
  101. data/spec/rails_app/script/destroy +3 -0
  102. data/spec/rails_app/script/generate +3 -0
  103. data/spec/rails_app/script/performance/benchmarker +3 -0
  104. data/spec/rails_app/script/performance/profiler +3 -0
  105. data/spec/rails_app/script/performance/request +3 -0
  106. data/spec/rails_app/script/plugin +3 -0
  107. data/spec/rails_app/script/process/inspector +3 -0
  108. data/spec/rails_app/script/process/reaper +3 -0
  109. data/spec/rails_app/script/process/spawner +3 -0
  110. data/spec/rails_app/script/runner +3 -0
  111. data/spec/rails_app/script/server +3 -0
  112. data/spec/request/mongrel_spec.rb +39 -0
  113. data/spec/request/parser_spec.rb +215 -0
  114. data/spec/request/persistent_spec.rb +35 -0
  115. data/spec/request/processing_spec.rb +45 -0
  116. data/spec/response_spec.rb +91 -0
  117. data/spec/runner_spec.rb +168 -0
  118. data/spec/server/builder_spec.rb +44 -0
  119. data/spec/server/pipelining_spec.rb +110 -0
  120. data/spec/server/robustness_spec.rb +34 -0
  121. data/spec/server/stopping_spec.rb +55 -0
  122. data/spec/server/swiftiply.yml +6 -0
  123. data/spec/server/swiftiply_spec.rb +32 -0
  124. data/spec/server/tcp_spec.rb +57 -0
  125. data/spec/server/threaded_spec.rb +27 -0
  126. data/spec/server/unix_socket_spec.rb +26 -0
  127. data/spec/server_spec.rb +96 -0
  128. data/spec/spec_helper.rb +219 -0
  129. data/tasks/announce.rake +22 -0
  130. data/tasks/deploy.rake +13 -0
  131. data/tasks/email.erb +30 -0
  132. data/tasks/gem.rake +74 -0
  133. data/tasks/rdoc.rake +25 -0
  134. data/tasks/site.rake +15 -0
  135. data/tasks/spec.rake +49 -0
  136. data/tasks/stats.rake +28 -0
  137. metadata +246 -0
@@ -0,0 +1,13 @@
1
+ namespace :deploy do
2
+ task :site => %w(site:upload rdoc:upload)
3
+
4
+ desc 'Deploy on rubyforge'
5
+ task :gem => %w(gem:upload_rubyforge deploy:site)
6
+ end
7
+ desc 'Deploy on all servers'
8
+ task :deploy => "deploy:gem"
9
+
10
+ def upload(file, to, options={})
11
+ sh %{ssh macournoyer@code.macournoyer.com "rm -rf code.macournoyer.com/#{to}"} if options[:replace]
12
+ sh %{scp -rq #{file} macournoyer@code.macournoyer.com:code.macournoyer.com/#{to}}
13
+ end
@@ -0,0 +1,30 @@
1
+ Hey all,
2
+
3
+ Thin version <%= Thin::VERSION::STRING %> (codename <%= Thin::VERSION::CODENAME %>) is out!
4
+
5
+ == What's new?
6
+
7
+ <%= changelog %>
8
+
9
+ == Get it!
10
+
11
+ Install Thin from RubyForge:
12
+
13
+ gem install thin
14
+
15
+ Or using my mirror:
16
+
17
+ gem install thin --source http://code.macournoyer.com
18
+
19
+ == Contribute
20
+
21
+ Site: http://code.macournoyer.com/thin/
22
+ Group: http://groups.google.com/group/thin-ruby/topics
23
+ Bugs: http://thin.lighthouseapp.com/projects/7212-thin
24
+ Code: http://github.com/macournoyer/thin
25
+ IRC: #thin on freenode
26
+
27
+ Thanks to all the people who contributed to Thin, EventMachine, Rack and Mongrel.
28
+
29
+ Marc-Andre Cournoyer
30
+ http://macournoyer.com/
@@ -0,0 +1,74 @@
1
+ require 'rake/gempackagetask'
2
+ require 'yaml'
3
+
4
+ WIN_SUFFIX = ENV['WIN_SUFFIX'] || 'x86-mswin32'
5
+
6
+ task :clean => :clobber_package
7
+
8
+ Thin::GemSpec = Gem::Specification.new do |s|
9
+ s.name = Thin::NAME
10
+ s.version = Thin::VERSION::STRING
11
+ s.platform = WIN ? Gem::Platform::CURRENT : Gem::Platform::RUBY
12
+ s.summary =
13
+ s.description = "A thin and fast web server"
14
+ s.author = "Marc-Andre Cournoyer"
15
+ s.email = 'macournoyer@gmail.com'
16
+ s.homepage = 'http://code.macournoyer.com/thin/'
17
+ s.rubyforge_project = 'thin'
18
+ s.has_rdoc = true
19
+ s.executables = %w(thin)
20
+
21
+ s.required_ruby_version = '>= 1.8.5'
22
+
23
+ s.add_dependency 'rack', '>= 1.0.0'
24
+ s.add_dependency 'eventmachine', '>= 0.12.6'
25
+ unless WIN
26
+ s.add_dependency 'daemons', '>= 1.0.9'
27
+ end
28
+
29
+ s.files = %w(COPYING CHANGELOG README Rakefile) +
30
+ Dir.glob("{benchmark,bin,doc,example,lib,spec,tasks}/**/*") +
31
+ Dir.glob("ext/**/*.{h,c,rb,rl}")
32
+
33
+ if WIN
34
+ s.files += ["lib/thin_parser.#{Config::CONFIG['DLEXT']}"]
35
+ else
36
+ s.extensions = FileList["ext/**/extconf.rb"].to_a
37
+ end
38
+
39
+ s.require_path = "lib"
40
+ s.bindir = "bin"
41
+ end
42
+
43
+ Rake::GemPackageTask.new(Thin::GemSpec) do |p|
44
+ p.gem_spec = Thin::GemSpec
45
+ end
46
+
47
+ task :tag_warn do
48
+ puts "*" * 40
49
+ puts "Don't forget to tag the release:"
50
+ puts
51
+ puts " git tag -m 'Tagging #{Thin::SERVER}' -a v#{Thin::VERSION::STRING}"
52
+ puts
53
+ puts "or run rake tag"
54
+ puts "*" * 40
55
+ end
56
+ task :tag do
57
+ sh "git tag -m 'Tagging #{Thin::SERVER}' -a v#{Thin::VERSION::STRING}"
58
+ end
59
+ task :gem => :tag_warn
60
+
61
+ namespace :gem do
62
+ desc "Update the gemspec for GitHub's gem server"
63
+ task :github do
64
+ File.open("thin.gemspec", 'w') { |f| f << YAML.dump(Thin::GemSpec) }
65
+ end
66
+
67
+ desc 'Upload gems (ruby & win32) to rubyforge.org'
68
+ task :upload => :gem do
69
+ sh 'rubyforge login'
70
+ sh "rubyforge add_release thin thin #{Thin::VERSION::STRING} pkg/#{Thin::GemSpec.full_name}.gem"
71
+ sh "rubyforge add_file thin thin #{Thin::VERSION::STRING} pkg/#{Thin::GemSpec.full_name}.gem"
72
+ sh "rubyforge add_file thin thin #{Thin::VERSION::STRING} pkg/#{Thin::GemSpec.full_name}-#{WIN_SUFFIX}.gem"
73
+ end
74
+ end
@@ -0,0 +1,25 @@
1
+ require 'rake/rdoctask'
2
+
3
+ CLEAN.include %w(doc/rdoc)
4
+
5
+ Rake::RDocTask.new do |rdoc|
6
+ rdoc.rdoc_dir = 'doc/rdoc'
7
+ rdoc.options += ['--quiet', '--title', Thin::NAME,
8
+ "--opname", "index.html",
9
+ "--line-numbers",
10
+ "--main", "README",
11
+ "--inline-source"]
12
+ rdoc.template = "site/rdoc.rb"
13
+ rdoc.main = "README"
14
+ rdoc.title = Thin::NAME
15
+ rdoc.rdoc_files.add %w(README) +
16
+ FileList['lib/**/*.rb'] +
17
+ FileList['bin/*']
18
+ end
19
+
20
+ namespace :rdoc do
21
+ desc 'Upload rdoc to code.macournoyer.com'
22
+ task :upload => :rdoc do
23
+ upload "doc/rdoc", 'thin/doc', :replace => true
24
+ end
25
+ end
@@ -0,0 +1,15 @@
1
+ namespace :site do
2
+ task :build do
3
+ mkdir_p 'tmp/site/images'
4
+ cd 'tmp/site' do
5
+ sh "SITE_ROOT='/thin' ruby ../../site/thin.rb --dump"
6
+ end
7
+ cp 'site/style.css', 'tmp/site'
8
+ cp_r Dir['site/images/*'], 'tmp/site/images'
9
+ end
10
+
11
+ desc 'Upload website to code.macournoyer.com'
12
+ task :upload => 'site:build' do
13
+ upload 'tmp/site/*', 'thin'
14
+ end
15
+ end
@@ -0,0 +1,49 @@
1
+ CLEAN.include %w(coverage tmp log)
2
+
3
+ if RUBY_1_9 # RSpec not yet working w/ Ruby 1.9
4
+ task :spec do
5
+ warn 'RSpec not yet supporting Ruby 1.9, so cannot run the specs :('
6
+ end
7
+ else
8
+ require 'spec/rake/spectask'
9
+
10
+ PERF_SPECS = FileList['spec/perf/*_spec.rb']
11
+ WIN_SPECS = %w(
12
+ spec/backends/unix_server_spec.rb
13
+ spec/controllers/service_spec.rb
14
+ spec/daemonizing_spec.rb
15
+ spec/server/unix_socket_spec.rb
16
+ spec/server/swiftiply_spec.rb
17
+ )
18
+ # HACK Event machine causes some problems when running multiple
19
+ # tests in the same VM so we split the specs in 2 before I find
20
+ # a better solution...
21
+ SPECS2 = %w(spec/server/threaded_spec.rb spec/server/tcp_spec.rb)
22
+ SPECS = FileList['spec/**/*_spec.rb'] - PERF_SPECS - SPECS2
23
+
24
+ def spec_task(name, specs)
25
+ Spec::Rake::SpecTask.new(name) do |t|
26
+ t.libs << 'lib'
27
+ t.spec_opts = %w(-fs -c)
28
+ t.spec_files = specs
29
+ end
30
+ end
31
+
32
+ desc "Run all examples"
33
+ spec_task :spec, SPECS
34
+ spec_task :spec2, SPECS2
35
+ task :spec => [:compile, :spec2]
36
+
37
+ desc "Run all performance examples"
38
+ spec_task 'spec:perf', PERF_SPECS
39
+
40
+ task :check_benchmark_unit_gem do
41
+ begin
42
+ require 'benchmark_unit'
43
+ rescue LoadError
44
+ abort "To run specs, install benchmark_unit gem"
45
+ end
46
+ end
47
+
48
+ task 'spec:perf' => :check_benchmark_unit_gem
49
+ end
@@ -0,0 +1,28 @@
1
+ desc 'Show some stats about the code'
2
+ task :stats do
3
+ line_count = proc do |path|
4
+ Dir[path].collect { |f| File.open(f).readlines.reject { |l| l =~ /(^\s*(\#|\/\*))|^\s*$/ }.size }.inject(0){ |sum,n| sum += n }
5
+ end
6
+ comment_count = proc do |path|
7
+ Dir[path].collect { |f| File.open(f).readlines.select { |l| l =~ /^\s*\#/ }.size }.inject(0) { |sum,n| sum += n }
8
+ end
9
+ lib = line_count['lib/**/*.rb']
10
+ comment = comment_count['lib/**/*.rb']
11
+ ext = line_count['ext/**/*.{c,h}']
12
+ spec = line_count['spec/**/*.rb']
13
+
14
+ comment_ratio = '%1.2f' % (comment.to_f / lib.to_f)
15
+ spec_ratio = '%1.2f' % (spec.to_f / lib.to_f)
16
+
17
+ puts '/======================\\'
18
+ puts '| Part LOC |'
19
+ puts '|======================|'
20
+ puts "| lib #{lib.to_s.ljust(5)}|"
21
+ puts "| lib comments #{comment.to_s.ljust(5)}|"
22
+ puts "| ext #{ext.to_s.ljust(5)}|"
23
+ puts "| spec #{spec.to_s.ljust(5)}|"
24
+ puts '| ratios: |'
25
+ puts "| lib/comment #{comment_ratio.to_s.ljust(5)}|"
26
+ puts "| lib/spec #{spec_ratio.to_s.ljust(5)}|"
27
+ puts '\======================/'
28
+ end
metadata ADDED
@@ -0,0 +1,246 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: thin
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.3
5
+ platform: x86-mswin32
6
+ authors:
7
+ - Marc-Andre Cournoyer
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-09-05 00:00:00 -04:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: rack
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 1.0.0
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: eventmachine
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 0.12.6
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: daemons
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 1.0.9
44
+ version:
45
+ description: A thin and fast web server
46
+ email: macournoyer@gmail.com
47
+ executables:
48
+ - thin
49
+ extensions: []
50
+
51
+ extra_rdoc_files: []
52
+
53
+ files:
54
+ - COPYING
55
+ - CHANGELOG
56
+ - README
57
+ - Rakefile
58
+ - benchmark/abc
59
+ - benchmark/benchmarker.rb
60
+ - benchmark/runner
61
+ - bin/thin
62
+ - example/adapter.rb
63
+ - example/async_app.ru
64
+ - example/async_chat.ru
65
+ - example/async_tailer.ru
66
+ - example/config.ru
67
+ - example/monit_sockets
68
+ - example/monit_unixsock
69
+ - example/myapp.rb
70
+ - example/ramaze.ru
71
+ - example/thin.god
72
+ - example/thin_solaris_smf.erb
73
+ - example/thin_solaris_smf.readme.txt
74
+ - example/vlad.rake
75
+ - lib/rack
76
+ - lib/rack/adapter
77
+ - lib/rack/adapter/loader.rb
78
+ - lib/rack/adapter/rails.rb
79
+ - lib/thin
80
+ - lib/thin/backends
81
+ - lib/thin/backends/base.rb
82
+ - lib/thin/backends/swiftiply_client.rb
83
+ - lib/thin/backends/tcp_server.rb
84
+ - lib/thin/backends/unix_server.rb
85
+ - lib/thin/command.rb
86
+ - lib/thin/connection.rb
87
+ - lib/thin/controllers
88
+ - lib/thin/controllers/cluster.rb
89
+ - lib/thin/controllers/controller.rb
90
+ - lib/thin/controllers/service.rb
91
+ - lib/thin/controllers/service.sh.erb
92
+ - lib/thin/daemonizing.rb
93
+ - lib/thin/headers.rb
94
+ - lib/thin/logging.rb
95
+ - lib/thin/request.rb
96
+ - lib/thin/response.rb
97
+ - lib/thin/runner.rb
98
+ - lib/thin/server.rb
99
+ - lib/thin/stats.html.erb
100
+ - lib/thin/stats.rb
101
+ - lib/thin/statuses.rb
102
+ - lib/thin/version.rb
103
+ - lib/thin.rb
104
+ - lib/thin_parser.so
105
+ - spec/backends
106
+ - spec/backends/swiftiply_client_spec.rb
107
+ - spec/backends/tcp_server_spec.rb
108
+ - spec/backends/unix_server_spec.rb
109
+ - spec/command_spec.rb
110
+ - spec/configs
111
+ - spec/configs/cluster.yml
112
+ - spec/configs/single.yml
113
+ - spec/connection_spec.rb
114
+ - spec/controllers
115
+ - spec/controllers/cluster_spec.rb
116
+ - spec/controllers/controller_spec.rb
117
+ - spec/controllers/service_spec.rb
118
+ - spec/daemonizing_spec.rb
119
+ - spec/headers_spec.rb
120
+ - spec/logging_spec.rb
121
+ - spec/perf
122
+ - spec/perf/request_perf_spec.rb
123
+ - spec/perf/response_perf_spec.rb
124
+ - spec/perf/server_perf_spec.rb
125
+ - spec/rack
126
+ - spec/rack/loader_spec.rb
127
+ - spec/rack/rails_adapter_spec.rb
128
+ - spec/rails_app
129
+ - spec/rails_app/app
130
+ - spec/rails_app/app/controllers
131
+ - spec/rails_app/app/controllers/application.rb
132
+ - spec/rails_app/app/controllers/simple_controller.rb
133
+ - spec/rails_app/app/helpers
134
+ - spec/rails_app/app/helpers/application_helper.rb
135
+ - spec/rails_app/app/views
136
+ - spec/rails_app/app/views/simple
137
+ - spec/rails_app/app/views/simple/index.html.erb
138
+ - spec/rails_app/config
139
+ - spec/rails_app/config/boot.rb
140
+ - spec/rails_app/config/environment.rb
141
+ - spec/rails_app/config/environments
142
+ - spec/rails_app/config/environments/development.rb
143
+ - spec/rails_app/config/environments/production.rb
144
+ - spec/rails_app/config/environments/test.rb
145
+ - spec/rails_app/config/initializers
146
+ - spec/rails_app/config/initializers/inflections.rb
147
+ - spec/rails_app/config/initializers/mime_types.rb
148
+ - spec/rails_app/config/routes.rb
149
+ - spec/rails_app/log
150
+ - spec/rails_app/log/mongrel_debug
151
+ - spec/rails_app/public
152
+ - spec/rails_app/public/404.html
153
+ - spec/rails_app/public/422.html
154
+ - spec/rails_app/public/500.html
155
+ - spec/rails_app/public/dispatch.cgi
156
+ - spec/rails_app/public/dispatch.fcgi
157
+ - spec/rails_app/public/dispatch.rb
158
+ - spec/rails_app/public/favicon.ico
159
+ - spec/rails_app/public/images
160
+ - spec/rails_app/public/images/rails.png
161
+ - spec/rails_app/public/index.html
162
+ - spec/rails_app/public/javascripts
163
+ - spec/rails_app/public/javascripts/application.js
164
+ - spec/rails_app/public/javascripts/controls.js
165
+ - spec/rails_app/public/javascripts/dragdrop.js
166
+ - spec/rails_app/public/javascripts/effects.js
167
+ - spec/rails_app/public/javascripts/prototype.js
168
+ - spec/rails_app/public/robots.txt
169
+ - spec/rails_app/script
170
+ - spec/rails_app/script/about
171
+ - spec/rails_app/script/console
172
+ - spec/rails_app/script/destroy
173
+ - spec/rails_app/script/generate
174
+ - spec/rails_app/script/performance
175
+ - spec/rails_app/script/performance/benchmarker
176
+ - spec/rails_app/script/performance/profiler
177
+ - spec/rails_app/script/performance/request
178
+ - spec/rails_app/script/plugin
179
+ - spec/rails_app/script/process
180
+ - spec/rails_app/script/process/inspector
181
+ - spec/rails_app/script/process/reaper
182
+ - spec/rails_app/script/process/spawner
183
+ - spec/rails_app/script/runner
184
+ - spec/rails_app/script/server
185
+ - spec/request
186
+ - spec/request/mongrel_spec.rb
187
+ - spec/request/parser_spec.rb
188
+ - spec/request/persistent_spec.rb
189
+ - spec/request/processing_spec.rb
190
+ - spec/response_spec.rb
191
+ - spec/runner_spec.rb
192
+ - spec/server
193
+ - spec/server/builder_spec.rb
194
+ - spec/server/pipelining_spec.rb
195
+ - spec/server/robustness_spec.rb
196
+ - spec/server/stopping_spec.rb
197
+ - spec/server/swiftiply.yml
198
+ - spec/server/swiftiply_spec.rb
199
+ - spec/server/tcp_spec.rb
200
+ - spec/server/threaded_spec.rb
201
+ - spec/server/unix_socket_spec.rb
202
+ - spec/server_spec.rb
203
+ - spec/spec_helper.rb
204
+ - tasks/announce.rake
205
+ - tasks/deploy.rake
206
+ - tasks/email.erb
207
+ - tasks/gem.rake
208
+ - tasks/rdoc.rake
209
+ - tasks/site.rake
210
+ - tasks/spec.rake
211
+ - tasks/stats.rake
212
+ - ext/thin_parser/ext_help.h
213
+ - ext/thin_parser/parser.h
214
+ - ext/thin_parser/parser.c
215
+ - ext/thin_parser/thin.c
216
+ - ext/thin_parser/extconf.rb
217
+ - ext/thin_parser/common.rl
218
+ - ext/thin_parser/parser.rl
219
+ has_rdoc: true
220
+ homepage: http://code.macournoyer.com/thin/
221
+ post_install_message:
222
+ rdoc_options: []
223
+
224
+ require_paths:
225
+ - lib
226
+ required_ruby_version: !ruby/object:Gem::Requirement
227
+ requirements:
228
+ - - ">="
229
+ - !ruby/object:Gem::Version
230
+ version: 1.8.5
231
+ version:
232
+ required_rubygems_version: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: "0"
237
+ version:
238
+ requirements: []
239
+
240
+ rubyforge_project: thin
241
+ rubygems_version: 1.3.1
242
+ signing_key:
243
+ specification_version: 2
244
+ summary: A thin and fast web server
245
+ test_files: []
246
+