Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync with ruby #27

Merged
merged 5 commits into from
Aug 28, 2019
Merged

Sync with ruby #27

merged 5 commits into from
Aug 28, 2019

Conversation

nobu
Copy link
Member

@nobu nobu commented Aug 28, 2019

No description provided.

akr and others added 5 commits August 28, 2019 21:43
WEBrick::HTTPProxyServer implementes HTTP proxy using
WEBrick and Net::HTTP.
WEBrick accepts HTTP/1.0 clients and
Net::HTTP uses always HTTP/1.1.

However HTTP/1.1 supports chunked transfer coding HTTP/1.0 doesn't.

Chunked transfer coding doesn't require that
content-length before the content is sent.
But non-chunked transfer coding require content-length before
the content is sent.

So, when HTTP/1.0 clients connects WEBrick::HTTPProxyServer and
origin server returns chunked response,
WEBrick::HTTPProxyServer needs to store whole content to
know the length of it.

This patch do it using tempfile.
`require "webrick/utils.rb"` should load `lib/webrick/utils.rb`, but on
some CI machines, it wrongly loads `test/webrick/utils.rb`, which caused
circular require warning:

https://rubyci.org/logs/rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20190825T093007Z.log.html.gz
```
/data/chkbuild/tmp/build/20190825T093007Z/ruby/lib/rubygems/core_ext/kernel_require.rb:61: warning: /data/chkbuild/tmp/build/20190825T093007Z/ruby/lib/rubygems/core_ext/kernel_require.rb:61: warning: loading in progress, circular require considered harmful - /data/chkbuild/tmp/build/20190825T093007Z/ruby/lib/webrick.rb
```
@hsbt hsbt merged commit 614c9ee into ruby:master Aug 28, 2019
@nobu nobu deleted the sync-with-ruby branch August 28, 2019 13:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants