From 3cf7d1b57e3622430065f6a6ce8cbd5548d3d894 Mon Sep 17 00:00:00 2001 From: drbrain Date: Tue, 10 Jul 2012 18:28:40 +0000 Subject: * ext/zlib/zlib.c: Added streaming support to inflate processing. This allows zlib streams to be processed without huge memory growth. [Feature #6612] * NEWS: ditto * ext/zlib/zlib.c (zstream_expand_buffer): Uses rb_yield when a block is given for streaming support. Refactored to use zstream_expand_buffer_into to remove duplicate code. * ext/zlib/zlib.c (zstream_expand_buffer_protect): Added wrapper function to pass jump state back through GVL-free section to allow zstream clean-up before terminating the ruby call. * ext/zlib/zlib.c (zstream_expand_buffer_without_gvl): Acquire GVL to yield processed chunk of output stream. * ext/zlib/zlib.c (zstream_detach_buffer): When a block is given, returns Qnil mid-stream and yields the output buffer at the end of the stream. * test/zlib/test_zlib.rb: Updated tests git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- NEWS | 2 ++ 1 file changed, 2 insertions(+) (limited to 'NEWS') diff --git a/NEWS b/NEWS index b1c74ac05e..7c356b9352 100644 --- a/NEWS +++ b/NEWS @@ -123,6 +123,8 @@ with all sufficient information, see the ChangeLog file. accessible from other users. * zlib + * Added streaming support for Zlib::Inflate and Zlib::Deflate. This allows + processing of a stream without the use of large amounts of memory. * Added support for the new deflate strategies Zlib::RLE and Zlib::FIXED. * Zlib streams are now processed without the GVL. This allows gzip, zlib and deflate streams to be processed in parallel. -- cgit v1.2.3