2004-01-14 Gisle Aas <gisle@ActiveState.com>

Release 1.00

Based on the pure Perl implementation of the base64 and quoted-printable encoder/decoder from MIME-Base64-2.23.

Made it work with perl-5.004.

Change entries after this one refers to the MIME-Base64 package.

2004-01-08 Gisle Aas <gisle@ActiveState.com>

Release 2.23

Documentation fixes by Paul Croome <Paul.Croome@softwareag.com>.

2004-01-08 Gisle Aas <gisle@ActiveState.com>

Release 2.22

Fix 'gcc -Wall' complaints.

2003-10-09 Gisle Aas <gisle@ActiveState.com>

Release 2.21

Documentation tweaks.

Don't rely on SvEND(sv) == '\0' as discussed in the perl5-porters mailing list thread that starts with http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2003-10/msg00258.html

Should now pass test suite even without XS support.

Perl v5.005 or better is now required.

2003-05-13 Gisle Aas <gisle@ActiveState.com>

Release 2.20

decode_qp() recognize soft whitespace when there is whitespace between the '=' and the '\n'.

2003-05-13 Gisle Aas <gisle@ActiveState.com>

Release 2.19

decode_qp() did eat up all trailing whitespace in the string decoded. Only whitespace in front of "\n" should go.

Win32 fix for t/warn.t by Reini Urban <rurban@x-ray.at>.

2003-03-09 Gisle Aas <gisle@ActiveState.com>

Release 2.18

Fix up INSTALLDIRS for perl-5.8 and newer.

2003-03-09 Gisle Aas <gisle@ActiveState.com>

Release 2.17

Make it reliable to disable base64 decoding warnings by resetting $^W in recent perls. Would really like to be able to do real lexical warnings but the current mechanism does not seems suitable for XS code.

Passing "" as $eol to encode_qp() disable soft line breaks as well.

Sync up with changes in bleadperl:

2003-01-05 Gisle Aas <gisle@ActiveState.com>

Release 2.16

Fixed the encode_qp() line breaking code. It sometimes made lines longer than 76 chars and it could even get into an infinite loop on certain inputs.

2003-01-03 Gisle Aas <gisle@ActiveState.com>

Release 2.15

Fixed the XS based decode_qp() for strings where a =XX sequence was followed by digits.

Faster encode_qp() for long strings with lots of chars that need escaping.

The old_decode_base64() function introduced in 2.13 was returning undef for empty input on olders perls. This problem has been fixed.

2003-01-01 Gisle Aas <gisle@ActiveState.com>

Release 2.14

MIME::QuotedPrint functions now also implemented using XS which make them faster. 2-3 times faster when encoding line by line and as much as 200 times faster on long binary input. There is probably some breakage on non-ASCII systems from this.

The encode_qp() function now takes an $eol argument in the same way as encode_base64() does.

Slight change in behaviour: the decode_qp() function now turns \r\n terminated lines into \n terminated lines. This makes is more likely that encode_qp(decode_qp()) round-trip properly.

Included {en,de}code-{base64,qp} utility scripts.

2002-12-27 Gisle Aas <gisle@ActiveState.com>

Release 2.13

Sync up with bleadperl:

Improved version of the old_{en,de}code_base64 functions contributed by Paul Szabo <psz@maths.usyd.edu.au>.

2001-02-23 Gisle Aas <gisle@ActiveState.com>

Release 2.12

Speed up pure perl base64 encoder/decoder by using join/map instead of while loop. Contributed by Arno Beckmann <arno@gmx.de>

Doc update contributed by Jerrad Pierce <belg4mit@CALLOWAY.MIT.EDU>

Downgrade UTF8 strings before starting to encode.

1999-02-27 Gisle Aas <gisle@aas.no>

Release 2.11

Fixed bogus "Premature end of base64 data" warning. Bug spotted by Dwayne Jacques Fontenot.

Workaround for Redhat shipping trial releases of perl.

1998-12-18 Gisle Aas <aas@sn.no>

Release 2.10

A tweak that should make compilation with some old perl5.00[23] perls better.

A cast that make some compilers more happy.

1998-11-13 Gisle Aas <aas@sn.no>

Release 2.09

The 2.08 release did not compile with perl5.005_53, because all simple globals now need to be prefixed with "PL_".

1998-10-22 Gisle Aas <aas@sn.no>

Release 2.08

Found another tweak to speed up decode_base64() with another 3%.

Improved MIME::Base64 documentation a little.

1998-10-21 Gisle Aas <aas@sn.no>

Release 2.07

Faster and smarter C implementation of the decode_base64() function. The new decode_base64() was 25% faster when tested on Linux, i586, gcc -O2.

1998-07-15 Gisle Aas <aas@sn.no>

Release 2.06

The decode_base64() implemented in pure perl will only carp (not croak) if length of data to decode is not a multiple 4. This actually made 'make test' fail after 'rm Base64.xs'.

1998-01-27 Gisle Aas <aas@sn.no>

Release 2.05

The decode_base64() would previously allocate a too short buffer for the result string when the trailing "==" padding was missing in the string to be decoded.

The encode_base64() now allocate one byte less space in the result strings returned.

1997-12-02 Gisle Aas <aas@sn.no>

Release 2.04

Documentation expanded a bit.

1997-07-10 Gisle Aas <aas@sn.no>

Release 2.03

Decode_base64() doesn't croak on premature ended data any more. A warning is generated instead if running under -w.

1997-06-27 Gisle Aas <aas@sn.no>

Release 2.02

QuotedPrint fix by Roderick Schertler <roderick@argon.org>:

1997-06-13 Gisle Aas <aas@sn.no>

Release 2.01

Base64.xs:Avoid type convertion warnings with some compilers

Minor documentation updates

1997-04-24 Gisle Aas <aas@sn.no>

Release 2.00, based on libwww-perl-5.08.