From c56eb04d683ef0ed45badfc505ac7eaeb25c6447 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 14 Sep 2021 23:39:22 +0000 Subject: drop Ruby 1.9.3 support, require 2.0+ for now Ruby 1.9.3 was released nearly a decade ago, so there's probably few (if any) legacy users left, and they can continue using old versions of unicorn. We'll be able to take advantage of some Ruby 2.0+-only features down the road (and hopefully 2.3+). Also, I no longer have a installation of Ruby 1.8 and getting it working probably isn't worth the effort, so 4.x support is gone. --- ext/unicorn_http/extconf.rb | 4 ++-- ext/unicorn_http/unicorn_http.rl | 14 +------------- 2 files changed, 3 insertions(+), 15 deletions(-) (limited to 'ext') diff --git a/ext/unicorn_http/extconf.rb b/ext/unicorn_http/extconf.rb index 95514bc..8bdc1c9 100644 --- a/ext/unicorn_http/extconf.rb +++ b/ext/unicorn_http/extconf.rb @@ -9,8 +9,8 @@ end have_macro("SIZEOF_OFF_T", "ruby.h") or check_sizeof("off_t", "sys/types.h") have_macro("SIZEOF_SIZE_T", "ruby.h") or check_sizeof("size_t", "sys/types.h") have_macro("SIZEOF_LONG", "ruby.h") or check_sizeof("long", "sys/types.h") -have_func("rb_str_set_len", "ruby.h") or abort 'Ruby 1.9.3+ required' -have_func("rb_hash_clear", "ruby.h") # Ruby 2.0+ +have_func("rb_str_set_len", "ruby.h") or abort 'Ruby 2.0+ required' +have_func("rb_hash_clear", "ruby.h") or abort 'Ruby 2.0+ required' have_func("gmtime_r", "time.h") message('checking if String#-@ (str_uminus) dedupes... ') diff --git a/ext/unicorn_http/unicorn_http.rl b/ext/unicorn_http/unicorn_http.rl index 21e09d6..e934a32 100644 --- a/ext/unicorn_http/unicorn_http.rl +++ b/ext/unicorn_http/unicorn_http.rl @@ -65,18 +65,6 @@ struct http_parser { static ID id_set_backtrace, id_is_chunked_p; static VALUE cHttpParser; -#ifdef HAVE_RB_HASH_CLEAR /* Ruby >= 2.0 */ -# define my_hash_clear(h) (void)rb_hash_clear(h) -#else /* !HAVE_RB_HASH_CLEAR - Ruby <= 1.9.3 */ - -static ID id_clear; - -static void my_hash_clear(VALUE h) -{ - rb_funcall(h, id_clear, 0); -} -#endif /* HAVE_RB_HASH_CLEAR */ - static void finalize_header(struct http_parser *hp); static void parser_raise(VALUE klass, const char *msg) @@ -650,7 +638,7 @@ static VALUE HttpParser_clear(VALUE self) return HttpParser_init(self); http_parser_init(hp); - my_hash_clear(hp->env); + rb_hash_clear(hp->env); return self; } -- cgit v1.2.3-24-ge0c7