unicorn 4.8.2 → 4.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.wrongdoc.yml +2 -1
- data/Documentation/unicorn.1.txt +2 -2
- data/Documentation/unicorn_rails.1.txt +2 -2
- data/GIT-VERSION-GEN +1 -1
- data/HACKING +6 -3
- data/ISSUES +40 -16
- data/Links +6 -6
- data/PHILOSOPHY +1 -1
- data/README +4 -9
- data/archive/.gitignore +3 -0
- data/archive/slrnpull.conf +4 -0
- data/lib/unicorn/http_server.rb +5 -1
- data/lib/unicorn/oob_gc.rb +10 -0
- data/lib/unicorn/ssl_configurator.rb +1 -1
- data/script/isolate_for_tests +2 -3
- data/t/.gitignore +0 -1
- data/t/GNUmakefile +1 -5
- data/unicorn.gemspec +2 -2
- metadata +52 -97
- data/t/sslgen.sh +0 -71
- data/t/t0600-https-server-basic.sh +0 -48
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: e0d09e0beb210c82cd779da26aa87b47531a64be
|
4
|
+
data.tar.gz: 84e371fff3dc40dd00716645d7227bae4f4a8541
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: c9d40ccbff58e01074b8f1892b02150db4b0f5e49e57d69bbd109a24da4d68c26b0dda85edcbb3f3b5277690aeae6362a0ddc178c757f8671b7faf12751e1891
|
7
|
+
data.tar.gz: a5a12b1bb5921dc2fb2437dbf029e92b54f4f29c8091272edaa37ee22f6ed5f384f004337aec0ecea2d3882c6793614baf2c14eeaf7d0f616b3191e426761a22
|
data/.wrongdoc.yml
CHANGED
@@ -2,9 +2,10 @@
|
|
2
2
|
cgit_url: http://bogomips.org/unicorn.git
|
3
3
|
git_url: git://bogomips.org/unicorn.git
|
4
4
|
rdoc_url: http://unicorn.bogomips.org/
|
5
|
+
ml_url: http://bogomips.org/unicorn-public/
|
5
6
|
changelog_start: v1.1.5
|
6
7
|
merge_html:
|
7
8
|
unicorn_1: Documentation/unicorn.1.html
|
8
9
|
unicorn_rails_1: Documentation/unicorn_rails.1.html
|
9
|
-
public_email:
|
10
|
+
public_email: unicorn-public@bogomips.org
|
10
11
|
private_email: unicorn@bogomips.org
|
data/Documentation/unicorn.1.txt
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
% UNICORN(1) Unicorn User Manual
|
2
|
-
% The Unicorn Community <
|
2
|
+
% The Unicorn Community <unicorn-public@bogomips.org>
|
3
3
|
% September 15, 2009
|
4
4
|
|
5
5
|
# NAME
|
@@ -173,6 +173,6 @@ variable internally when doing transparent upgrades.
|
|
173
173
|
* [Rackup HowTo][3]
|
174
174
|
|
175
175
|
[1]: http://unicorn.bogomips.org/
|
176
|
-
[2]: http://
|
176
|
+
[2]: http://rdoc.info/gems/r#/gems/rack/frames
|
177
177
|
[3]: http://wiki.github.com/rack/rack/tutorial-rackup-howto
|
178
178
|
[4]: http://unicorn.bogomips.org/SIGNALS.html
|
@@ -1,5 +1,5 @@
|
|
1
1
|
% UNICORN_RAILS(1) Unicorn User Manual
|
2
|
-
% The Unicorn Community <
|
2
|
+
% The Unicorn Community <unicorn-public@bogomips.org>
|
3
3
|
% September 17, 2009
|
4
4
|
|
5
5
|
# NAME
|
@@ -170,6 +170,6 @@ used by Unicorn.
|
|
170
170
|
* [Rackup HowTo][3]
|
171
171
|
|
172
172
|
[1]: http://unicorn.bogomips.org/
|
173
|
-
[2]: http://
|
173
|
+
[2]: http://rdoc.info/gems/r#/gems/rack/frames
|
174
174
|
[3]: http://wiki.github.com/rack/rack/tutorial-rackup-howto
|
175
175
|
[4]: http://unicorn.bogomips.org/SIGNALS.html
|
data/GIT-VERSION-GEN
CHANGED
data/HACKING
CHANGED
@@ -66,8 +66,9 @@ Please wrap documentation at 72 characters-per-line or less (long URLs
|
|
66
66
|
are exempt) so it is comfortably readable from terminals.
|
67
67
|
|
68
68
|
When referencing mailing list posts, use
|
69
|
-
"http://
|
70
|
-
remains searchable even if
|
69
|
+
"http://bogomips.org/unicorn-public/m/$MESSAGE_ID.html" if possible
|
70
|
+
since the Message-ID remains searchable even if a particular site
|
71
|
+
becomes unavailable.
|
71
72
|
|
72
73
|
=== Ruby/C Compatibility
|
73
74
|
|
@@ -103,7 +104,9 @@ preferred because they allow code review and comments in the reply to
|
|
103
104
|
the patch.
|
104
105
|
|
105
106
|
We will adhere to mostly the same conventions for patch submissions as
|
106
|
-
git itself. See the
|
107
|
+
git itself. See the
|
108
|
+
{SubmittingPatches}[https://git.kernel.org/cgit/git/git.git/tree/Documentation/SubmittingPatches]
|
109
|
+
document
|
107
110
|
distributed with git on on patch submission guidelines to follow. Just
|
108
111
|
don't email the git mailing list or maintainer with Unicorn patches :)
|
109
112
|
|
data/ISSUES
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
= Issues
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
{documentation}[http://unicorn.bogomips.org].
|
3
|
+
mailto:unicorn-public@bogomips.org is the best place to report bugs,
|
4
|
+
submit patches and/or obtain support after you have searched the
|
5
|
+
{email archives}[http://bogomips.org/unicorn-public/] and
|
6
|
+
{documentation}[http://unicorn.bogomips.org/].
|
7
7
|
|
8
|
-
* No subscription
|
9
|
-
|
8
|
+
* No subscription will ever be required to email the public inbox.
|
9
|
+
* Please Cc: all participants in a thread, as there are no subscribers
|
10
10
|
* Do not {top post}[http://catb.org/jargon/html/T/top-post.html] in replies
|
11
|
-
* Quote
|
12
|
-
* Do not send HTML mail
|
11
|
+
* Quote as little as possible of the message you're replying to
|
12
|
+
* Do not send HTML mail, it will likely be flagged as spam
|
13
13
|
|
14
14
|
If your issue is of a sensitive nature or you're just shy in public,
|
15
15
|
then feel free to email us privately at mailto:unicorn@bogomips.org
|
@@ -21,16 +21,40 @@ about it so feel free to ask again.
|
|
21
21
|
== Submitting Patches
|
22
22
|
|
23
23
|
See the HACKING document (and additionally, the
|
24
|
-
Documentation/SubmittingPatches
|
25
|
-
guidelines for patch submission.
|
24
|
+
{SubmittingPatches}[https://git.kernel.org/cgit/git/git.git/tree/Documentation/SubmittingPatches]
|
25
|
+
document distributed with git) on guidelines for patch submission.
|
26
26
|
|
27
|
-
==
|
27
|
+
== Contact Info
|
28
28
|
|
29
|
-
*
|
30
|
-
* post: mailto:mongrel-unicorn@rubyforge.org
|
29
|
+
* public: mailto:unicorn-public@bogomips.org
|
31
30
|
* private: mailto:unicorn@bogomips.org
|
32
31
|
|
33
|
-
|
32
|
+
We operate a {public-inbox}[http://public-inbox.org/].
|
33
|
+
You may subscribe using {ssoma}[http://ssoma.public-inbox.org/]:
|
34
34
|
|
35
|
-
|
36
|
-
|
35
|
+
URL=git://bogomips.org/unicorn-public
|
36
|
+
LISTNAME=unicorn
|
37
|
+
|
38
|
+
# to initialize a maildir (this may be a new or existing maildir,
|
39
|
+
# ssoma will not touch existing messages)
|
40
|
+
# If you prefer mbox, use mbox:/path/to/mbox as the last argument
|
41
|
+
# You may also use imap://$MAILSERVER/INBOX for an IMAP account
|
42
|
+
# or imaps:// for an IMAPS account, as well.
|
43
|
+
ssoma add $LISTNAME $URL maildir:/path/to/maildir
|
44
|
+
|
45
|
+
# read with your favorite MUA (only using mutt as an example)
|
46
|
+
mutt -f /path/to/maildir # (or /path/to/mbox)
|
47
|
+
|
48
|
+
# to keep your mbox or maildir up-to-date, periodically run the following:
|
49
|
+
ssoma sync $LISTNAME
|
50
|
+
|
51
|
+
# your MUA may modify and delete messages from the maildir or mbox,
|
52
|
+
# this does not affect ssoma functionality at all
|
53
|
+
|
54
|
+
# to sync all your ssoma subscriptions
|
55
|
+
ssoma sync
|
56
|
+
|
57
|
+
# You may wish to sync in your cronjob
|
58
|
+
ssoma sync --cron
|
59
|
+
|
60
|
+
HTML archives are available here: http://bogomips.org/unicorn-public/
|
data/Links
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
If you're interested in \Unicorn, you may be interested in some of the projects
|
4
4
|
listed below. If you have any links to add/change/remove, please tell us at
|
5
|
-
mailto:
|
5
|
+
mailto:unicorn-public@bogomips.org!
|
6
6
|
|
7
7
|
== Disclaimer
|
8
8
|
|
@@ -31,10 +31,10 @@ or services behind them.
|
|
31
31
|
|
32
32
|
=== \Unicorn is written to work with
|
33
33
|
|
34
|
-
* {Rack}[http://rack.
|
34
|
+
* {Rack}[http://rack.github.io/] - a minimal interface between webservers
|
35
35
|
supporting Ruby and Ruby frameworks
|
36
36
|
|
37
|
-
* {Ruby}[http://ruby-lang.org/] - the programming language of Rack and \Unicorn
|
37
|
+
* {Ruby}[http://www.ruby-lang.org/] - the programming language of Rack and \Unicorn
|
38
38
|
|
39
39
|
* {nginx}[http://nginx.org/] - the reverse proxy for use with \Unicorn
|
40
40
|
|
@@ -44,13 +44,13 @@ or services behind them.
|
|
44
44
|
|
45
45
|
* {Green Unicorn}[http://gunicorn.org/] - a Python version of \Unicorn
|
46
46
|
|
47
|
-
* {Rainbows!}[http://rainbows.
|
47
|
+
* {Rainbows!}[http://rainbows.bogomips.org/] - \Unicorn for sleepy
|
48
48
|
apps and slow clients.
|
49
49
|
|
50
50
|
=== Prior Work
|
51
51
|
|
52
|
-
* {Mongrel}[http://
|
53
|
-
based on
|
52
|
+
* {Mongrel}[http://rubygems.org/gems/mongrel] - the awesome webserver
|
53
|
+
unicorn is based on
|
54
54
|
|
55
55
|
* {david}[http://bogomips.org/david.git] - a tool to explain why you need
|
56
56
|
nginx in front of \Unicorn
|
data/PHILOSOPHY
CHANGED
@@ -138,7 +138,7 @@ where the HTTP connection spends a large amount of time idle.
|
|
138
138
|
Nevertheless, the ease of troubleshooting, debugging, and management of
|
139
139
|
unicorn may still outweigh the drawbacks for these applications.
|
140
140
|
|
141
|
-
The {Rainbows!}[http://rainbows.
|
141
|
+
The {Rainbows!}[http://rainbows.bogomips.org/] aims to fill the gap for
|
142
142
|
odd corner cases where the nginx + unicorn combination is not enough.
|
143
143
|
While Rainbows! management/administration is largely identical to
|
144
144
|
unicorn, Rainbows! is far more ambitious and has seen little real-world
|
data/README
CHANGED
@@ -10,9 +10,9 @@ both the the request and response in between \Unicorn and slow clients.
|
|
10
10
|
|
11
11
|
* Designed for Rack, Unix, fast clients, and ease-of-debugging. We
|
12
12
|
cut out everything that is better supported by the operating system,
|
13
|
-
{nginx}[http://nginx.net/] or {Rack}[http://rack.
|
13
|
+
{nginx}[http://nginx.net/] or {Rack}[http://rack.github.io/].
|
14
14
|
|
15
|
-
* Compatible with
|
15
|
+
* Compatible with Ruby 1.8 and later. Rubinius support is in-progress.
|
16
16
|
|
17
17
|
* Process management: \Unicorn will reap and restart workers that
|
18
18
|
die from broken apps. There is no need to manage multiple processes
|
@@ -74,12 +74,7 @@ See the included LICENSE file for details.
|
|
74
74
|
The library consists of a C extension so you'll need a C compiler
|
75
75
|
and Ruby development libraries/headers.
|
76
76
|
|
77
|
-
You may
|
78
|
-
and run setup.rb after unpacking it:
|
79
|
-
|
80
|
-
http://rubyforge.org/frs/?group_id=1306
|
81
|
-
|
82
|
-
You may also install it via RubyGems on RubyGems.org:
|
77
|
+
You may install it via RubyGems on RubyGems.org:
|
83
78
|
|
84
79
|
gem install unicorn
|
85
80
|
|
@@ -143,7 +138,7 @@ regarding this.
|
|
143
138
|
|
144
139
|
All feedback (bug reports, user/development dicussion, patches, pull
|
145
140
|
requests) go to the mailing list/newsgroup. See the ISSUES document for
|
146
|
-
information on the {mailing list}[mailto:
|
141
|
+
information on the {mailing list}[mailto:unicorn-public@bogomips.org].
|
147
142
|
|
148
143
|
For the latest on \Unicorn releases, you may also finger us at
|
149
144
|
unicorn@bogomips.org or check our NEWS page (and subscribe to our Atom
|
data/archive/.gitignore
ADDED
data/lib/unicorn/http_server.rb
CHANGED
@@ -272,7 +272,11 @@ class Unicorn::HttpServer
|
|
272
272
|
proc_name 'master'
|
273
273
|
logger.info "master process ready" # test_exec.rb relies on this message
|
274
274
|
if @ready_pipe
|
275
|
-
|
275
|
+
begin
|
276
|
+
@ready_pipe.syswrite($$.to_s)
|
277
|
+
rescue => e
|
278
|
+
logger.warn("grandparent died too soon?: #{e.message} (#{e.class})")
|
279
|
+
end
|
276
280
|
@ready_pipe = @ready_pipe.close rescue nil
|
277
281
|
end
|
278
282
|
begin
|
data/lib/unicorn/oob_gc.rb
CHANGED
@@ -1,5 +1,15 @@
|
|
1
1
|
# -*- encoding: binary -*-
|
2
2
|
|
3
|
+
# Strongly consider https://github.com/tmm1/gctools if using Ruby 2.1+
|
4
|
+
# It is built on new APIs in Ruby 2.1, so it is more intelligent than
|
5
|
+
# this historical implementation.
|
6
|
+
#
|
7
|
+
# Users on Ruby 2.0 (not 2.1+) may also want to check out
|
8
|
+
# lib/middleware/unicorn_oobgc.rb from the Discourse project
|
9
|
+
# (https://github.com/discourse/discourse)
|
10
|
+
#
|
11
|
+
# The following information is only for historical versions of Ruby.
|
12
|
+
#
|
3
13
|
# Runs GC after requests, after closing the client socket and
|
4
14
|
# before attempting to accept more connections.
|
5
15
|
#
|
@@ -62,7 +62,7 @@ module Unicorn::SSLConfigurator
|
|
62
62
|
|
63
63
|
# Allows specifying an engine for OpenSSL to use. We have not been
|
64
64
|
# able to successfully test this feature due to a lack of hardware,
|
65
|
-
# Reports of success or patches to
|
65
|
+
# Reports of success or patches to unicorn-public@bogomips.org is
|
66
66
|
# greatly appreciated.
|
67
67
|
def ssl_engine(engine)
|
68
68
|
ssl_warn_global(:ssl_engine)
|
data/script/isolate_for_tests
CHANGED
data/t/.gitignore
CHANGED
data/t/GNUmakefile
CHANGED
@@ -45,11 +45,7 @@ random_blob:
|
|
45
45
|
dd if=/dev/urandom bs=1M count=30 of=$@.$(pid)
|
46
46
|
mv $@.$(pid) $@
|
47
47
|
|
48
|
-
|
49
|
-
./sslgen.sh
|
50
|
-
> $@
|
51
|
-
|
52
|
-
$(T): random_blob ssl-stamp
|
48
|
+
$(T): random_blob
|
53
49
|
|
54
50
|
dependencies := socat curl
|
55
51
|
deps := $(addprefix .dep+,$(dependencies))
|
data/unicorn.gemspec
CHANGED
@@ -19,7 +19,7 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.summary = summary
|
20
20
|
s.date = Time.now.utc.strftime('%Y-%m-%d')
|
21
21
|
s.description = readme_description
|
22
|
-
s.email = %q{
|
22
|
+
s.email = %q{unicorn-public@bogomips.org}
|
23
23
|
s.executables = %w(unicorn unicorn_rails)
|
24
24
|
s.extensions = %w(ext/unicorn_http/extconf.rb)
|
25
25
|
s.extra_rdoc_files = extra_rdoc_files(manifest)
|
@@ -38,7 +38,7 @@ Gem::Specification.new do |s|
|
|
38
38
|
s.add_dependency(%q<raindrops>, '~> 0.7')
|
39
39
|
|
40
40
|
s.add_development_dependency('isolate', '~> 3.2')
|
41
|
-
s.add_development_dependency('wrongdoc', '~> 1.
|
41
|
+
s.add_development_dependency('wrongdoc', '~> 1.8')
|
42
42
|
|
43
43
|
s.licenses = ["GPLv2+", "Ruby 1.8"]
|
44
44
|
end
|
metadata
CHANGED
@@ -1,138 +1,97 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
name:
|
3
|
-
dW5pY29ybg==
|
2
|
+
name: unicorn
|
4
3
|
version: !ruby/object:Gem::Version
|
5
|
-
version: 4.8.
|
6
|
-
prerelease:
|
4
|
+
version: 4.8.3
|
7
5
|
platform: ruby
|
8
6
|
authors:
|
9
7
|
- Unicorn hackers
|
10
8
|
autorequire:
|
11
9
|
bindir: bin
|
12
10
|
cert_chain: []
|
13
|
-
date: 2014-
|
11
|
+
date: 2014-05-07 00:00:00.000000000 Z
|
14
12
|
dependencies:
|
15
13
|
- !ruby/object:Gem::Dependency
|
16
|
-
name:
|
17
|
-
cmFjaw==
|
14
|
+
name: rack
|
18
15
|
requirement: !ruby/object:Gem::Requirement
|
19
|
-
none: false
|
20
16
|
requirements:
|
21
|
-
- -
|
17
|
+
- - ">="
|
22
18
|
- !ruby/object:Gem::Version
|
23
19
|
version: '0'
|
24
20
|
type: :runtime
|
25
21
|
prerelease: false
|
26
22
|
version_requirements: !ruby/object:Gem::Requirement
|
27
|
-
none: false
|
28
23
|
requirements:
|
29
|
-
- -
|
24
|
+
- - ">="
|
30
25
|
- !ruby/object:Gem::Version
|
31
26
|
version: '0'
|
32
27
|
- !ruby/object:Gem::Dependency
|
33
|
-
name:
|
34
|
-
a2dpbw==
|
28
|
+
name: kgio
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
36
|
-
none: false
|
37
30
|
requirements:
|
38
|
-
- -
|
39
|
-
fj4=
|
31
|
+
- - "~>"
|
40
32
|
- !ruby/object:Gem::Version
|
41
|
-
version:
|
42
|
-
Mi42
|
33
|
+
version: '2.6'
|
43
34
|
type: :runtime
|
44
35
|
prerelease: false
|
45
36
|
version_requirements: !ruby/object:Gem::Requirement
|
46
|
-
none: false
|
47
37
|
requirements:
|
48
|
-
- -
|
49
|
-
fj4=
|
38
|
+
- - "~>"
|
50
39
|
- !ruby/object:Gem::Version
|
51
|
-
version:
|
52
|
-
Mi42
|
40
|
+
version: '2.6'
|
53
41
|
- !ruby/object:Gem::Dependency
|
54
|
-
name:
|
55
|
-
cmFpbmRyb3Bz
|
42
|
+
name: raindrops
|
56
43
|
requirement: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
44
|
requirements:
|
59
|
-
- -
|
60
|
-
fj4=
|
45
|
+
- - "~>"
|
61
46
|
- !ruby/object:Gem::Version
|
62
|
-
version:
|
63
|
-
MC43
|
47
|
+
version: '0.7'
|
64
48
|
type: :runtime
|
65
49
|
prerelease: false
|
66
50
|
version_requirements: !ruby/object:Gem::Requirement
|
67
|
-
none: false
|
68
51
|
requirements:
|
69
|
-
- -
|
70
|
-
fj4=
|
52
|
+
- - "~>"
|
71
53
|
- !ruby/object:Gem::Version
|
72
|
-
version:
|
73
|
-
MC43
|
54
|
+
version: '0.7'
|
74
55
|
- !ruby/object:Gem::Dependency
|
75
|
-
name:
|
76
|
-
aXNvbGF0ZQ==
|
56
|
+
name: isolate
|
77
57
|
requirement: !ruby/object:Gem::Requirement
|
78
|
-
none: false
|
79
58
|
requirements:
|
80
|
-
- -
|
81
|
-
fj4=
|
59
|
+
- - "~>"
|
82
60
|
- !ruby/object:Gem::Version
|
83
|
-
version:
|
84
|
-
My4y
|
61
|
+
version: '3.2'
|
85
62
|
type: :development
|
86
63
|
prerelease: false
|
87
64
|
version_requirements: !ruby/object:Gem::Requirement
|
88
|
-
none: false
|
89
65
|
requirements:
|
90
|
-
- -
|
91
|
-
fj4=
|
66
|
+
- - "~>"
|
92
67
|
- !ruby/object:Gem::Version
|
93
|
-
version:
|
94
|
-
My4y
|
68
|
+
version: '3.2'
|
95
69
|
- !ruby/object:Gem::Dependency
|
96
|
-
name:
|
97
|
-
d3Jvbmdkb2M=
|
70
|
+
name: wrongdoc
|
98
71
|
requirement: !ruby/object:Gem::Requirement
|
99
|
-
none: false
|
100
72
|
requirements:
|
101
|
-
- -
|
102
|
-
fj4=
|
73
|
+
- - "~>"
|
103
74
|
- !ruby/object:Gem::Version
|
104
|
-
version:
|
105
|
-
MS42LjE=
|
75
|
+
version: '1.8'
|
106
76
|
type: :development
|
107
77
|
prerelease: false
|
108
78
|
version_requirements: !ruby/object:Gem::Requirement
|
109
|
-
none: false
|
110
79
|
requirements:
|
111
|
-
- -
|
112
|
-
fj4=
|
80
|
+
- - "~>"
|
113
81
|
- !ruby/object:Gem::Version
|
114
|
-
version:
|
115
|
-
|
116
|
-
|
117
|
-
serve
|
118
|
-
|
82
|
+
version: '1.8'
|
83
|
+
description: |-
|
84
|
+
\Unicorn is an HTTP server for Rack applications designed to only serve
|
119
85
|
fast clients on low-latency, high-bandwidth connections and take
|
120
|
-
|
121
86
|
advantage of features in Unix/Unix-like kernels. Slow clients should
|
122
|
-
|
123
87
|
only be served by placing a reverse proxy capable of fully buffering
|
124
|
-
|
125
|
-
|
126
|
-
email: !binary |-
|
127
|
-
bW9uZ3JlbC11bmljb3JuQHJ1Ynlmb3JnZS5vcmc=
|
88
|
+
both the the request and response in between \Unicorn and slow clients.
|
89
|
+
email: unicorn-public@bogomips.org
|
128
90
|
executables:
|
129
|
-
-
|
130
|
-
|
131
|
-
- !binary |-
|
132
|
-
dW5pY29ybl9yYWlscw==
|
91
|
+
- unicorn
|
92
|
+
- unicorn_rails
|
133
93
|
extensions:
|
134
|
-
-
|
135
|
-
ZXh0L3VuaWNvcm5faHR0cC9leHRjb25mLnJi
|
94
|
+
- ext/unicorn_http/extconf.rb
|
136
95
|
extra_rdoc_files:
|
137
96
|
- FAQ
|
138
97
|
- README
|
@@ -162,12 +121,12 @@ extra_rdoc_files:
|
|
162
121
|
- Links
|
163
122
|
- Application_Timeouts
|
164
123
|
files:
|
165
|
-
- .CHANGELOG.old
|
166
|
-
- .document
|
167
|
-
- .gitignore
|
168
|
-
- .mailmap
|
169
|
-
- .manifest
|
170
|
-
- .wrongdoc.yml
|
124
|
+
- ".CHANGELOG.old"
|
125
|
+
- ".document"
|
126
|
+
- ".gitignore"
|
127
|
+
- ".mailmap"
|
128
|
+
- ".manifest"
|
129
|
+
- ".wrongdoc.yml"
|
171
130
|
- Application_Timeouts
|
172
131
|
- CONTRIBUTORS
|
173
132
|
- COPYING
|
@@ -195,6 +154,8 @@ files:
|
|
195
154
|
- Sandbox
|
196
155
|
- TODO
|
197
156
|
- TUNING
|
157
|
+
- archive/.gitignore
|
158
|
+
- archive/slrnpull.conf
|
198
159
|
- bin/unicorn
|
199
160
|
- bin/unicorn_rails
|
200
161
|
- examples/big_app_gc.rb
|
@@ -264,7 +225,6 @@ files:
|
|
264
225
|
- t/pid.ru
|
265
226
|
- t/preread_input.ru
|
266
227
|
- t/rack-input-tests.ru
|
267
|
-
- t/sslgen.sh
|
268
228
|
- t/t0000-http-basic.sh
|
269
229
|
- t/t0001-reload-bad-config.sh
|
270
230
|
- t/t0002-config-conflict.sh
|
@@ -299,7 +259,6 @@ files:
|
|
299
259
|
- t/t0116.ru
|
300
260
|
- t/t0200-rack-hijack.sh
|
301
261
|
- t/t0300-no-default-middleware.sh
|
302
|
-
- t/t0600-https-server-basic.sh
|
303
262
|
- t/t9000-preread-input.sh
|
304
263
|
- t/t9001-oob_gc.sh
|
305
264
|
- t/t9002-oob_gc-path.sh
|
@@ -330,36 +289,32 @@ files:
|
|
330
289
|
- unicorn.gemspec
|
331
290
|
homepage: http://unicorn.bogomips.org/
|
332
291
|
licenses:
|
333
|
-
-
|
334
|
-
|
335
|
-
|
336
|
-
UnVieSAxLjg=
|
292
|
+
- GPLv2+
|
293
|
+
- Ruby 1.8
|
294
|
+
metadata: {}
|
337
295
|
post_install_message:
|
338
296
|
rdoc_options:
|
339
|
-
- -t
|
340
|
-
-
|
341
|
-
- -W
|
297
|
+
- "-t"
|
298
|
+
- 'Unicorn: Rack HTTP server for fast clients and Unix'
|
299
|
+
- "-W"
|
342
300
|
- http://bogomips.org/unicorn.git/tree/%s
|
343
301
|
require_paths:
|
344
302
|
- lib
|
345
303
|
required_ruby_version: !ruby/object:Gem::Requirement
|
346
|
-
none: false
|
347
304
|
requirements:
|
348
|
-
- -
|
305
|
+
- - ">="
|
349
306
|
- !ruby/object:Gem::Version
|
350
307
|
version: '0'
|
351
308
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
352
|
-
none: false
|
353
309
|
requirements:
|
354
|
-
- -
|
310
|
+
- - ">="
|
355
311
|
- !ruby/object:Gem::Version
|
356
312
|
version: '0'
|
357
313
|
requirements: []
|
358
|
-
rubyforge_project:
|
359
|
-
|
360
|
-
rubygems_version: 1.8.23
|
314
|
+
rubyforge_project: mongrel
|
315
|
+
rubygems_version: 2.2.2
|
361
316
|
signing_key:
|
362
|
-
specification_version:
|
317
|
+
specification_version: 4
|
363
318
|
summary: Rack HTTP server for fast clients and Unix
|
364
319
|
test_files:
|
365
320
|
- test/unit/test_configurator.rb
|
data/t/sslgen.sh
DELETED
@@ -1,71 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
set -e
|
3
|
-
|
4
|
-
lock=$0.lock
|
5
|
-
while ! mkdir $lock 2>/dev/null
|
6
|
-
do
|
7
|
-
echo >&2 "PID=$$ waiting for $lock"
|
8
|
-
sleep 1
|
9
|
-
done
|
10
|
-
pid=$$
|
11
|
-
trap 'if test $$ -eq $pid; then rmdir $lock; fi' EXIT
|
12
|
-
|
13
|
-
certinfo() {
|
14
|
-
echo US
|
15
|
-
echo Hell
|
16
|
-
echo A Very Special Place
|
17
|
-
echo Monkeys
|
18
|
-
echo Poo-Flingers
|
19
|
-
echo 127.0.0.1
|
20
|
-
echo kgio@bogomips.org
|
21
|
-
}
|
22
|
-
|
23
|
-
certinfo2() {
|
24
|
-
certinfo
|
25
|
-
echo
|
26
|
-
echo
|
27
|
-
}
|
28
|
-
|
29
|
-
ca_certinfo () {
|
30
|
-
echo US
|
31
|
-
echo Hell
|
32
|
-
echo An Even More Special Place
|
33
|
-
echo Deranged Monkeys
|
34
|
-
echo Poo-Hurlers
|
35
|
-
echo 127.6.6.6
|
36
|
-
echo unicorn@bogomips.org
|
37
|
-
}
|
38
|
-
|
39
|
-
openssl genrsa -out ca.key 1024
|
40
|
-
ca_certinfo | openssl req -new -x509 -days 666 -key ca.key -out ca.crt
|
41
|
-
|
42
|
-
openssl genrsa -out bad-ca.key 1024
|
43
|
-
ca_certinfo | openssl req -new -x509 -days 666 -key bad-ca.key -out bad-ca.crt
|
44
|
-
|
45
|
-
openssl genrsa -out server.key 1024
|
46
|
-
certinfo2 | openssl req -new -key server.key -out server.csr
|
47
|
-
|
48
|
-
openssl x509 -req -days 666 \
|
49
|
-
-in server.csr -CA ca.crt -CAkey ca.key -set_serial 1 -out server.crt
|
50
|
-
n=2
|
51
|
-
mk_client_cert () {
|
52
|
-
CLIENT=$1
|
53
|
-
openssl genrsa -out $CLIENT.key 1024
|
54
|
-
certinfo2 | openssl req -new -key $CLIENT.key -out $CLIENT.csr
|
55
|
-
|
56
|
-
openssl x509 -req -days 666 \
|
57
|
-
-in $CLIENT.csr -CA $CA.crt -CAkey $CA.key -set_serial $n \
|
58
|
-
-out $CLIENT.crt
|
59
|
-
rm -f $CLIENT.csr
|
60
|
-
n=$(($n + 1))
|
61
|
-
}
|
62
|
-
|
63
|
-
CA=ca
|
64
|
-
mk_client_cert client1
|
65
|
-
mk_client_cert client2
|
66
|
-
|
67
|
-
CA=bad-ca mk_client_cert bad-client
|
68
|
-
|
69
|
-
rm -f server.csr
|
70
|
-
|
71
|
-
echo OK
|
@@ -1,48 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
. ./test-lib.sh
|
3
|
-
t_plan 7 "simple HTTPS connection tests"
|
4
|
-
|
5
|
-
t_begin "setup and start" && {
|
6
|
-
rtmpfiles curl_err
|
7
|
-
unicorn_setup
|
8
|
-
cat > $unicorn_config <<EOF
|
9
|
-
ssl do
|
10
|
-
listen "$listen"
|
11
|
-
ssl_certificate "server.crt"
|
12
|
-
ssl_certificate_key "server.key"
|
13
|
-
end
|
14
|
-
pid "$pid"
|
15
|
-
stderr_path "$r_err"
|
16
|
-
stdout_path "$r_out"
|
17
|
-
EOF
|
18
|
-
unicorn -D -c $unicorn_config env.ru
|
19
|
-
unicorn_wait_start
|
20
|
-
}
|
21
|
-
|
22
|
-
t_begin "single request" && {
|
23
|
-
curl -sSfv --cacert ca.crt https://$listen/
|
24
|
-
}
|
25
|
-
|
26
|
-
t_begin "check stderr has no errors" && {
|
27
|
-
check_stderr
|
28
|
-
}
|
29
|
-
|
30
|
-
t_begin "multiple requests" && {
|
31
|
-
curl -sSfv --no-keepalive --cacert ca.crt \
|
32
|
-
https://$listen/ https://$listen/ 2>> $curl_err >> $tmp
|
33
|
-
dbgcat curl_err
|
34
|
-
}
|
35
|
-
|
36
|
-
t_begin "check stderr has no errors" && {
|
37
|
-
check_stderr
|
38
|
-
}
|
39
|
-
|
40
|
-
t_begin "killing succeeds" && {
|
41
|
-
kill $unicorn_pid
|
42
|
-
}
|
43
|
-
|
44
|
-
t_begin "check stderr has no errors" && {
|
45
|
-
check_stderr
|
46
|
-
}
|
47
|
-
|
48
|
-
t_done
|