rack 2.1.4.4 → 2.2.17
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 +4 -4
- data/CHANGELOG.md +713 -10
- data/CONTRIBUTING.md +136 -0
- data/README.rdoc +109 -38
- data/Rakefile +14 -7
- data/{SPEC → SPEC.rdoc} +35 -6
- data/lib/rack/auth/abstract/request.rb +0 -2
- data/lib/rack/auth/basic.rb +4 -5
- data/lib/rack/auth/digest/md5.rb +4 -4
- data/lib/rack/auth/digest/nonce.rb +2 -3
- data/lib/rack/auth/digest/request.rb +3 -3
- data/lib/rack/body_proxy.rb +13 -9
- data/lib/rack/builder.rb +77 -8
- data/lib/rack/cascade.rb +23 -8
- data/lib/rack/chunked.rb +48 -23
- data/lib/rack/common_logger.rb +27 -19
- data/lib/rack/conditional_get.rb +18 -16
- data/lib/rack/content_length.rb +6 -7
- data/lib/rack/content_type.rb +3 -4
- data/lib/rack/deflater.rb +45 -35
- data/lib/rack/directory.rb +77 -60
- data/lib/rack/etag.rb +4 -3
- data/lib/rack/events.rb +15 -18
- data/lib/rack/file.rb +1 -1
- data/lib/rack/files.rb +96 -56
- data/lib/rack/handler/cgi.rb +1 -4
- data/lib/rack/handler/fastcgi.rb +1 -3
- data/lib/rack/handler/lsws.rb +1 -3
- data/lib/rack/handler/scgi.rb +1 -3
- data/lib/rack/handler/thin.rb +1 -3
- data/lib/rack/handler/webrick.rb +12 -5
- data/lib/rack/head.rb +0 -2
- data/lib/rack/lint.rb +211 -179
- data/lib/rack/lobster.rb +3 -5
- data/lib/rack/lock.rb +0 -1
- data/lib/rack/media_type.rb +17 -7
- data/lib/rack/method_override.rb +1 -1
- data/lib/rack/mock.rb +54 -7
- data/lib/rack/multipart/generator.rb +11 -6
- data/lib/rack/multipart/parser.rb +17 -17
- data/lib/rack/multipart/uploaded_file.rb +13 -7
- data/lib/rack/multipart.rb +1 -1
- data/lib/rack/query_parser.rb +62 -16
- data/lib/rack/recursive.rb +1 -1
- data/lib/rack/reloader.rb +1 -3
- data/lib/rack/request.rb +184 -78
- data/lib/rack/response.rb +62 -19
- data/lib/rack/rewindable_input.rb +0 -1
- data/lib/rack/runtime.rb +3 -3
- data/lib/rack/sendfile.rb +1 -4
- data/lib/rack/server.rb +9 -8
- data/lib/rack/session/abstract/id.rb +21 -18
- data/lib/rack/session/cookie.rb +4 -6
- data/lib/rack/session/pool.rb +7 -2
- data/lib/rack/show_exceptions.rb +6 -8
- data/lib/rack/show_status.rb +5 -7
- data/lib/rack/static.rb +15 -7
- data/lib/rack/tempfile_reaper.rb +0 -2
- data/lib/rack/urlmap.rb +2 -5
- data/lib/rack/utils.rb +69 -58
- data/lib/rack/version.rb +29 -0
- data/lib/rack.rb +7 -16
- data/rack.gemspec +31 -29
- metadata +12 -16
data/lib/rack/version.rb
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright (C) 2007-2019 Leah Neukirchen <http://leahneukirchen.org/infopage.html>
|
4
|
+
#
|
5
|
+
# Rack is freely distributable under the terms of an MIT-style license.
|
6
|
+
# See MIT-LICENSE or https://opensource.org/licenses/MIT.
|
7
|
+
|
8
|
+
# The Rack main module, serving as a namespace for all core Rack
|
9
|
+
# modules and classes.
|
10
|
+
#
|
11
|
+
# All modules meant for use in your application are <tt>autoload</tt>ed here,
|
12
|
+
# so it should be enough just to <tt>require 'rack'</tt> in your code.
|
13
|
+
|
14
|
+
module Rack
|
15
|
+
# The Rack protocol version number implemented.
|
16
|
+
VERSION = [1, 3]
|
17
|
+
|
18
|
+
# Return the Rack protocol version as a dotted string.
|
19
|
+
def self.version
|
20
|
+
VERSION.join(".")
|
21
|
+
end
|
22
|
+
|
23
|
+
RELEASE = "2.2.17"
|
24
|
+
|
25
|
+
# Return the Rack release as a dotted string.
|
26
|
+
def self.release
|
27
|
+
RELEASE
|
28
|
+
end
|
29
|
+
end
|
data/lib/rack.rb
CHANGED
@@ -11,23 +11,11 @@
|
|
11
11
|
# All modules meant for use in your application are <tt>autoload</tt>ed here,
|
12
12
|
# so it should be enough just to <tt>require 'rack'</tt> in your code.
|
13
13
|
|
14
|
-
|
15
|
-
# The Rack protocol version number implemented.
|
16
|
-
VERSION = [1, 3]
|
17
|
-
|
18
|
-
# Return the Rack protocol version as a dotted string.
|
19
|
-
def self.version
|
20
|
-
VERSION.join(".")
|
21
|
-
end
|
22
|
-
|
23
|
-
RELEASE = "2.1.4.4"
|
24
|
-
|
25
|
-
# Return the Rack release as a dotted string.
|
26
|
-
def self.release
|
27
|
-
RELEASE
|
28
|
-
end
|
14
|
+
require_relative 'rack/version'
|
29
15
|
|
16
|
+
module Rack
|
30
17
|
HTTP_HOST = 'HTTP_HOST'
|
18
|
+
HTTP_PORT = 'HTTP_PORT'
|
31
19
|
HTTP_VERSION = 'HTTP_VERSION'
|
32
20
|
HTTPS = 'HTTPS'
|
33
21
|
PATH_INFO = 'PATH_INFO'
|
@@ -37,9 +25,9 @@ module Rack
|
|
37
25
|
QUERY_STRING = 'QUERY_STRING'
|
38
26
|
SERVER_PROTOCOL = 'SERVER_PROTOCOL'
|
39
27
|
SERVER_NAME = 'SERVER_NAME'
|
40
|
-
SERVER_ADDR = 'SERVER_ADDR'
|
41
28
|
SERVER_PORT = 'SERVER_PORT'
|
42
29
|
CACHE_CONTROL = 'Cache-Control'
|
30
|
+
EXPIRES = 'Expires'
|
43
31
|
CONTENT_LENGTH = 'Content-Length'
|
44
32
|
CONTENT_TYPE = 'Content-Type'
|
45
33
|
SET_COOKIE = 'Set-Cookie'
|
@@ -98,6 +86,7 @@ module Rack
|
|
98
86
|
autoload :ContentLength, "rack/content_length"
|
99
87
|
autoload :ContentType, "rack/content_type"
|
100
88
|
autoload :ETag, "rack/etag"
|
89
|
+
autoload :Events, "rack/events"
|
101
90
|
autoload :File, "rack/file"
|
102
91
|
autoload :Files, "rack/files"
|
103
92
|
autoload :Deflater, "rack/deflater"
|
@@ -108,11 +97,13 @@ module Rack
|
|
108
97
|
autoload :Lint, "rack/lint"
|
109
98
|
autoload :Lock, "rack/lock"
|
110
99
|
autoload :Logger, "rack/logger"
|
100
|
+
autoload :MediaType, "rack/media_type"
|
111
101
|
autoload :MethodOverride, "rack/method_override"
|
112
102
|
autoload :Mime, "rack/mime"
|
113
103
|
autoload :NullLogger, "rack/null_logger"
|
114
104
|
autoload :Recursive, "rack/recursive"
|
115
105
|
autoload :Reloader, "rack/reloader"
|
106
|
+
autoload :RewindableInput, "rack/rewindable_input"
|
116
107
|
autoload :Runtime, "rack/runtime"
|
117
108
|
autoload :Sendfile, "rack/sendfile"
|
118
109
|
autoload :Server, "rack/server"
|
data/rack.gemspec
CHANGED
@@ -1,39 +1,41 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require_relative 'lib/rack/version'
|
4
|
+
|
3
5
|
Gem::Specification.new do |s|
|
4
6
|
s.name = "rack"
|
5
|
-
s.version =
|
6
|
-
s.platform
|
7
|
-
s.summary
|
8
|
-
s.license
|
9
|
-
|
10
|
-
s.description =
|
11
|
-
Rack provides a minimal, modular and adaptable interface for developing
|
12
|
-
web applications in Ruby.
|
13
|
-
the simplest way possible, it unifies and distills the API for web
|
14
|
-
servers, web frameworks, and software in between (the so-called
|
15
|
-
middleware) into a single method call.
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
s.bindir = 'bin'
|
7
|
+
s.version = Rack::RELEASE
|
8
|
+
s.platform = Gem::Platform::RUBY
|
9
|
+
s.summary = "A modular Ruby webserver interface."
|
10
|
+
s.license = "MIT"
|
11
|
+
|
12
|
+
s.description = <<~EOF
|
13
|
+
Rack provides a minimal, modular and adaptable interface for developing
|
14
|
+
web applications in Ruby. By wrapping HTTP requests and responses in
|
15
|
+
the simplest way possible, it unifies and distills the API for web
|
16
|
+
servers, web frameworks, and software in between (the so-called
|
17
|
+
middleware) into a single method call.
|
18
|
+
EOF
|
19
|
+
|
20
|
+
s.files = Dir['{bin/*,contrib/*,example/*,lib/**/*}'] +
|
21
|
+
%w(MIT-LICENSE rack.gemspec Rakefile README.rdoc SPEC.rdoc)
|
22
|
+
|
23
|
+
s.bindir = 'bin'
|
23
24
|
s.executables << 'rackup'
|
24
25
|
s.require_path = 'lib'
|
25
|
-
s.extra_rdoc_files = ['README.rdoc', 'CHANGELOG.md']
|
26
|
-
|
27
|
-
s.author
|
28
|
-
s.email
|
29
|
-
|
30
|
-
s.
|
31
|
-
|
32
|
-
|
33
|
-
|
26
|
+
s.extra_rdoc_files = ['README.rdoc', 'CHANGELOG.md', 'CONTRIBUTING.md']
|
27
|
+
|
28
|
+
s.author = 'Leah Neukirchen'
|
29
|
+
s.email = 'leah@vuxu.org'
|
30
|
+
|
31
|
+
s.homepage = 'https://github.com/rack/rack'
|
32
|
+
|
33
|
+
s.required_ruby_version = '>= 2.3.0'
|
34
|
+
|
35
|
+
s.metadata = {
|
36
|
+
"bug_tracker_uri" => "https://github.com/rack/rack/issues",
|
37
|
+
"changelog_uri" => "https://github.com/rack/rack/blob/master/CHANGELOG.md",
|
34
38
|
"documentation_uri" => "https://rubydoc.info/github/rack/rack",
|
35
|
-
"homepage_uri" => "https://rack.github.io",
|
36
|
-
"mailing_list_uri" => "https://groups.google.com/forum/#!forum/rack-devel",
|
37
39
|
"source_code_uri" => "https://github.com/rack/rack"
|
38
40
|
}
|
39
41
|
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Leah Neukirchen
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
14
13
|
name: minitest
|
@@ -68,25 +67,25 @@ dependencies:
|
|
68
67
|
version: '0'
|
69
68
|
description: |
|
70
69
|
Rack provides a minimal, modular and adaptable interface for developing
|
71
|
-
web applications in Ruby.
|
70
|
+
web applications in Ruby. By wrapping HTTP requests and responses in
|
72
71
|
the simplest way possible, it unifies and distills the API for web
|
73
72
|
servers, web frameworks, and software in between (the so-called
|
74
73
|
middleware) into a single method call.
|
75
|
-
|
76
|
-
Also see https://rack.github.io/.
|
77
74
|
email: leah@vuxu.org
|
78
75
|
executables:
|
79
76
|
- rackup
|
80
77
|
extensions: []
|
81
78
|
extra_rdoc_files:
|
82
|
-
- README.rdoc
|
83
79
|
- CHANGELOG.md
|
80
|
+
- CONTRIBUTING.md
|
81
|
+
- README.rdoc
|
84
82
|
files:
|
85
83
|
- CHANGELOG.md
|
84
|
+
- CONTRIBUTING.md
|
86
85
|
- MIT-LICENSE
|
87
86
|
- README.rdoc
|
88
87
|
- Rakefile
|
89
|
-
- SPEC
|
88
|
+
- SPEC.rdoc
|
90
89
|
- bin/rackup
|
91
90
|
- contrib/rack.png
|
92
91
|
- contrib/rack.svg
|
@@ -159,18 +158,16 @@ files:
|
|
159
158
|
- lib/rack/tempfile_reaper.rb
|
160
159
|
- lib/rack/urlmap.rb
|
161
160
|
- lib/rack/utils.rb
|
161
|
+
- lib/rack/version.rb
|
162
162
|
- rack.gemspec
|
163
|
-
homepage: https://
|
163
|
+
homepage: https://github.com/rack/rack
|
164
164
|
licenses:
|
165
165
|
- MIT
|
166
166
|
metadata:
|
167
167
|
bug_tracker_uri: https://github.com/rack/rack/issues
|
168
168
|
changelog_uri: https://github.com/rack/rack/blob/master/CHANGELOG.md
|
169
169
|
documentation_uri: https://rubydoc.info/github/rack/rack
|
170
|
-
homepage_uri: https://rack.github.io
|
171
|
-
mailing_list_uri: https://groups.google.com/forum/#!forum/rack-devel
|
172
170
|
source_code_uri: https://github.com/rack/rack
|
173
|
-
post_install_message:
|
174
171
|
rdoc_options: []
|
175
172
|
require_paths:
|
176
173
|
- lib
|
@@ -178,15 +175,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
178
175
|
requirements:
|
179
176
|
- - ">="
|
180
177
|
- !ruby/object:Gem::Version
|
181
|
-
version: 2.
|
178
|
+
version: 2.3.0
|
182
179
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
183
180
|
requirements:
|
184
181
|
- - ">="
|
185
182
|
- !ruby/object:Gem::Version
|
186
183
|
version: '0'
|
187
184
|
requirements: []
|
188
|
-
rubygems_version: 3.
|
189
|
-
signing_key:
|
185
|
+
rubygems_version: 3.7.0.dev
|
190
186
|
specification_version: 4
|
191
|
-
summary:
|
187
|
+
summary: A modular Ruby webserver interface.
|
192
188
|
test_files: []
|