Change HttpParserError
to be subclass of StandardError
#3590
+28
−6
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
A long time ago (02-April-2006),
HttpParserError
was added, and it was a subclass ofIOError
. Today,IOError
is more associated with errors at theIO
level.Puma should differentiate between socket level errors and HTTP request validity errors. Hence, change
HttpParserError
to be subclass ofStandardError
. This change will stopHttpParserError
from being 'swallowed' in:puma/lib/puma/client.rb
Lines 184 to 190 in f5e4b77
This PR also uncomments two tests in
test/test_request_invalid.rb
, which fail on master.Note that
@to_io.wait_readable
may throw other socket related errors. Something to keep an eye on...Closes #3552
Your checklist for this pull request
[ci skip]
to the title of the PR.#issue
" to the PR description or my commit messages.