1Compress::Bzip2(3)    User Contributed Perl Documentation   Compress::Bzip2(3)
2
3
4

NAME

6       Compress::Bzip2 - Interface to Bzip2 compression library
7

SYNOPSIS

9           use Compress::Bzip2 qw(:all :constant :utilities :gzip);
10
11           ($bz, $status) = bzdeflateInit( [PARAMS] ) ;
12           ($out, $status) = $bz->bzdeflate($buffer) ;
13
14           ($bz, $status) = bzinflateInit( [PARAMS] ) ;
15           ($out, $status) = $bz->bzinflate($buffer) ;
16
17           ($out, $status) = $bz->bzflush() ;
18           ($out, $status) = $bz->bzclose() ;
19
20           $dest = memBzip($source);
21               alias compress
22           $dest = memBunzip($source);
23               alias decompress
24
25           $bz = Compress::Bzip2->new( [PARAMS] );
26
27           $bz = bzopen($filename or filehandle, $mode);
28               alternate, with $bz created by new():
29           $bz->bzopen($filename or filehandle, $mode);
30
31           $bytesread = $bz->bzread($buffer [,$size]) ;
32           $bytesread = $bz->bzreadline($line);
33           $byteswritten = $bz->bzwrite($buffer [,$limit]);
34           $errstring = $bz->bzerror();
35           $status = $bz->bzeof();
36           $status = $bz->bzflush();
37           $status = $bz->bzclose() ;
38
39           $status = $bz->bzsetparams( $param => $setting );
40
41           $bz->total_in() ;
42           $bz->total_out() ;
43
44           $verstring = $bz->bzversion();
45
46           $Compress::Bzip2::bzerrno
47

DESCRIPTION

49       The Compress::Bzip2 module provides a Perl interface to the Bzip2
50       compression library (see "AUTHOR" for details about where to get
51       Bzip2). A relevant subset of the functionality provided by Bzip2 is
52       available in Compress::Bzip2.
53
54       All string parameters can either be a scalar or a scalar reference.
55
56       The module can be split into two general areas of functionality, namely
57       in-memory compression/decompression and read/write access to bzip2
58       files. Each of these areas will be discussed separately below.
59

FILE READ/WRITE INTERFACE

61       A number of functions are supplied in bzlib for reading and writing
62       bzip2 files. Unfortunately, most of them are not suitable.  So, this
63       module provides another interface, built over top of the low level
64       bzlib methods.
65
66   $bz = bzopen(filename or filehandle, mode)
67       This function returns an object which is used to access the other bzip2
68       methods.
69
70       The mode parameter is used to specify both whether the file is opened
71       for reading or writing, with "r" or "w" respectively.
72
73       If a reference to an open filehandle is passed in place of the
74       filename, it better be positioned to the start of a
75       compression/decompression sequence.
76
77   $bz = Compress::Bzip2->new( [PARAMS] )
78       Create a Compress::Bzip2 object.  Optionally, provide
79       compression/decompression parameters as a keyword => setting list.  See
80       bzsetparams() for a description of the parameters.
81
82   $bz->bzopen(filename or filehandle, mode)
83       This is bzopen, but it uses an object previously created by the new
84       method.  Other than that, it is identical to the above bzopen.
85
86   $bytesread = $bz->bzread($buffer [, $size]) ;
87       Reads $size bytes from the compressed file into $buffer. If $size is
88       not specified, it will default to 4096. If the scalar $buffer is not
89       large enough, it will be extended automatically.
90
91       Returns the number of bytes actually read. On EOF it returns 0 and in
92       the case of an error, -1.
93
94   $bytesread = $bz->bzreadline($line) ;
95       Reads the next line from the compressed file into $line.
96
97       Returns the number of bytes actually read. On EOF it returns 0 and in
98       the case of an error, -1.
99
100       It IS legal to intermix calls to bzread and bzreadline.
101
102       At this time bzreadline ignores the variable $/
103       ($INPUT_RECORD_SEPARATOR or $RS when "English" is in use). The end of a
104       line is denoted by the C character '\n'.
105
106   $byteswritten = $bz->bzwrite($buffer [, $limit]) ;
107       Writes the contents of $buffer to the compressed file. Returns the
108       number of bytes actually written, or 0 on error.
109
110       If $limit is given and non-zero, then only that many bytes from $buffer
111       will be written.
112
113   $status = $bz->bzflush($flush) ;
114       Flushes all pending output to the compressed file.  Works identically
115       to the zlib function it interfaces to. Note that the use of bzflush can
116       degrade compression.
117
118       Returns "BZ_OK" if $flush is "BZ_FINISH" and all output could be
119       flushed. Otherwise the bzlib error code is returned.
120
121       Refer to the bzlib documentation for the valid values of $flush.
122
123   $status = $bz->bzeof() ;
124       Returns 1 if the end of file has been detected while reading the input
125       file, otherwise returns 0.
126
127   $bz->bzclose
128       Closes the compressed file. Any pending data is flushed to the file
129       before it is closed.
130
131   $bz->bzsetparams( [PARAMS] );
132       Change settings for the deflate stream $bz.
133
134       The list of the valid options is shown below. Options not specified
135       will remain unchanged.
136
137       -verbosity
138            Defines the verbosity level. Valid values are 0 through 4,
139
140            The default is "-verbosity => 0".
141
142       -blockSize100k
143            For bzip object opened for stream deflation or write.
144
145            Defines the buffering factor of compression method.  The algorithm
146            buffers all data until the buffer is full, then it flushes all the
147            data out.  Use -blockSize100k to specify the size of the buffer.
148
149            Valid settings are 1 through 9, representing a blocking in
150            multiples of 100k.
151
152            Note that each such block has an overhead of leading and trailing
153            synchronization bytes.  bzip2 recovery uses this information to
154            pull useable data out of a corrupted file.
155
156            A streaming application would probably want to set the blocking
157            low.
158
159       -workFactor
160            For bzip object opened for stream deflation or write.
161
162            The workFactor setting tells the deflation algorithm how much work
163            to invest to compensate for repetitive data.
164
165            workFactor may be a number from 0 to 250 inclusive.  The default
166            setting is 30.
167
168            See the bzip documentation for more information.
169
170       -small
171            For bzip object opened for stream inflation or read.
172
173            small may be 0 or 1.  Set "small" to one to use a slower, less
174            memory intensive algorithm.
175
176   $bz->bzerror
177       Returns the bzlib error message or number for the last operation
178       associated with $bz. The return value will be the bzlib error number
179       when used in a numeric context and the bzlib error message when used in
180       a string context. The bzlib error number constants, shown below, are
181       available for use.
182
183         BZ_CONFIG_ERROR
184         BZ_DATA_ERROR
185         BZ_DATA_ERROR_MAGIC
186         BZ_FINISH
187         BZ_FINISH_OK
188         BZ_FLUSH
189         BZ_FLUSH_OK
190         BZ_IO_ERROR
191         BZ_MAX_UNUSED
192         BZ_MEM_ERROR
193         BZ_OK
194         BZ_OUTBUFF_FULL
195         BZ_PARAM_ERROR
196         BZ_RUN
197         BZ_RUN_OK
198         BZ_SEQUENCE_ERROR
199         BZ_STREAM_END
200         BZ_UNEXPECTED_EOF
201
202   $bzerrno
203       The $bzerrno scalar holds the error code associated with the most
204       recent bzip2 routine. Note that unlike bzerror(), the error is not
205       associated with a particular file.
206
207       As with bzerror() it returns an error number in numeric context and an
208       error message in string context. Unlike bzerror() though, the error
209       message will correspond to the bzlib message when the error is
210       associated with bzlib itself, or the UNIX error message when it is not
211       (i.e. bzlib returned "Z_ERRORNO").
212
213       As there is an overlap between the error numbers used by bzlib and
214       UNIX, $bzerrno should only be used to check for the presence of an
215       error in numeric context. Use bzerror() to check for specific bzlib
216       errors. The bzcat example below shows how the variable can be used
217       safely.
218

Compress::Bzip2 1.03 COMPATIBILITY

220       While the 2.x thread forked off of 1.00, another line of development
221       came to a head at 1.03.  The 1.03 version worked with bzlib 1.0.2, had
222       improvements to the error handling, single buffer inflate/deflate, a
223       streaming interface to inflate/deflate, and a cpan style test suite.
224
225   $dest = compress( $string, [$level] )
226       Alias to memBzip, this compresses string, using the optional
227       compression level, 1 through 9, the default being 1.  Returns a string
228       containing the compressed data.
229
230       On error undef is returned.
231
232   $dest = decompress($string)
233       Alias to memBunzip, this decompresses the data in string, returning a
234       string containing the decompressed data.
235
236       On error undef is returned.
237
238   $stream = compress_init( [PARAMS] )
239       Alias to bzdeflateInit.  In addition to the named parameters documented
240       for bzdeflateInit, the following are accepted:
241
242          -level, alias to -blockSize100k
243          -buffer, to set the buffer size.
244
245       The -buffer option is ignored.  The intermediate buffer size is not
246       changeable.
247
248   $stream = decompress_init( [PARAMS] )
249       Alias to bzinflateInit.  See bzinflateInit for a description of the
250       parameters.  The option "-buffer" is accepted, but ignored.
251
252   $output = $stream->add( $string )
253       Add data to be compressed/decompressed.  Returns whatever output is
254       available (possibly none, if it's still buffering it), or undef on
255       error.
256
257   $output = $stream->finish( [$string] )
258       Finish the operation; takes an optional final data string.  Whatever is
259       returned completes the output; returns undef on error.
260
261   $stream->error
262       Like the function, but applies to the current object only.  Note that
263       errors in a stream object are also returned by the function.
264
265   $stream->input_size
266       Alias to total_in.  Total bytes passed to the stream.
267
268   $stream->output_size
269       Alias to total_out.  Total bytes received from the stream.
270

GZIP COMPATIBILITY INTERFACE

272       Except for the exact state and error numbers, this package presents an
273       interface very much like that given by the Compress::Zlib package.
274       Mostly, if you take the method name, state or error number from
275       Compress::Zlib and replace the "g" with a "b", your code should work.
276
277       To make the interoperability even easier, all the Compress::Zlib method
278       names have been used as aliases or cover functions for the bzip2
279       methods.
280
281       Therefore, most code that uses Compress::Zlib should be able to use
282       this package, with a one line change.
283
284       Simply change
285
286          $gz = Compress::Zlib::gzopen( "filename", "w" );
287
288       to
289
290          $gz = Compress::Bzip2::gzopen( "filename", "w" );
291
292       Some of the Compress::Zlib aliases don't return anything useful, like
293       crc32 or adler32, cause bzip2 doesn't do that sort of thing.
294
295    $gz = gzopen( $filename, $mode )
296       Alias for bzopen.
297
298    $gz->gzread( $buffer, [ $length ] )
299       Alias for bzread.
300
301    $gz->gzreadline( $buffer )
302       Alias for bzreadline.
303
304    $gz->gzwrite( $buffer )
305       Alias for bzwrite.
306
307    $gz->gzflush( [$flushtype] )
308       Alias for bzflush, with return code translation.
309
310    $gz->gzclose( )
311       Alias for bzclose.
312
313    $gz->gzeof( )
314       Alias for bzeof.
315
316    $gz->gzerror( )
317       Alias for bzerror.
318
319    $gz->gzsetparams( $level, $strategy )
320       This is a no-op.
321
322    $d = deflateInit( [OPTS] )
323       Alias for bzdeflateInit, with return code translation.
324
325       All OPTS are ignored.
326
327    $d->deflate( $buffer )
328       Alias for bzdeflate, with return code translation.
329
330    $d->deflateParams( [OPTS] )
331       This is a no-op.
332
333    $d->flush( [$flushtype] )
334       Cover function for bzflush or bzclose, depending on $flushtype.
335
336       See the Compress::Zlib documentation for more information.
337
338    $d->dict_adler( )
339       This is a no-op.
340
341    $d->msg( )
342       This is a no-op.
343
344    $d = inflateInit( [OPTS] )
345       Alias for bzinflateInit, with return code translation.
346
347       All OPTS are ignored.
348
349    $d->inflate( )
350       Alias for bzinflate, with return code translation.
351
352    $d->inflateSync( )
353       This is a no-op.
354
355    $d->adler32( $crc )
356       This is a no-op.
357
358    $d->crc32( $crc )
359       This is a no-op.
360
361    $buffer = memGzip( $buffer )
362       Alias for memBzip.
363
364    $buffer = memGunzip( $buffer )
365       Alias for memBunzip.
366

IN-MEMORY COMPRESS/UNCOMPRESS

368       Two high-level functions are provided by bzlib to perform in-memory
369       compression. They are memBzip and memBunzip. Two Perl subs are provided
370       which provide similar functionality.
371
372   $compressed = memBzip($buffer);
373       Compresses $source. If successful it returns the compressed data.
374       Otherwise it returns undef.
375
376       The buffer parameter can either be a scalar or a scalar reference.
377
378       Essentially, an in-memory bzip file is created. It creates a minimal
379       bzip header.
380
381   $uncompressed = memBunzip($buffer);
382       Uncompresses $source. If successful it returns the uncompressed data.
383       Otherwise it returns undef.
384
385       The source buffer can either be a scalar or a scalar reference.
386
387       The buffer parameter can either be a scalar or a scalar reference. The
388       contents of the buffer parameter are destroyed after calling this
389       function.
390

STREAM DEFLATE

392       The Perl interface will always consume the complete input buffer before
393       returning. Also the output buffer returned will be automatically grown
394       to fit the amount of output available.
395
396       Here is a definition of the interface available:
397
398   ($d, $status) = bzdeflateInit( [PARAMS] )
399       Initialises a deflation stream.
400
401       If successful, it will return the initialised deflation stream, $d and
402       $status of "BZ_OK" in a list context. In scalar context it returns the
403       deflation stream, $d, only.
404
405       If not successful, the returned deflation stream ($d) will be undef and
406       $status will hold the exact bzip2 error code.
407
408       The function optionally takes a number of named options specified as
409       "-Name=>value" pairs. This allows individual options to be tailored
410       without having to specify them all in the parameter list.
411
412       Here is a list of the valid options:
413
414       -verbosity
415            Defines the verbosity level. Valid values are 0 through 4,
416
417            The default is "-verbosity => 0".
418
419       -blockSize100k
420            Defines the buffering factor of compression method.  The algorithm
421            buffers all data until the buffer is full, then it flushes all the
422            data out.  Use -blockSize100k to specify the size of the buffer.
423
424            Valid settings are 1 through 9, representing a blocking in
425            multiples of 100k.
426
427            Note that each such block has an overhead of leading and trailing
428            synchronization bytes.  bzip2 recovery uses this information to
429            pull useable data out of a corrupted file.
430
431            A streaming application would probably want to set the blocking
432            low.
433
434       -workFactor
435            The workFactor setting tells the deflation algorithm how much work
436            to invest to compensate for repetitive data.
437
438            workFactor may be a number from 0 to 250 inclusive.  The default
439            setting is 30.
440
441            See the bzip documentation for more information.
442
443       Here is an example of using the deflateInit optional parameter list to
444       override the default buffer size and compression level. All other
445       options will take their default values.
446
447           bzdeflateInit( -blockSize100k => 1, -verbosity => 1 );
448
449   ($out, $status) = $d->bzdeflate($buffer)
450       Deflates the contents of $buffer. The buffer can either be a scalar or
451       a scalar reference.  When finished, $buffer will be completely
452       processed (assuming there were no errors). If the deflation was
453       successful it returns deflated output, $out, and a status value,
454       $status, of "Z_OK".
455
456       On error, $out will be undef and $status will contain the zlib error
457       code.
458
459       In a scalar context bzdeflate will return $out only.
460
461       As with the internal buffering of the deflate function in bzip2, it is
462       not necessarily the case that any output will be produced by this
463       method. So don't rely on the fact that $out is empty for an error test.
464       In fact, given the size of bzdeflates internal buffer, with most files
465       it's likely you won't see any output at all until flush or close.
466
467   ($out, $status) = $d->bzflush([flush_type])
468       Typically used to finish the deflation. Any pending output will be
469       returned via $out.  $status will have a value "BZ_OK" if successful.
470
471       In a scalar context bzflush will return $out only.
472
473       Note that flushing can seriously degrade the compression ratio, so it
474       should only be used to terminate a decompression (using "BZ_FLUSH") or
475       when you want to create a full flush point (using "BZ_FINISH").
476
477       The allowable values for "flush_type" are "BZ_FLUSH" and "BZ_FINISH".
478
479       For a handle opened for "w" (bzwrite), the default is "BZ_FLUSH".  For
480       a stream, the default for "flush_type" is "BZ_FINISH" (which is
481       essentially a close and reopen).
482
483       It is strongly recommended that you only set the "flush_type" parameter
484       if you fully understand the implications of what it does. See the
485       "bzip2" documentation for details.
486
487   Example
488       Here is a trivial example of using bzdeflate. It simply reads standard
489       input, deflates it and writes it to standard output.
490
491           use strict ;
492           use warnings ;
493
494           use Compress::Bzip2 ;
495
496           binmode STDIN;
497           binmode STDOUT;
498           my $x = bzdeflateInit()
499              or die "Cannot create a deflation stream\n" ;
500
501           my ($output, $status) ;
502           while (<>)
503           {
504               ($output, $status) = $x->bzdeflate($_) ;
505
506               $status == BZ_OK
507                   or die "deflation failed\n" ;
508
509               print $output ;
510           }
511
512           ($output, $status) = $x->bzclose() ;
513
514           $status == BZ_OK
515               or die "deflation failed\n" ;
516
517           print $output ;
518

STREAM INFLATE

520       Here is a definition of the interface:
521
522   ($i, $status) = inflateInit()
523       Initialises an inflation stream.
524
525       In a list context it returns the inflation stream, $i, and the zlib
526       status code ($status). In a scalar context it returns the inflation
527       stream only.
528
529       If successful, $i will hold the inflation stream and $status will be
530       "BZ_OK".
531
532       If not successful, $i will be undef and $status will hold the bzlib.h
533       error code.
534
535       The function optionally takes a number of named options specified as
536       "-Name=>value" pairs. This allows individual options to be tailored
537       without having to specify them all in the parameter list.
538
539       For backward compatibility, it is also possible to pass the parameters
540       as a reference to a hash containing the name=>value pairs.
541
542       The function takes one optional parameter, a reference to a hash.  The
543       contents of the hash allow the deflation interface to be tailored.
544
545       Here is a list of the valid options:
546
547       -small
548            small may be 0 or 1.  Set "small" to one to use a slower, less
549            memory intensive algorithm.
550
551       -verbosity
552            Defines the verbosity level. Valid values are 0 through 4,
553
554            The default is "-verbosity => 0".
555
556       Here is an example of using the bzinflateInit optional parameter.
557
558           bzinflateInit( -small => 1, -verbosity => 1 );
559
560   ($out, $status) = $i->bzinflate($buffer)
561       Inflates the complete contents of $buffer. The buffer can either be a
562       scalar or a scalar reference.
563
564       Returns "BZ_OK" if successful and "BZ_STREAM_END" if the end of the
565       compressed data has been successfully reached.  If not successful, $out
566       will be undef and $status will hold the bzlib error code.
567
568       The $buffer parameter is modified by "bzinflate". On completion it will
569       contain what remains of the input buffer after inflation. This means
570       that $buffer will be an empty string when the return status is "BZ_OK".
571       When the return status is "BZ_STREAM_END" the $buffer parameter will
572       contains what (if anything) was stored in the input buffer after the
573       deflated data stream.
574
575       This feature is useful when processing a file format that encapsulates
576       a compressed data stream.
577
578   Example
579       Here is an example of using bzinflate.
580
581           use strict ;
582           use warnings ;
583
584           use Compress::Bzip2;
585
586           my $x = bzinflateInit()
587              or die "Cannot create a inflation stream\n" ;
588
589           my $input = '' ;
590           binmode STDIN;
591           binmode STDOUT;
592
593           my ($output, $status) ;
594           while (read(STDIN, $input, 4096))
595           {
596               ($output, $status) = $x->bzinflate(\$input) ;
597
598               print $output
599                   if $status == BZ_OK or $status == BZ_STREAM_END ;
600
601               last if $status != BZ_OK ;
602           }
603
604           die "inflation failed\n"
605               unless $status == BZ_STREAM_END ;
606

EXAMPLES

608       Here are some example scripts of using the interface.
609
610   A bzcat function
611         use strict ;
612         use warnings ;
613
614         use Compress::Bzip2 ;
615
616         die "Usage: bzcat file...\n" unless @ARGV ;
617
618         my $file ;
619
620         foreach $file (@ARGV) {
621           my $buffer ;
622
623           my $bz = bzopen($file, "rb")
624              or die "Cannot open $file: $bzerrno\n" ;
625
626           print $buffer while $bz->bzread($buffer) > 0 ;
627
628           die "Error reading from $file: $bzerrno" . ($bzerrno+0) . "\n"
629              if $bzerrno != BZ_STREAM_END ;
630
631           $bz->bzclose() ;
632         }
633
634   A grep using bzreadline
635         use strict ;
636         use warnings ;
637
638         use Compress::Bzip2 ;
639
640         die "Usage: bzgrep pattern file...\n" unless @ARGV >= 2;
641
642         my $pattern = shift ;
643
644         my $file ;
645
646         foreach $file (@ARGV) {
647           my $bz = bzopen($file, "rb")
648              or die "Cannot open $file: $bzerrno\n" ;
649
650           while ($bz->bzreadline($_) > 0) {
651             print if /$pattern/ ;
652           }
653
654           die "Error reading from $file: $bzerrno\n"
655             if $bzerrno != Z_STREAM_END ;
656
657           $bz->bzclose() ;
658         }
659
660   Streaming Compression
661       This script, bzstream, does the opposite of the bzcat script above. It
662       reads from standard input and writes a bzip file to standard output.
663
664         use strict ;
665         use warnings ;
666
667         use Compress::Bzip2 ;
668
669         binmode STDOUT;       # bzopen only sets it on the fd
670
671         my $bz = bzopen(\*STDOUT, "wb")
672            or die "Cannot open stdout: $bzerrno\n" ;
673
674         while (<>) {
675           $bz->bzwrite($_) or die "error writing: $bzerrno\n" ;
676         }
677
678         $bz->bzclose ;
679

EXPORT

681       Use the tags :all, :utilities, :constants, :bzip1 and :gzip.
682
683   Export tag :all
684       This exports all the exportable methods.
685
686   Export tag :constants
687       This exports only the BZ_* constants.
688
689   Export tag :bzip1
690       This exports the Compress::Bzip2 1.x functions, for compatibility.
691
692          compress
693          decompress
694          compress_init
695          decompress_init
696          version
697
698       These are actually aliases to memBzip and memBunzip.
699
700   Export tag :utilities
701       This gives an interface to the bzip2 methods.
702
703           bzopen
704           bzinflateInit
705           bzdeflateInit
706           memBzip
707           memBunzip
708           bzip2
709           bunzip2
710           bzcat
711           bzlibversion
712           $bzerrno
713
714   Export tag :gzip
715       This gives compatibility with Compress::Zlib.
716
717           gzopen
718           gzinflateInit
719           gzdeflateInit
720           memGzip
721           memGunzip
722           $gzerrno
723

Exportable constants

725       All the bzlib constants are automatically imported when you make use of
726       Compress::Bzip2.
727
728         BZ_CONFIG_ERROR
729         BZ_DATA_ERROR
730         BZ_DATA_ERROR_MAGIC
731         BZ_FINISH
732         BZ_FINISH_OK
733         BZ_FLUSH
734         BZ_FLUSH_OK
735         BZ_IO_ERROR
736         BZ_MAX_UNUSED
737         BZ_MEM_ERROR
738         BZ_OK
739         BZ_OUTBUFF_FULL
740         BZ_PARAM_ERROR
741         BZ_RUN
742         BZ_RUN_OK
743         BZ_SEQUENCE_ERROR
744         BZ_STREAM_END
745         BZ_UNEXPECTED_EOF
746

SEE ALSO

748       The documentation for zlib, bzip2 and Compress::Zlib.
749

AUTHOR

751       Rob Janes, <arjay at cpan.org>
752
754       Copyright (C) 2005 by Rob Janes
755
756       This library is free software; you can redistribute it and/or modify it
757       under the same terms as Perl itself, either Perl version 5.8.3 or, at
758       your option, any later version of Perl 5 you may have available.
759

AUTHOR

761       The Compress::Bzip2 module was originally written by Gawdi Azem
762       azemgi@rupert.informatik.uni-stuttgart.de.
763
764       The first Compress::Bzip2 module was written by Gawdi Azem
765       azemgi@rupert.informatik.uni-stuttgart.de.  It provided an interface to
766       the in memory inflate and deflate routines.
767
768       Compress::Bzip2 was subsequently passed on to Marco Carnut
769       kiko@tempest.com.br who shepharded it through to version 1.03, a set of
770       changes which included upgrades to handle bzlib 1.0.2, and improvements
771       to the in memory inflate and deflate routines.  The streaming interface
772       and error information were added by David Robins
773       dbrobins@davidrobins.net.
774
775       Version 2 of Compress::Bzip2 is due to Rob Janes, of arjay@cpan.org.
776       This release is intended to give an interface close to that of
777       Compress::Zlib.  It's development forks from 1.00, not 1.03, so the
778       streaming interface is not the same as that in 1.03, although
779       apparently compatible as it passes the 1.03 test suite.
780

MODIFICATION HISTORY

782       See the Changes file.
783
784       2.00 Second public release of Compress::Bzip2.
785

POD ERRORS

787       Hey! The above document had some coding errors, which are explained
788       below:
789
790       Around line 746:
791           You forgot a '=back' before '=head2'
792
793       Around line 918:
794           =back without =over
795
796       Around line 929:
797           You forgot a '=back' before '=head2'
798
799       Around line 983:
800           =back without =over
801
802       Around line 1011:
803           You forgot a '=back' before '=head2'
804
805       Around line 1105:
806           =back without =over
807
808       Around line 1115:
809           You forgot a '=back' before '=head2'
810
811       Around line 1136:
812           =back without =over
813
814       Around line 1384:
815           You forgot a '=back' before '=head2'
816
817       Around line 1458:
818           =back without =over
819
820
821
822perl v5.12.0                      2005-08-09                Compress::Bzip2(3)
Impressum