summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--docs/changes.xml6
-rw-r--r--src/ruby/nxt_ruby_stream_io.c8
2 files changed, 12 insertions, 2 deletions
diff --git a/docs/changes.xml b/docs/changes.xml
index c69523f9..a4db9ec5 100644
--- a/docs/changes.xml
+++ b/docs/changes.xml
@@ -50,6 +50,12 @@ points on a per-request basis during static file serving.
</para>
</change>
+<change type="feature">
+<para>
+compatibility with Ruby 3.0.
+</para>
+</change>
+
<change type="bugfix">
<para>
a segmentation fault might have occurred in the PHP module if
diff --git a/src/ruby/nxt_ruby_stream_io.c b/src/ruby/nxt_ruby_stream_io.c
index 69bf289e..82ad3908 100644
--- a/src/ruby/nxt_ruby_stream_io.c
+++ b/src/ruby/nxt_ruby_stream_io.c
@@ -25,7 +25,9 @@ nxt_ruby_stream_io_input_init(void)
{
VALUE stream_io;
- stream_io = rb_define_class("NGINX_Unit_Stream_IO_Read", rb_cData);
+ stream_io = rb_define_class("NGINX_Unit_Stream_IO_Read", rb_cObject);
+
+ rb_undef_alloc_func(stream_io);
rb_gc_register_address(&stream_io);
@@ -46,7 +48,9 @@ nxt_ruby_stream_io_error_init(void)
{
VALUE stream_io;
- stream_io = rb_define_class("NGINX_Unit_Stream_IO_Error", rb_cData);
+ stream_io = rb_define_class("NGINX_Unit_Stream_IO_Error", rb_cObject);
+
+ rb_undef_alloc_func(stream_io);
rb_gc_register_address(&stream_io);