rack 2.0.9.3 → 3.0.0

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

Potentially problematic release.


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

Files changed (201) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +808 -0
  3. data/CONTRIBUTING.md +142 -0
  4. data/{COPYING → MIT-LICENSE} +4 -2
  5. data/README.md +293 -0
  6. data/SPEC.rdoc +340 -0
  7. data/lib/rack/auth/abstract/handler.rb +6 -2
  8. data/lib/rack/auth/abstract/request.rb +4 -2
  9. data/lib/rack/auth/basic.rb +7 -4
  10. data/lib/rack/auth/digest/md5.rb +1 -129
  11. data/lib/rack/auth/digest/nonce.rb +1 -51
  12. data/lib/rack/auth/digest/params.rb +1 -52
  13. data/lib/rack/auth/digest/request.rb +1 -41
  14. data/lib/rack/auth/digest.rb +256 -0
  15. data/lib/rack/body_proxy.rb +18 -15
  16. data/lib/rack/builder.rb +151 -40
  17. data/lib/rack/cascade.rb +30 -12
  18. data/lib/rack/chunked.rb +74 -23
  19. data/lib/rack/common_logger.rb +49 -36
  20. data/lib/rack/conditional_get.rb +33 -26
  21. data/lib/rack/config.rb +2 -0
  22. data/lib/rack/constants.rb +63 -0
  23. data/lib/rack/content_length.rb +13 -16
  24. data/lib/rack/content_type.rb +12 -8
  25. data/lib/rack/deflater.rb +84 -45
  26. data/lib/rack/directory.rb +90 -64
  27. data/lib/rack/etag.rb +17 -23
  28. data/lib/rack/events.rb +23 -20
  29. data/lib/rack/file.rb +5 -172
  30. data/lib/rack/files.rb +216 -0
  31. data/lib/rack/head.rb +10 -9
  32. data/lib/rack/headers.rb +154 -0
  33. data/lib/rack/lint.rb +786 -645
  34. data/lib/rack/lock.rb +4 -6
  35. data/lib/rack/logger.rb +4 -0
  36. data/lib/rack/media_type.rb +10 -5
  37. data/lib/rack/method_override.rb +8 -2
  38. data/lib/rack/mime.rb +17 -1
  39. data/lib/rack/mock.rb +2 -195
  40. data/lib/rack/mock_request.rb +166 -0
  41. data/lib/rack/mock_response.rb +126 -0
  42. data/lib/rack/multipart/generator.rb +21 -15
  43. data/lib/rack/multipart/parser.rb +161 -118
  44. data/lib/rack/multipart/uploaded_file.rb +19 -7
  45. data/lib/rack/multipart.rb +23 -41
  46. data/lib/rack/null_logger.rb +11 -0
  47. data/lib/rack/query_parser.rb +126 -65
  48. data/lib/rack/recursive.rb +9 -5
  49. data/lib/rack/reloader.rb +6 -4
  50. data/lib/rack/request.rb +331 -74
  51. data/lib/rack/response.rb +223 -70
  52. data/lib/rack/rewindable_input.rb +28 -8
  53. data/lib/rack/runtime.rb +11 -8
  54. data/lib/rack/sendfile.rb +42 -33
  55. data/lib/rack/show_exceptions.rb +35 -18
  56. data/lib/rack/show_status.rb +25 -15
  57. data/lib/rack/static.rb +30 -18
  58. data/lib/rack/tempfile_reaper.rb +16 -5
  59. data/lib/rack/urlmap.rb +14 -6
  60. data/lib/rack/utils.rb +268 -260
  61. data/lib/rack/version.rb +34 -0
  62. data/lib/rack.rb +15 -92
  63. metadata +44 -207
  64. data/HISTORY.md +0 -520
  65. data/README.rdoc +0 -316
  66. data/Rakefile +0 -116
  67. data/SPEC +0 -263
  68. data/bin/rackup +0 -4
  69. data/contrib/rack.png +0 -0
  70. data/contrib/rack.svg +0 -150
  71. data/contrib/rack_logo.svg +0 -164
  72. data/contrib/rdoc.css +0 -412
  73. data/example/lobster.ru +0 -4
  74. data/example/protectedlobster.rb +0 -14
  75. data/example/protectedlobster.ru +0 -8
  76. data/lib/rack/handler/cgi.rb +0 -60
  77. data/lib/rack/handler/fastcgi.rb +0 -100
  78. data/lib/rack/handler/lsws.rb +0 -61
  79. data/lib/rack/handler/scgi.rb +0 -70
  80. data/lib/rack/handler/thin.rb +0 -36
  81. data/lib/rack/handler/webrick.rb +0 -120
  82. data/lib/rack/handler.rb +0 -99
  83. data/lib/rack/lobster.rb +0 -70
  84. data/lib/rack/server.rb +0 -395
  85. data/lib/rack/session/abstract/id.rb +0 -510
  86. data/lib/rack/session/cookie.rb +0 -204
  87. data/lib/rack/session/memcache.rb +0 -99
  88. data/lib/rack/session/pool.rb +0 -83
  89. data/rack.gemspec +0 -34
  90. data/test/builder/an_underscore_app.rb +0 -5
  91. data/test/builder/anything.rb +0 -5
  92. data/test/builder/comment.ru +0 -4
  93. data/test/builder/end.ru +0 -5
  94. data/test/builder/line.ru +0 -1
  95. data/test/builder/options.ru +0 -2
  96. data/test/cgi/assets/folder/test.js +0 -1
  97. data/test/cgi/assets/fonts/font.eot +0 -1
  98. data/test/cgi/assets/images/image.png +0 -1
  99. data/test/cgi/assets/index.html +0 -1
  100. data/test/cgi/assets/javascripts/app.js +0 -1
  101. data/test/cgi/assets/stylesheets/app.css +0 -1
  102. data/test/cgi/lighttpd.conf +0 -26
  103. data/test/cgi/rackup_stub.rb +0 -6
  104. data/test/cgi/sample_rackup.ru +0 -5
  105. data/test/cgi/test +0 -9
  106. data/test/cgi/test+directory/test+file +0 -1
  107. data/test/cgi/test.fcgi +0 -9
  108. data/test/cgi/test.gz +0 -0
  109. data/test/cgi/test.ru +0 -5
  110. data/test/gemloader.rb +0 -10
  111. data/test/helper.rb +0 -34
  112. data/test/multipart/bad_robots +0 -259
  113. data/test/multipart/binary +0 -0
  114. data/test/multipart/content_type_and_no_filename +0 -6
  115. data/test/multipart/empty +0 -10
  116. data/test/multipart/fail_16384_nofile +0 -814
  117. data/test/multipart/file1.txt +0 -1
  118. data/test/multipart/filename_and_modification_param +0 -7
  119. data/test/multipart/filename_and_no_name +0 -6
  120. data/test/multipart/filename_with_encoded_words +0 -7
  121. data/test/multipart/filename_with_escaped_quotes +0 -6
  122. data/test/multipart/filename_with_escaped_quotes_and_modification_param +0 -7
  123. data/test/multipart/filename_with_null_byte +0 -7
  124. data/test/multipart/filename_with_percent_escaped_quotes +0 -6
  125. data/test/multipart/filename_with_single_quote +0 -7
  126. data/test/multipart/filename_with_unescaped_percentages +0 -6
  127. data/test/multipart/filename_with_unescaped_percentages2 +0 -6
  128. data/test/multipart/filename_with_unescaped_percentages3 +0 -6
  129. data/test/multipart/filename_with_unescaped_quotes +0 -6
  130. data/test/multipart/ie +0 -6
  131. data/test/multipart/invalid_character +0 -6
  132. data/test/multipart/mixed_files +0 -21
  133. data/test/multipart/nested +0 -10
  134. data/test/multipart/none +0 -9
  135. data/test/multipart/quoted +0 -15
  136. data/test/multipart/rack-logo.png +0 -0
  137. data/test/multipart/semicolon +0 -6
  138. data/test/multipart/text +0 -15
  139. data/test/multipart/three_files_three_fields +0 -31
  140. data/test/multipart/unity3d_wwwform +0 -11
  141. data/test/multipart/webkit +0 -32
  142. data/test/rackup/config.ru +0 -31
  143. data/test/registering_handler/rack/handler/registering_myself.rb +0 -8
  144. data/test/spec_auth_basic.rb +0 -89
  145. data/test/spec_auth_digest.rb +0 -260
  146. data/test/spec_body_proxy.rb +0 -85
  147. data/test/spec_builder.rb +0 -233
  148. data/test/spec_cascade.rb +0 -63
  149. data/test/spec_cgi.rb +0 -84
  150. data/test/spec_chunked.rb +0 -103
  151. data/test/spec_common_logger.rb +0 -107
  152. data/test/spec_conditional_get.rb +0 -103
  153. data/test/spec_config.rb +0 -23
  154. data/test/spec_content_length.rb +0 -86
  155. data/test/spec_content_type.rb +0 -46
  156. data/test/spec_deflater.rb +0 -375
  157. data/test/spec_directory.rb +0 -148
  158. data/test/spec_etag.rb +0 -108
  159. data/test/spec_events.rb +0 -133
  160. data/test/spec_fastcgi.rb +0 -85
  161. data/test/spec_file.rb +0 -264
  162. data/test/spec_handler.rb +0 -57
  163. data/test/spec_head.rb +0 -46
  164. data/test/spec_lint.rb +0 -520
  165. data/test/spec_lobster.rb +0 -59
  166. data/test/spec_lock.rb +0 -204
  167. data/test/spec_logger.rb +0 -24
  168. data/test/spec_media_type.rb +0 -42
  169. data/test/spec_method_override.rb +0 -110
  170. data/test/spec_mime.rb +0 -51
  171. data/test/spec_mock.rb +0 -359
  172. data/test/spec_multipart.rb +0 -721
  173. data/test/spec_null_logger.rb +0 -21
  174. data/test/spec_recursive.rb +0 -75
  175. data/test/spec_request.rb +0 -1423
  176. data/test/spec_response.rb +0 -528
  177. data/test/spec_rewindable_input.rb +0 -128
  178. data/test/spec_runtime.rb +0 -50
  179. data/test/spec_sendfile.rb +0 -125
  180. data/test/spec_server.rb +0 -193
  181. data/test/spec_session_abstract_id.rb +0 -31
  182. data/test/spec_session_abstract_session_hash.rb +0 -45
  183. data/test/spec_session_cookie.rb +0 -442
  184. data/test/spec_session_memcache.rb +0 -357
  185. data/test/spec_session_persisted_secure_secure_session_hash.rb +0 -73
  186. data/test/spec_session_pool.rb +0 -247
  187. data/test/spec_show_exceptions.rb +0 -93
  188. data/test/spec_show_status.rb +0 -104
  189. data/test/spec_static.rb +0 -184
  190. data/test/spec_tempfile_reaper.rb +0 -64
  191. data/test/spec_thin.rb +0 -96
  192. data/test/spec_urlmap.rb +0 -237
  193. data/test/spec_utils.rb +0 -742
  194. data/test/spec_version.rb +0 -11
  195. data/test/spec_webrick.rb +0 -206
  196. data/test/static/another/index.html +0 -1
  197. data/test/static/foo.html +0 -1
  198. data/test/static/index.html +0 -1
  199. data/test/testrequest.rb +0 -78
  200. data/test/unregistered_handler/rack/handler/unregistered.rb +0 -7
  201. data/test/unregistered_handler/rack/handler/unregistered_long_one.rb +0 -7
@@ -0,0 +1,34 @@
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].freeze
17
+ deprecate_constant :VERSION
18
+
19
+ VERSION_STRING = "1.3".freeze
20
+ deprecate_constant :VERSION_STRING
21
+
22
+ # The Rack protocol version number implemented.
23
+ def self.version
24
+ warn "Rack.version is deprecated and will be removed in Rack 3.1!", uplevel: 1
25
+ VERSION
26
+ end
27
+
28
+ RELEASE = "3.0.0"
29
+
30
+ # Return the Rack release as a dotted string.
31
+ def self.release
32
+ RELEASE
33
+ end
34
+ end
data/lib/rack.rb CHANGED
@@ -1,7 +1,9 @@
1
- # Copyright (C) 2007, 2008, 2009, 2010 Christian Neukirchen <purl.org/net/chneukirchen>
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (C) 2007-2019 Leah Neukirchen <http://leahneukirchen.org/infopage.html>
2
4
  #
3
5
  # Rack is freely distributable under the terms of an MIT-style license.
4
- # See COPYING or http://www.opensource.org/licenses/mit-license.php.
6
+ # See MIT-LICENSE or https://opensource.org/licenses/MIT.
5
7
 
6
8
  # The Rack main module, serving as a namespace for all core Rack
7
9
  # modules and classes.
@@ -9,83 +11,10 @@
9
11
  # All modules meant for use in your application are <tt>autoload</tt>ed here,
10
12
  # so it should be enough just to <tt>require 'rack'</tt> in your code.
11
13
 
12
- module Rack
13
- # The Rack protocol version number implemented.
14
- VERSION = [1,3]
15
-
16
- # Return the Rack protocol version as a dotted string.
17
- def self.version
18
- VERSION.join(".")
19
- end
20
-
21
- RELEASE = "2.0.9.3"
22
-
23
- # Return the Rack release as a dotted string.
24
- def self.release
25
- RELEASE
26
- end
27
-
28
- HTTP_HOST = 'HTTP_HOST'.freeze
29
- HTTP_VERSION = 'HTTP_VERSION'.freeze
30
- HTTPS = 'HTTPS'.freeze
31
- PATH_INFO = 'PATH_INFO'.freeze
32
- REQUEST_METHOD = 'REQUEST_METHOD'.freeze
33
- REQUEST_PATH = 'REQUEST_PATH'.freeze
34
- SCRIPT_NAME = 'SCRIPT_NAME'.freeze
35
- QUERY_STRING = 'QUERY_STRING'.freeze
36
- SERVER_PROTOCOL = 'SERVER_PROTOCOL'.freeze
37
- SERVER_NAME = 'SERVER_NAME'.freeze
38
- SERVER_ADDR = 'SERVER_ADDR'.freeze
39
- SERVER_PORT = 'SERVER_PORT'.freeze
40
- CACHE_CONTROL = 'Cache-Control'.freeze
41
- CONTENT_LENGTH = 'Content-Length'.freeze
42
- CONTENT_TYPE = 'Content-Type'.freeze
43
- SET_COOKIE = 'Set-Cookie'.freeze
44
- TRANSFER_ENCODING = 'Transfer-Encoding'.freeze
45
- HTTP_COOKIE = 'HTTP_COOKIE'.freeze
46
- ETAG = 'ETag'.freeze
47
-
48
- # HTTP method verbs
49
- GET = 'GET'.freeze
50
- POST = 'POST'.freeze
51
- PUT = 'PUT'.freeze
52
- PATCH = 'PATCH'.freeze
53
- DELETE = 'DELETE'.freeze
54
- HEAD = 'HEAD'.freeze
55
- OPTIONS = 'OPTIONS'.freeze
56
- LINK = 'LINK'.freeze
57
- UNLINK = 'UNLINK'.freeze
58
- TRACE = 'TRACE'.freeze
59
-
60
- # Rack environment variables
61
- RACK_VERSION = 'rack.version'.freeze
62
- RACK_TEMPFILES = 'rack.tempfiles'.freeze
63
- RACK_ERRORS = 'rack.errors'.freeze
64
- RACK_LOGGER = 'rack.logger'.freeze
65
- RACK_INPUT = 'rack.input'.freeze
66
- RACK_SESSION = 'rack.session'.freeze
67
- RACK_SESSION_OPTIONS = 'rack.session.options'.freeze
68
- RACK_SHOWSTATUS_DETAIL = 'rack.showstatus.detail'.freeze
69
- RACK_MULTITHREAD = 'rack.multithread'.freeze
70
- RACK_MULTIPROCESS = 'rack.multiprocess'.freeze
71
- RACK_RUNONCE = 'rack.run_once'.freeze
72
- RACK_URL_SCHEME = 'rack.url_scheme'.freeze
73
- RACK_HIJACK = 'rack.hijack'.freeze
74
- RACK_IS_HIJACK = 'rack.hijack?'.freeze
75
- RACK_HIJACK_IO = 'rack.hijack_io'.freeze
76
- RACK_RECURSIVE_INCLUDE = 'rack.recursive.include'.freeze
77
- RACK_MULTIPART_BUFFER_SIZE = 'rack.multipart.buffer_size'.freeze
78
- RACK_MULTIPART_TEMPFILE_FACTORY = 'rack.multipart.tempfile_factory'.freeze
79
- RACK_REQUEST_FORM_INPUT = 'rack.request.form_input'.freeze
80
- RACK_REQUEST_FORM_HASH = 'rack.request.form_hash'.freeze
81
- RACK_REQUEST_FORM_VARS = 'rack.request.form_vars'.freeze
82
- RACK_REQUEST_COOKIE_HASH = 'rack.request.cookie_hash'.freeze
83
- RACK_REQUEST_COOKIE_STRING = 'rack.request.cookie_string'.freeze
84
- RACK_REQUEST_QUERY_HASH = 'rack.request.query_hash'.freeze
85
- RACK_REQUEST_QUERY_STRING = 'rack.request.query_string'.freeze
86
- RACK_METHODOVERRIDE_ORIGINAL_METHOD = 'rack.methodoverride.original_method'.freeze
87
- RACK_SESSION_UNPACKED_COOKIE_DATA = 'rack.session.unpacked_cookie_data'.freeze
14
+ require_relative 'rack/version'
15
+ require_relative 'rack/constants'
88
16
 
17
+ module Rack
89
18
  autoload :Builder, "rack/builder"
90
19
  autoload :BodyProxy, "rack/body_proxy"
91
20
  autoload :Cascade, "rack/cascade"
@@ -96,20 +25,25 @@ module Rack
96
25
  autoload :ContentLength, "rack/content_length"
97
26
  autoload :ContentType, "rack/content_type"
98
27
  autoload :ETag, "rack/etag"
28
+ autoload :Events, "rack/events"
99
29
  autoload :File, "rack/file"
30
+ autoload :Files, "rack/files"
100
31
  autoload :Deflater, "rack/deflater"
101
32
  autoload :Directory, "rack/directory"
102
33
  autoload :ForwardRequest, "rack/recursive"
103
34
  autoload :Handler, "rack/handler"
104
35
  autoload :Head, "rack/head"
36
+ autoload :Headers, "rack/headers"
105
37
  autoload :Lint, "rack/lint"
106
38
  autoload :Lock, "rack/lock"
107
39
  autoload :Logger, "rack/logger"
40
+ autoload :MediaType, "rack/media_type"
108
41
  autoload :MethodOverride, "rack/method_override"
109
42
  autoload :Mime, "rack/mime"
110
43
  autoload :NullLogger, "rack/null_logger"
111
44
  autoload :Recursive, "rack/recursive"
112
45
  autoload :Reloader, "rack/reloader"
46
+ autoload :RewindableInput, "rack/rewindable_input"
113
47
  autoload :Runtime, "rack/runtime"
114
48
  autoload :Sendfile, "rack/sendfile"
115
49
  autoload :Server, "rack/server"
@@ -121,8 +55,8 @@ module Rack
121
55
  autoload :Utils, "rack/utils"
122
56
  autoload :Multipart, "rack/multipart"
123
57
 
124
- autoload :MockRequest, "rack/mock"
125
- autoload :MockResponse, "rack/mock"
58
+ autoload :MockRequest, "rack/mock_request"
59
+ autoload :MockResponse, "rack/mock_response"
126
60
 
127
61
  autoload :Request, "rack/request"
128
62
  autoload :Response, "rack/response"
@@ -131,17 +65,6 @@ module Rack
131
65
  autoload :Basic, "rack/auth/basic"
132
66
  autoload :AbstractRequest, "rack/auth/abstract/request"
133
67
  autoload :AbstractHandler, "rack/auth/abstract/handler"
134
- module Digest
135
- autoload :MD5, "rack/auth/digest/md5"
136
- autoload :Nonce, "rack/auth/digest/nonce"
137
- autoload :Params, "rack/auth/digest/params"
138
- autoload :Request, "rack/auth/digest/request"
139
- end
140
- end
141
-
142
- module Session
143
- autoload :Cookie, "rack/session/cookie"
144
- autoload :Pool, "rack/session/pool"
145
- autoload :Memcache, "rack/session/memcache"
68
+ autoload :Digest, "rack/auth/digest"
146
69
  end
147
70
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.9.3
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Leah Neukirchen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-02 00:00:00.000000000 Z
11
+ date: 2022-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -25,7 +25,21 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '5.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: minitest-sprint
28
+ name: minitest-global_expectations
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - ">="
@@ -54,37 +68,28 @@ dependencies:
54
68
  version: '0'
55
69
  description: |
56
70
  Rack provides a minimal, modular and adaptable interface for developing
57
- web applications in Ruby. By wrapping HTTP requests and responses in
71
+ web applications in Ruby. By wrapping HTTP requests and responses in
58
72
  the simplest way possible, it unifies and distills the API for web
59
73
  servers, web frameworks, and software in between (the so-called
60
74
  middleware) into a single method call.
61
-
62
- Also see https://rack.github.io/.
63
75
  email: leah@vuxu.org
64
- executables:
65
- - rackup
76
+ executables: []
66
77
  extensions: []
67
78
  extra_rdoc_files:
68
- - README.rdoc
69
- - HISTORY.md
79
+ - README.md
80
+ - CHANGELOG.md
81
+ - CONTRIBUTING.md
70
82
  files:
71
- - COPYING
72
- - HISTORY.md
73
- - README.rdoc
74
- - Rakefile
75
- - SPEC
76
- - bin/rackup
77
- - contrib/rack.png
78
- - contrib/rack.svg
79
- - contrib/rack_logo.svg
80
- - contrib/rdoc.css
81
- - example/lobster.ru
82
- - example/protectedlobster.rb
83
- - example/protectedlobster.ru
83
+ - CHANGELOG.md
84
+ - CONTRIBUTING.md
85
+ - MIT-LICENSE
86
+ - README.md
87
+ - SPEC.rdoc
84
88
  - lib/rack.rb
85
89
  - lib/rack/auth/abstract/handler.rb
86
90
  - lib/rack/auth/abstract/request.rb
87
91
  - lib/rack/auth/basic.rb
92
+ - lib/rack/auth/digest.rb
88
93
  - lib/rack/auth/digest/md5.rb
89
94
  - lib/rack/auth/digest/nonce.rb
90
95
  - lib/rack/auth/digest/params.rb
@@ -96,6 +101,7 @@ files:
96
101
  - lib/rack/common_logger.rb
97
102
  - lib/rack/conditional_get.rb
98
103
  - lib/rack/config.rb
104
+ - lib/rack/constants.rb
99
105
  - lib/rack/content_length.rb
100
106
  - lib/rack/content_type.rb
101
107
  - lib/rack/deflater.rb
@@ -103,22 +109,18 @@ files:
103
109
  - lib/rack/etag.rb
104
110
  - lib/rack/events.rb
105
111
  - lib/rack/file.rb
106
- - lib/rack/handler.rb
107
- - lib/rack/handler/cgi.rb
108
- - lib/rack/handler/fastcgi.rb
109
- - lib/rack/handler/lsws.rb
110
- - lib/rack/handler/scgi.rb
111
- - lib/rack/handler/thin.rb
112
- - lib/rack/handler/webrick.rb
112
+ - lib/rack/files.rb
113
113
  - lib/rack/head.rb
114
+ - lib/rack/headers.rb
114
115
  - lib/rack/lint.rb
115
- - lib/rack/lobster.rb
116
116
  - lib/rack/lock.rb
117
117
  - lib/rack/logger.rb
118
118
  - lib/rack/media_type.rb
119
119
  - lib/rack/method_override.rb
120
120
  - lib/rack/mime.rb
121
121
  - lib/rack/mock.rb
122
+ - lib/rack/mock_request.rb
123
+ - lib/rack/mock_response.rb
122
124
  - lib/rack/multipart.rb
123
125
  - lib/rack/multipart/generator.rb
124
126
  - lib/rack/multipart/parser.rb
@@ -132,134 +134,21 @@ files:
132
134
  - lib/rack/rewindable_input.rb
133
135
  - lib/rack/runtime.rb
134
136
  - lib/rack/sendfile.rb
135
- - lib/rack/server.rb
136
- - lib/rack/session/abstract/id.rb
137
- - lib/rack/session/cookie.rb
138
- - lib/rack/session/memcache.rb
139
- - lib/rack/session/pool.rb
140
137
  - lib/rack/show_exceptions.rb
141
138
  - lib/rack/show_status.rb
142
139
  - lib/rack/static.rb
143
140
  - lib/rack/tempfile_reaper.rb
144
141
  - lib/rack/urlmap.rb
145
142
  - lib/rack/utils.rb
146
- - rack.gemspec
147
- - test/builder/an_underscore_app.rb
148
- - test/builder/anything.rb
149
- - test/builder/comment.ru
150
- - test/builder/end.ru
151
- - test/builder/line.ru
152
- - test/builder/options.ru
153
- - test/cgi/assets/folder/test.js
154
- - test/cgi/assets/fonts/font.eot
155
- - test/cgi/assets/images/image.png
156
- - test/cgi/assets/index.html
157
- - test/cgi/assets/javascripts/app.js
158
- - test/cgi/assets/stylesheets/app.css
159
- - test/cgi/lighttpd.conf
160
- - test/cgi/rackup_stub.rb
161
- - test/cgi/sample_rackup.ru
162
- - test/cgi/test
163
- - test/cgi/test+directory/test+file
164
- - test/cgi/test.fcgi
165
- - test/cgi/test.gz
166
- - test/cgi/test.ru
167
- - test/gemloader.rb
168
- - test/helper.rb
169
- - test/multipart/bad_robots
170
- - test/multipart/binary
171
- - test/multipart/content_type_and_no_filename
172
- - test/multipart/empty
173
- - test/multipart/fail_16384_nofile
174
- - test/multipart/file1.txt
175
- - test/multipart/filename_and_modification_param
176
- - test/multipart/filename_and_no_name
177
- - test/multipart/filename_with_encoded_words
178
- - test/multipart/filename_with_escaped_quotes
179
- - test/multipart/filename_with_escaped_quotes_and_modification_param
180
- - test/multipart/filename_with_null_byte
181
- - test/multipart/filename_with_percent_escaped_quotes
182
- - test/multipart/filename_with_single_quote
183
- - test/multipart/filename_with_unescaped_percentages
184
- - test/multipart/filename_with_unescaped_percentages2
185
- - test/multipart/filename_with_unescaped_percentages3
186
- - test/multipart/filename_with_unescaped_quotes
187
- - test/multipart/ie
188
- - test/multipart/invalid_character
189
- - test/multipart/mixed_files
190
- - test/multipart/nested
191
- - test/multipart/none
192
- - test/multipart/quoted
193
- - test/multipart/rack-logo.png
194
- - test/multipart/semicolon
195
- - test/multipart/text
196
- - test/multipart/three_files_three_fields
197
- - test/multipart/unity3d_wwwform
198
- - test/multipart/webkit
199
- - test/rackup/config.ru
200
- - test/registering_handler/rack/handler/registering_myself.rb
201
- - test/spec_auth_basic.rb
202
- - test/spec_auth_digest.rb
203
- - test/spec_body_proxy.rb
204
- - test/spec_builder.rb
205
- - test/spec_cascade.rb
206
- - test/spec_cgi.rb
207
- - test/spec_chunked.rb
208
- - test/spec_common_logger.rb
209
- - test/spec_conditional_get.rb
210
- - test/spec_config.rb
211
- - test/spec_content_length.rb
212
- - test/spec_content_type.rb
213
- - test/spec_deflater.rb
214
- - test/spec_directory.rb
215
- - test/spec_etag.rb
216
- - test/spec_events.rb
217
- - test/spec_fastcgi.rb
218
- - test/spec_file.rb
219
- - test/spec_handler.rb
220
- - test/spec_head.rb
221
- - test/spec_lint.rb
222
- - test/spec_lobster.rb
223
- - test/spec_lock.rb
224
- - test/spec_logger.rb
225
- - test/spec_media_type.rb
226
- - test/spec_method_override.rb
227
- - test/spec_mime.rb
228
- - test/spec_mock.rb
229
- - test/spec_multipart.rb
230
- - test/spec_null_logger.rb
231
- - test/spec_recursive.rb
232
- - test/spec_request.rb
233
- - test/spec_response.rb
234
- - test/spec_rewindable_input.rb
235
- - test/spec_runtime.rb
236
- - test/spec_sendfile.rb
237
- - test/spec_server.rb
238
- - test/spec_session_abstract_id.rb
239
- - test/spec_session_abstract_session_hash.rb
240
- - test/spec_session_cookie.rb
241
- - test/spec_session_memcache.rb
242
- - test/spec_session_persisted_secure_secure_session_hash.rb
243
- - test/spec_session_pool.rb
244
- - test/spec_show_exceptions.rb
245
- - test/spec_show_status.rb
246
- - test/spec_static.rb
247
- - test/spec_tempfile_reaper.rb
248
- - test/spec_thin.rb
249
- - test/spec_urlmap.rb
250
- - test/spec_utils.rb
251
- - test/spec_version.rb
252
- - test/spec_webrick.rb
253
- - test/static/another/index.html
254
- - test/static/foo.html
255
- - test/static/index.html
256
- - test/testrequest.rb
257
- - test/unregistered_handler/rack/handler/unregistered.rb
258
- - test/unregistered_handler/rack/handler/unregistered_long_one.rb
259
- homepage: https://rack.github.io/
143
+ - lib/rack/version.rb
144
+ homepage: https://github.com/rack/rack
260
145
  licenses:
261
146
  - MIT
262
- metadata: {}
147
+ metadata:
148
+ bug_tracker_uri: https://github.com/rack/rack/issues
149
+ changelog_uri: https://github.com/rack/rack/blob/main/CHANGELOG.md
150
+ documentation_uri: https://rubydoc.info/github/rack/rack
151
+ source_code_uri: https://github.com/rack/rack
263
152
  post_install_message:
264
153
  rdoc_options: []
265
154
  require_paths:
@@ -268,67 +157,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
268
157
  requirements:
269
158
  - - ">="
270
159
  - !ruby/object:Gem::Version
271
- version: 2.2.2
160
+ version: 2.4.0
272
161
  required_rubygems_version: !ruby/object:Gem::Requirement
273
162
  requirements:
274
163
  - - ">="
275
164
  - !ruby/object:Gem::Version
276
165
  version: '0'
277
166
  requirements: []
278
- rubygems_version: 3.4.1
167
+ rubygems_version: 3.3.3
279
168
  signing_key:
280
169
  specification_version: 4
281
- summary: a modular Ruby webserver interface
282
- test_files:
283
- - test/spec_auth_basic.rb
284
- - test/spec_auth_digest.rb
285
- - test/spec_body_proxy.rb
286
- - test/spec_builder.rb
287
- - test/spec_cascade.rb
288
- - test/spec_cgi.rb
289
- - test/spec_chunked.rb
290
- - test/spec_common_logger.rb
291
- - test/spec_conditional_get.rb
292
- - test/spec_config.rb
293
- - test/spec_content_length.rb
294
- - test/spec_content_type.rb
295
- - test/spec_deflater.rb
296
- - test/spec_directory.rb
297
- - test/spec_etag.rb
298
- - test/spec_events.rb
299
- - test/spec_fastcgi.rb
300
- - test/spec_file.rb
301
- - test/spec_handler.rb
302
- - test/spec_head.rb
303
- - test/spec_lint.rb
304
- - test/spec_lobster.rb
305
- - test/spec_lock.rb
306
- - test/spec_logger.rb
307
- - test/spec_media_type.rb
308
- - test/spec_method_override.rb
309
- - test/spec_mime.rb
310
- - test/spec_mock.rb
311
- - test/spec_multipart.rb
312
- - test/spec_null_logger.rb
313
- - test/spec_recursive.rb
314
- - test/spec_request.rb
315
- - test/spec_response.rb
316
- - test/spec_rewindable_input.rb
317
- - test/spec_runtime.rb
318
- - test/spec_sendfile.rb
319
- - test/spec_server.rb
320
- - test/spec_session_abstract_id.rb
321
- - test/spec_session_abstract_session_hash.rb
322
- - test/spec_session_cookie.rb
323
- - test/spec_session_memcache.rb
324
- - test/spec_session_persisted_secure_secure_session_hash.rb
325
- - test/spec_session_pool.rb
326
- - test/spec_show_exceptions.rb
327
- - test/spec_show_status.rb
328
- - test/spec_static.rb
329
- - test/spec_tempfile_reaper.rb
330
- - test/spec_thin.rb
331
- - test/spec_urlmap.rb
332
- - test/spec_utils.rb
333
- - test/spec_version.rb
334
- - test/spec_webrick.rb
170
+ summary: A modular Ruby webserver interface.
171
+ test_files: []