Per maintainer, this is a more complete fix for the problem addressed in
Encode 3.13: memory leak on FB_CROAK. Certain problems with the sequencing of
pull requests have been addressed.
Address RT#139622. It fixes the memory leak when you set FB_CROAK.
Usually that is not a problem because perl dies immediately after the
error occurs but that is not the case when you wrap it in eval {}.
I expect Encode to see a new release today.
Without this fix, Encode::ConfigLocal can be loaded from a path relative
to the current directory, because the || operator will evaluate @INC in
scalar context, putting an integer as the only value in @INC.
The main reason for the release update is to address
https://github.com/Perl/perl5/issues/17382
From Changes:
! t/whatwg-aliases.t
drop RELEASE_TESTING since Pumpking also uses it.
! bin/enc2xs
Pulled: enc2xs: Add environment variable to suppress comments
! t/enc_utf8.t
Pulled: fixup enc_utf8.t for ONLY_PRAGMA_WARNINGS
! Encode/encode.h
Pulled: Fix linker errors
[DELTA]
$Revision: 3.00 $ $Date: 2019/01/31 04:51:32 $
! Encode.pm
VERSION bumped to 3.00 to make PAUSE happy
2.100 2019/01/31 04:26:40
! Encode.xs MANIFEST
+ t/xml.t
Pulled: Do not access SV* buffer if we have not called SvPV_force()
https://github.com/dankogai/p5-encode/pull/137
! MANIFEST
remove utf8messages.t which is already deleted from the repository.
I tried to follow the numbering convention of the module,
bumping every module if the versions are synchronized, bumping
just the primary module if not.
This retains the customizations to Byte/Makefile.PL (not yet assimilated)
and encoding.pm (can't be removed without a $VERSION++, which would be a
customization again!).
This removes two of the blead "customizations", which were actually only
differences in the "$Id:" line, but the third (encoding.pm) has to stay
because the file hasn't otherwise changed so removing the "customization"
would be a change with no $VERSION bump, which causes
t/porting/cmp_version.t to fail. Sigh.
[DELTA]
$Revision: 2.77 $ $Date: 2015/09/15 13:53:27 $
! Unicode/Unicode.xs Unicode/Unicode.pm
Address RT#107043: If no BOM is found, the routine dies.
When you decode from UTF-(16|32) without -BE or LE without BOM,
Encode now assumes BE accordingly to RFC2781 and the Unicode
Standard version 8.0
https://rt.cpan.org/Public/Bug/Display.html?id=107043
! Makefile.PL encoding.t
Mend pull/42
! Encode.xs Makefile.PL encoding.pm encoding.t
Pulled: precompile 1252 table as that is now the Pod::Simple default
https://github.com/dankogai/p5-encode/pull/42
[DELTA]
$Revision: 2.70 $ $Date: 2015/02/05 10:53:00 $
! Makefile.PL
add bin/encguess to EXE_FILES
2.69 2015/02/05 10:35:11
! bin/encguess
Refactored so that
* does not depend on non-core module (File::Slurp in particular)
* PODified document
* -s "encA encB" to -s encA,encB which is more shell-friendly
* and more
! MANIFEST
+ bin/encguess
Pulled: Added CLI wrapper for Encode::Guess
https://github.com/dankogai/p5-encode/pull/32
! Unicode/Unicode.pm
Pulled: Bump $VERSION in module changed since Encode-2.60
https://github.com/dankogai/p5-encode/pull/31
[DELTA]
$Revision: 2.67 $ $Date: 2014/12/04 20:13:00 $
! t/taint.t
Now skips nonexistent methods like Encode::Detect->encode() should
that be installed. This resolves RT#100105.
https://rt.cpan.org/Ticket/Display.html?id=100105
The recently added Encode 2.60 won't compile with g++, due to assigning
a const char * const pointer to a char* struct field.
The intent of the code itself is a bit unclear, but it appears to be
to set SvPVX as a read-only alias of a const string, using the SvLEN()=0
trick to avoid it being freed.
Fix the g++ builds by casting away the constness, and add some asserts and
comments to make it less unclear what's going on.
Commit dc396cc293 was reverted by 547245703 due to issues under g++.
This commit re-applies the original commit; the next commit will fix those
issues.
-----
This upgrade includes the blead customizations from 080a704606 and
9e9002efd1 (amongst other changes) so that Perl 5.20.0 can ship with an
official CPAN release of Encode.