unicorn Ruby/Rack server user+dev discussion/patches/pulls/bugs/help
 help / color / mirror / code / Atom feed
* [PATCH 0/2] some minor early_hints fixes
@ 2020-07-23  4:17 Eric Wong
  2020-07-23  4:17 ` [PATCH 1/2] test_server: test_early_hints: fix test reliability Eric Wong
  2020-07-23  4:17 ` [PATCH 2/2] configurator: SIGHUP resets early_hints if unset Eric Wong
  0 siblings, 2 replies; 3+ messages in thread
From: Eric Wong @ 2020-07-23  4:17 UTC (permalink / raw)
  To: unicorn-public; +Cc: Jean Boussier

Just some minor things:

I noticed the new test failed occasionally, and made a trivial
fix for it.  In case people use SIGHUP, I've also made it reset
back to the default value (just like every other config
variable).

Eric Wong (2):
  test_server: test_early_hints: fix test reliability
  configurator: SIGHUP resets early_hints if unset

 lib/unicorn/configurator.rb | 1 +
 test/unit/test_server.rb    | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH 1/2] test_server: test_early_hints: fix test reliability
  2020-07-23  4:17 [PATCH 0/2] some minor early_hints fixes Eric Wong
@ 2020-07-23  4:17 ` Eric Wong
  2020-07-23  4:17 ` [PATCH 2/2] configurator: SIGHUP resets early_hints if unset Eric Wong
  1 sibling, 0 replies; 3+ messages in thread
From: Eric Wong @ 2020-07-23  4:17 UTC (permalink / raw)
  To: unicorn-public; +Cc: Jean Boussier

IO#sysread may only capture the 103 response and return before
the server can send the 200.  Since we don't support persistent
connections, we can just use IO#read to rely on the server
giving us an EOF after the 200 is sent.

Cc: Jean Boussier <jean.boussier@gmail.com>
---
 test/unit/test_server.rb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/unit/test_server.rb b/test/unit/test_server.rb
index d706243..384fa6b 100644
--- a/test/unit/test_server.rb
+++ b/test/unit/test_server.rb
@@ -106,7 +106,7 @@ def test_early_hints
     sock = TCPSocket.new('127.0.0.1', @port)
     sock.syswrite("GET / HTTP/1.0\r\n\r\n")
 
-    responses = sock.sysread(4096)
+    responses = sock.read(4096)
     assert_match %r{\AHTTP/1.[01] 103\b}, responses
     assert_match %r{^Link: </style\.css>}, responses
     assert_match %r{^Link: </script\.js>}, responses

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] configurator: SIGHUP resets early_hints if unset
  2020-07-23  4:17 [PATCH 0/2] some minor early_hints fixes Eric Wong
  2020-07-23  4:17 ` [PATCH 1/2] test_server: test_early_hints: fix test reliability Eric Wong
@ 2020-07-23  4:17 ` Eric Wong
  1 sibling, 0 replies; 3+ messages in thread
From: Eric Wong @ 2020-07-23  4:17 UTC (permalink / raw)
  To: unicorn-public; +Cc: Jean Boussier

If a user removes "early_hints" entirely from the config file, a
SIGHUP needs to restore the default value.  This is consistent
with the behavior of all the other configuration variables.

Cc: Jean Boussier <jean.boussier@gmail.com>
---
 lib/unicorn/configurator.rb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/unicorn/configurator.rb b/lib/unicorn/configurator.rb
index b0606af..ecdf03e 100644
--- a/lib/unicorn/configurator.rb
+++ b/lib/unicorn/configurator.rb
@@ -53,6 +53,7 @@ class Unicorn::Configurator
         server.logger.info("worker=#{worker.nr} ready")
       },
     :pid => nil,
+    :early_hints => false,
     :worker_exec => false,
     :preload_app => false,
     :check_client_connection => false,

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-07-23  4:17 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-23  4:17 [PATCH 0/2] some minor early_hints fixes Eric Wong
2020-07-23  4:17 ` [PATCH 1/2] test_server: test_early_hints: fix test reliability Eric Wong
2020-07-23  4:17 ` [PATCH 2/2] configurator: SIGHUP resets early_hints if unset Eric Wong

Code repositories for project(s) associated with this public inbox

	https://yhbt.net/unicorn.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).