| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
|
|
|
|
|
| |
This to_ary check was previously there to work around an infinite
loop issue due to Rack::Response#to_ary being defined.
Rack::Response#to_ary has been removed, so this check can be removed,
and the middleware can correctly calculate Content-Length for all
valid rack responses.
Fixes #734
|
| | |
|
| |
|
|
|
| |
Rails also has similar issue and is already fixed in
https://github.com/rails/rails/pull/38091.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
If the body responds to to_path, the server is allowed to serve
the file at that path and ignore the body. That works well for
most requests, but not for range requests, since the correct
byte range won't be served.
Work around this issue by using a separate body class for the
partial content responses that does not respond to to_path, and
the current body class for non-partial content responses.
Fixes #1235
|
| |\
| |
| | |
Fix typo in Padrino changelog entry
|
| |/ |
|
| |
|
|
|
|
|
|
| |
This uses Thin::Controllers::Controller instead of Thin::Server.
Thin::Controllers::Controller will do options parsing and then
create a Thin::Server instance based on them.
Fixes #745
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes the UploadedFile API to use keyword arguments, being
backwards compatible with the previous API by keeping the positional
arguments and making the keyword defaults be the positional argument
values.
The two new arguments to UploadedFile#initialize are filename and io.
filename allows overriding the filename that will be used, instead of
always using the base name of the path. io specifies an IO-like
object that can be read from to get the data, overridding any
provided path. This allows you to generate UploadedFile instances
that previously were not possible without accessing the file system.
This changes the multipart generator to only include a Content-Length
for files with paths, and only include a filename in
Content-Disposition if the UploadedFile has one.
Fixes #1028.
|
| |
|
|
|
|
|
|
| |
If :BindAddress is currently set and :Host is not set, then
:BindAddress is overwritten with the default_host, which is
probably not the desired behavior in that scenario.
Fixes #821
|
| |
|
|
|
|
|
| |
wss is used for Websockets sent over a TLS connection, just as
https ised used for HTTP sent over a TLS connection.
Fixes #1020
|
| |
|
|
|
|
|
| |
This allows for handling missing files under a static path in a
custom manner.
Fixes #946
|
| |
|
|
|
|
|
|
| |
In this case, rack doesn't have a parameter name, so it uses
the content type as the parameter name. Since there can be
multiple parts without Content-Disposition, it uses an array.
Fixes #984
|
| |
|
|
|
|
| |
Otherwise you get an exception trying to render the exception page.
Fixes #991
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
Now that rack supports Ruby 2.3+, it makes sense to implement
dig.
Fixes #1120
|
| |
|
|
|
|
| |
Possibly start ends up rounded up and mtime rounded down.
For the purposes of these specs, being 1 second off should not
be a problem.
|
| |
|
|
|
|
|
| |
Empty passwords are still allowed, but there must be a colon to
separate username from password, as required by RFC 2617.
Fixes #1138
|
| |
|
|
|
|
| |
Fixes usage with Rack::Sendfile.
Fixes #1142
|
| |\
| |
| | |
Update TargetRubyVersion to 2.3 in .rubocop.yml
|
| |/
|
| |
Since d81a5d3bdd20d80527164705b1fcfd0b7f4be6cd, Ruby 2.2 is no longer supported.
|
| |\ |
|
| |/
|
|
|
|
|
|
| |
Also better document key_space_limit in README. Because
key_space_limit doesn't affect nested hashes, I'm not sure
what advantage there actually is to keeping it.
Fixes #1206
|
| |\
| |
| | |
Make Rack::Lint check response is array with 3 elements
|
| |/
|
|
|
|
| |
This matches what is required by SPEC.
Fixes #1239
|
| |
|
| |
Co-Authored-By: Rafael França <rafael@franca.dev>
|
| | |
|
| |
|
|
|
|
| |
And move a few people to Alumni
[ci skip]
|
| |
|
|
|
| |
I'm not sure if all of the other core team members listed are
still active or should be moved to the Alumni section.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
The chunked middleware assumes details about the protocol level
implementation. Due to recent changes from HTTP_VERSION to SERVER_PROTOCOL,
this dormant middleware now appears to be breaking a lot of assumptions.
https://github.com/rack/rack/issues/1472
https://github.com/rack/rack/issues/1266
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
Use historical behavior of returning nil in this case.
Add tests for Rack::Session::Abstract::PersistedSecure::SecureSessionHash,
mostly based on the existing ones for Rack::Session::Abstract::SessionHash.
Fixes #1433. Needs backport to 1.6 and 2.0.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The cookie parse used to accept both `;` and `,` as delimiters. This
follows the original specifications in RFC 2109 and RFC 2965, but both of
these have been obsoleted by RFC 6265 which does not include the
possibility of `,` as a delimiter in Cookie: headers. Note that `,` is
still not allowed in cookie values (it is explicitly excluded from
cookie-octets in RFC 6265).
From now on the cookie parser will only accept `;` as a delimiter to
adhere to RFC 6265.
|