Revision history for Devel-PPPort 3.60_01 - 2020-09-30 * Fix scanprov * Define PERL_ARGS_ASSERT_CROAK_XS_USAGE when setting croak_xs_usage * Backport ck_warner, ck_warner_d, ckWARN_d, ckWARN_2, ckWARN_3, ckWARN_4, ckWARN2_d, ckWARN3_d, ckWARN4_d * Backport packWARN, packWARN2, packWARN3, packWARN4 * Backport LC_NUMERIC locale handling * Backport SvPVx_nolen_const * Backport MUTABLE_AV, MUTABLE_CV, MUTABLE_GV, MUTABLE_HV, MUTABLE_IO * Backport vwarner * Use PERL_USE_GCC_BRACE_GROUPS * Backport Perl_setlocale * Remove C `register` declaration 3.60 - 2020-08-11 * Restore PERL_BCDVERSION helper which is used on CPAN * A few API elements were not properly found, like IVTYPE 3.59 - 2020-08-10 * Add PERL_VERSION_* compare macros * Rename PERL_BCDVERSION to internal name to discourage future use * Stop versioning generated test files * Enforce strict & warnings * Avoid indirect calls * scanprov: multiple improvements * Use ivers() in tests * Update POD documentation and HACKERS file * Change ppport.h --api-info to not output non-API info unless that is the only match * Find more elements to be listed in the --api-info option (and similar) to ppport.h 3.58 - 2020-03-09 * Safer definition of UVCHR_SKIP * Make sure WIDEST_UTYPE is unsigned * Avoid Pax Header in tarballs 3.57 - 2020-01-31 * Fix eval_sv for Perl versions prior to 5.6.0 (Pali) * Fix t/ppphtest.t for Perl versions prior to 5.6.0 (Pali) * Fix compilation of sv_setsv_flags when GCC extensions are not present (Pali) * Fix SV_NOSTEAL on 5.7.2 (Karl Williamson) * Fix multiple unit test issues (Craig A. Berry, Karl Williamson, Pali) * Avoid generating warnings on early Perls (Karl Williamson) * Backport memCHRs (Karl Williamson) * Implement sv_setsv_flags() with SV_NOSTEAL and SV_GMAGIC flags for Perl versions < 5.7.3 (Pali) * Implement UTF8f format and its UTF8fARG macro (Pali) 3.56 - 2019-11-25 * mktests.PL: use FindBin for INC setup * devel/regenerate: Adjust POD line length * Fix compilation with Visual C++ bugs introduced in 3.55 (Tomasz Konojacki) * Fix mess.t failures when on VC++ when $0 contains backslashes (Tomasz Konojacki) * Fix failing builds on 5.20.[1-3] introduced in 3.55 (Karl Williamson) * Change tests to accept and use Test::More-like functions (Karl Williamson) 3.55 - 2019-11-07 * Fix p5-Text-Xslate on Perl 5.8.5 (Nicolas R) * Fix EBCDIC build problem (Karl Williamson) * Fix isGRAPH_L1() bug (Karl Williamson) * utf8_to_uvchr_buf: Fix error checking on early EBCDICs and proper length (Karl Williamson) * HACKERS: fix typos and clarification (Karl Williamson) * Update bugtracker and repository URLs (Nicolas R) (upstream/urls) * Add warning about UTF-8 unreliable in early perls (Karl Williamson) * Add withinCOUNT and inRANGE (Karl Williamson) * Implement G_RETHROW for eval_sv (Pali) * Backport some isFOO_LC macros (Karl Williamson) * Backport isFOO_LC_utf8_safe() (Karl Williamson) * Backport toFOO_uvchr() (Karl Williamson) * Backport isFOO_uvchr() (Karl Williamson) * Backport isFOO_utf8_safe() macros (Karl Williamson) * Backport toLOWER_utf8_safe and kin (Karl Williamson) * Backport UTF8_MAXBYTES_CASE (Karl Williamson) * Backport UTF8_CHK_SKIP (Karl Williamson) * Backport UTF8_SKIP (Karl Williamson) * Backport UNI to/from NATIVE (Karl Williamson) 3.54 - 2019-09-27 * Fix Unix-format path in Devel::PPPort's Makefile.PL * Fix utf8_to_uvchr_buf for 5.7.0 * Add hint for utf8_to_uvchr() * Fix hints for is_ascii_string * Use numeric comparisons with $] * Fix 'for loops' to work on early perls * Can't use GCC brace groups before 5.4 * Add script to regenerate ppport.fnc * Suppress useless warning * Fix mktests.PL for Perl 5.8.0 * Implement sv_len_utf8_nomg() and sv_len_utf8() * Fix eval_pv for Perl versions prior to 5.31.2 * Consolidate UTF-8 functions/macros into new file * Implement sv_mortalcopy_flags() * Implement newSVsv_flags() * Enable Perl compile-time warnings at all place * Improve Makefile.PL * Add tests for IVdf, UVuf, IV_MAX and UV_MAX 3.53 - 2019-09-27 * Rename PPPort_xs.PL to RealPPPort_xs.PL * Fix compilation issues with version older than 5.010 * Fix compilation issues with version older than 5.010 3.52 - 2019-05-14 * fix utf8_to_uvchr_buf retval in 5.30 3.51 - 2019-05-01 * include the module version in metadata for proper PAUSE indexing 3.50 - 2019-04-30 * Order warn before uv for packWARN (shown in 5.6.1) 3.49 - 2019-04-29 * Fix tests for 64bit int, 32bit ptr platforms 3.48 - 2019-04-28 * Order misc before uv for UNLIKELY (<=5.8.8) 3.47 - 2019-04-27 * re-fix leaky code (used only in tests) 3.46 - 2019-04-26 * Fix the isFOO character type classification macros to work properly on all versions, as follows: * Fixed isALNUM, isALPHA, isDIGIT, isIDFIRST, isLOWER, and isUPPER on very early perls to not be locale-dependent * Fixed isASCII on early perls to work with signed char arguments * Fixed isCNTRL on early perls to know that DEL is a control * Fixed isSPACE on perls before 5.20 to know that VERTICAL TAB is a space * Added isALPHANUMERIC, synonym for isALNUMC * Added isIDCONT, to match legal non-initial characters in an identifier * Added isOCTAL, to match [0-7] * Added isWORDCHAR, synonym for isALNUM * Make all the character classification isFOO macros work on EBCDIC platforms on all versions * Added isFOO_A synonyms for all character classification isFOO macros * Provide LIKELY/UNLIKELY branch prediction * Provide av_tindex/av_top_index * Provide __ASSERT_ for assertions inside macros * Provide UTF8_SAFE_SKIP * Provide my_strnlen() * Provide utf8_to_uvchr_buf() * Replace utf8_to_uvchr() with a safer version * Provide UNICODE_REPLACEMENT 3.45 - 2019-03-19 * Restore missing unit tests from the previous release. 3.44 - 2019-02-20 * Fix D_PPP_FIX_UTF8_ERRSV macro to use errsv value from passed argument 3.43 - 2018-09-19 * Fix Devel::PPPort with Visual Studio by quoting $0. 3.42 - 2018-04-21 * Include 'Changes' (this file) in the distribution. 3.41 - 2018-04-21 * Fix security problem: CWE-134: Use of Externally-Controlled Format String. * Fix WIDEST_UTYPE. * Add the following functions: croak_sv, die_sv, mess_sv, warn_sv, mess, vmess, warn_nocontext, croak_nocontext, croak_no_modify, croak_memory_wrap, croak_xs_usage. * Delist functions listed as deprecated or unstable. * (perl #132876) define API macros on if the NEED_ macro is defined. * (perl #132876) only define croak_xs_usage()'s assert macro if cxu requested. * (perl #132761) updates for older perls. * Do not define PERL_MAGIC_qr more times. * Do not mask Perl_warn_nocontext and Perl_croak_nocontext. (Fixes compile errors on older threaded Perl versions.) * Skip ASCII tests on non-ASCII platforms. * Skip tests invalid on EBCDIC. * Will now compile under C++11. * Documentation improvements. 3.36 - 2017-05-14 * Support Perl 5.26.* which no longer has '.' in @INC 3.35 - 2016-06-17 * Fix compilation in bleadperl by removing a bad test. 3.34 - 2016-06-04 * Fix compilation on Windows with certain compilers. (__attribute__ not recognized. (#GH 36)) 3.33 - 2016-06-03 * Add PERL_OP_PARENT related macros, and cBOOL * Add SvRXOK/SvRX/PERL_MAGIC_qr (Thanks to arc) * sort files from all_files_in_dir (GH #28, https://bugs.debian.org/801523 (Thanks to ntyni) * Fix coverity finding in test (GH #25) (Thanks to jhi) * Add PERL_UNUSED_RESULT and a test (GH #20) * Don't redefine MUTABLE_PTR if it's already there (GH #23) * Add C_ARRAY_LENGTH and C_ARRAY_END (GH #16) * Fix gv_fetchpvn_flags and add gv_init_pvn (#GH 32) (Thanks to leont) * Fix compiler warnings (Thanks to Dave M.) 3.32 - 2015-09-30 * Lexical topic no longer works as of perl 5.23 3.31 - 2015-03-12 * Regen todo files to sync with blead 3.30 - 2015-03-05 * Update typemap to account for STRLEN added in 3.29, which prevented compiling on older Perls 3.29 - 2015-03-05 * Fix issue found by Coverity (Thanks to Dave M. for patch) 3.28 - 2015-01-16 * Update MANIFEST for regened base/todo files 3.27 - 2015-01-13 * Regen base and todo files. * Fix isASCII and isCNTRL for <5.6.0 * Other minor fixups. (Thanks to mhx for all of the work on this release) 3.26 - 2015-01-07 * Silence some warnings on compilation in perl core (Thanks to Dave M. for patches) 3.25 - 2014-12-02 * Add caller_cx (works back to Perl 5.6.0) (Thanks to Ben Morrow for patch) * Silence compiler and coverity warnings (Thanks to jhi for patches) 3.24 - 2014-05-08 * Remove SvREFCNT_dec_NN until it can be implemented properly. (Thanks to bulk88 for reporting GH #10) * Fix GH #11 - compiler warning under clang (Thanks to jhi for reporting it) * Fix GH #12 - compiler warnings (Thanks to jhi for reporting it) 3.23 - 2014-04-12 * Add support for HeUTF8 * Add GetFileContents() to retrieve the contents of the ppport.h file * Update MAX_VER to be 5.20 * Update issue tracker to GitHub 3.22 - 2014-03-19 * Add support for the following API SvREFCNT_dec_NN mg_findext sv_unmagicext * Update META Move bug tracker to github Provide link to repository * Avoid syntax disallowed by C++11 (Thanks to Tony C for the patch) 3.21 - 2013-08-17 * Fix cpan #87870: Merge core perl commit 90b0dc0e2e (Thanks to Father Chrysostomos for the original patch and to Steve Hay for forwarding it) * Fix cpan #86975: Deterministically order API elements in POD (Thanks to Karl Williamson for providing a patch.) * Fix cpan #81796: my $_ is deprecated (Thanks to Nicholas Clark for providing a patch) * Fix cpan #81484: fix isASCII and isCNTRL for inputs > 255 (Thanks to Karl Williamson for providing a patch) * Fix cpan #80314: make use of PERL_NO_GET_CONTEXT the default * Fix cpan #79814: Install to 'site' for perl 5.11+ (Thanks to Robert Sedlacek for providing a patch) * Fix cpan #78271: Need SvPV_nomg_nolen * Adapt buildperl.pl for newer Perl releases * Update masked_versions regex for 5.005 thread builds * Some tweaks needed to support 5.003 on 64-bit platforms 3.20 - 2011-09-10 * fix CPAN #56749: isASCII and isCNTRL macros are buggy (thanks to Karl Williamson for providing a patch and patiently waiting almost two years for me to integrate it) * fix CPAN #70427: RealPPPort.xs:1587: error: lvalue required as unary ‘&’ operand 3.19_03 - 2011-04-13 * keep up with latest core changes 3.19_02 - 2010-03-07 * fix a warning emitted by the test suite with older perls * added support for the following API newSVpvs_share get_cvn_flags get_cvs (thanks to Goro Fuji for providing a patch to implement all of these, fixes CPAN #47174) 3.19_01 - 2010-02-20 * fix CPAN #50763: mistaken use of $[ (thanks to Zefram for spotting this) * remove spurious PUSHMARK from Perl_ppaddr_t (thanks to Gerard Goossen for providing a patch) * improved support for newer compilers in buildperl.pl (thanks to Philippe Bruhat (BooK) for providing a patch) * added support for the following API memEQs memNEs * lots of small toolchain updates 3.19 - 2009-06-14 * updated base/todo files 3.18_01 - 2009-06-12 * fix CPAN #44614: Please support XSBODY * fix CPAN #44655: Please support SVfARG * added support for the following API gv_fetchpvn_flags gv_fetchpvs gv_stashpvs GvSVn HvNAME_get HvNAMELEN_get isGV_with_GP newSV_type PL_error_count PL_in_my PL_in_my_stash SVfARG XSPROTO (thanks to Goro Fuji for providing a patch to implement almost all of these, fixes CPAN #44087) 3.18 - 2009-06-12 * remove MAN3PODS option from Makefile.PL, which is no longer needed (thanks to Nicholas Clark for providing a patch) * adapt mktests.PL for new layout of ext modules in the core 3.17 - 2009-03-15 * rework PTR macros, fixing PTR2ul for 5.6.1 (fixes CPAN #39802, thanks to CHOCOLATE for reporting and providing a patch) * added support for the following API PTR2nat (second part of fix for CPAN #39802) 3.16 - 2009-01-23 * fix DEFSV_set() for threaded 5.005 perls * add G_METHOD support to call_sv() 3.15 - 2009-01-18 * added support for the following API DEFSV_set * fix --unstrip for development versions 3.14_05 - 2008-10-31 * fix stupid bugs in pv_pretty tests (only the tests were broken, ppport.h was find) 3.14_04 - 2008-10-30 * added support for the following API isALNUMC [depend] isASCII isBLANK isCNTRL isGRAPH isPRINT isPSXSPC isPUNCT isXDIGIT PERL_PV_ESCAPE_ALL PERL_PV_ESCAPE_FIRSTCHAR PERL_PV_ESCAPE_NOBACKSLASH PERL_PV_ESCAPE_NOCLEAR PERL_PV_ESCAPE_QUOTE PERL_PV_ESCAPE_RE PERL_PV_ESCAPE_UNI PERL_PV_ESCAPE_UNI_DETECT PERL_PV_PRETTY_DUMP PERL_PV_PRETTY_ELLIPSES PERL_PV_PRETTY_LTGT PERL_PV_PRETTY_NOCLEAR PERL_PV_PRETTY_QUOTE PERL_PV_PRETTY_REGPROP pv_display pv_escape pv_pretty 3.14_03 - 2008-10-21 * fix C++ compilation issue with last release (spotted by Nicholas Clark) * added support for the following API Perl_ppaddr_t Perl_check_t CPERLscope (fixes CPAN #40078) 3.14_02 - 2008-10-12 * added support for the following API my_sprintf PL_linestr PL_bufptr PL_bufend PL_lex_state PL_lex_stuff PL_tokenbuf SvPV_renew (fixes CPAN #39809 and CPAN #39808) * add read/write support for PL_expect PL_copline PL_rsfp PL_rsfp_filters (fixes CPAN #39802) * sync my_snprintf implementation with bleadperl 3.14_01 - 2008-07-11 * resolve CPAN #37451: add PERLIO_FUNCS_DECL and PERLIO_FUNCS_CAST * update API info 3.14 - 2008-06-01 * fix CPAN #36197: filename nit in parse_partspec (thanks to Craig A. Berry for providing a patch) 3.13_03 - 2008-05-13 * fix CPAN #35835: SvPV_flags_const_nolen segfaults prior to perl 5.8.8 3.13_02 - 2008-04-13 * fix NV[efg]f format string macros for perl-5.6.0 built using -Duselongdouble (thanks to Zefram for figuring this out and to Jarkko Hietaniemi for keeping me in sync) * add --patch and --oneshot options to devel/buildperl.pl 3.13_01 - 2008-01-04 * fix dependency detection algorithm for functions * fix some potential memory leaks in the test suite * no need to use *_mg functions for mX?PUSH macros * added support for the following API mPUSHs mXPUSHs newSVpvn_flags newSVpvn_utf8 newSVpvs_flags SVf_UTF8 * make sure soak works with cromfs 3.13 - 2007-10-04 * fix cpan #29748: ppport.h problems with perl5.005_05 (spotted by Slaven Rezić) * fix a compiler warning 3.12 - 2007-09-22 [released without changes] 3.11_06 - 2007-09-11 * fix cpan #29302: Perl_croak_nocontext doesn't need aTHX_ (spotted by Jerry D. Hedden) * fix a Win32 VC++ compiler warning (thanks to Steve Hay for providing a patch) * don't generate redundant specs for provided Perl_ functions * fun with const and casts to avoid compiler warnings * bump max supported version to 5.10.0 3.11_05 - 2007-08-20 * fix: PERL_HASH() was emitting a warning when passed in a const char pointer * fix: sv_magic_portable() was emitting a warning when passed in a const char pointer * fix: make sure arguments to sv_magic_portable() are only evaluated once 3.11_04 - 2007-08-20 * fix: ignore strings and XS comments when scanning and patching files * added support for the following API newSVpvn_share PERL_HASH SvSHARED_HASH * use PERL_BCDREVISION for version checking to save some bytes in ppport.h * improve the --strip option - strip all C comments - strip most superfluous whitespace with these changes, the stripped ppport.h is now almost 30% smaller: 3.11_03 3.11_04 delta ------------------------------------------ uncompressed 87988 62573 -28.9% gzip'd 17985 12725 -29.2% 3.11_03 - 2007-08-14 * fix an infinite recursion in ppport.h that could be triggered by circular dependencies * fix PERL_BCDREVISION, which wasn't BCD but simply shifted decimal (just in time for 5.10) * fix detection of macros that are not listed in the implementation/dontwarn sections 3.11_02 - 2007-08-13 * fix cpan #25372: special case sv_magic(sv, obj, how, name, 0) * fix cpan #27906: [PATCH] add UTF8_MAXBYTES (thanks to Steve Peters for providing a patch) * added support for the following API sv_2pv_flags sv_2pvbyte_nolen SV_CONST_RETURN SV_COW_DROP_PV SV_COW_SHARED_HASH_KEYS SV_GMAGIC SV_HAS_TRAILING_NUL SV_IMMEDIATE_UNREF sv_magic_portable SV_MUTABLE_RETURN SV_NOSTEAL sv_pvn_force_flags SV_SMAGIC SV_UTF8_NO_ENCODING SvPV_const SvPV_flags SvPV_flags_const SvPV_flags_const_nolen SvPV_flags_mutable SvPV_force SvPV_force_flags SvPV_force_flags_mutable SvPV_force_flags_nolen SvPV_force_mutable SvPV_force_nolen SvPV_force_nomg_nolen SvPV_mutable SvPV_nolen_const SvPV_nomg_const SvPV_nomg_const_nolen SvUOK UTF8_MAXBYTES * provide compatibility macros for vanished variables PL_expect, PL_copline, PL_rsfp, PL_rsfp_filters * add warnings support to ppport.h * update ppport.h file searching logic * add -c.inc and -xs.inc to the list of supported extensions * document that --copy doesn't include the dot * improve soak script and devel/buildperl.pl 3.11_01 - 2007-03-23 * added support for the following API PL_expect load_module vload_module (thanks to Nicholas Clark for providing a patch) 3.11 - 2007-02-14 * happy new year! 3.10_02 - 2006-12-02 * add two missing files 3.10_01 - 2006-12-02 * fix cpan #21239: Signals safe in Perl 5.8.0 * fix PL_ppaddr and PL_no_modify support 5.005 perls * added dTHXR, aTHXR and aTHXR_ for API that need the context argument in pre-5.6.0 perls * added support for the following API PL_DBsignal PL_DBtrace PL_laststatval PL_statcache * added tests for all PL_* variables * added progress indicator to soak script * added --test-archives option to buildperl.pl script * added comments to all autogenerated files that clearly indicate their purpose and origin 3.10 - 2006-08-14 * remove timestamp from generated ppport.h 3.09_02 - 2006-07-25 * added support for the following API my_strlcat my_strlcpy (thanks to Steve Peters for providing a patch) 3.09_01 - 2006-07-21 * avoid using 'glob' when running under miniperl 3.09 - 2006-07-08 * fix Makefile.PL's c_o override * update API info * improve soak script - now counts warnings emitted during testing - output is colored (can be turned off) * add a section on integrating this module into the core to the HACKERS file 3.08_07 - 2006-07-03 * fix cpan #20179: Licensing information for PPPort is unclear * only --unstrip a stripped ppport.h if an appropriate version of Devel::PPPort is installed * add a --version option to ppport.h 3.08_06 - 2006-06-25 * fix breakage on MSWin32, where generating XS files on the fly doesn't seem to work the same way as under Linux (thanks to Sadahiro Tomoyuki for providing a patch) * load the shared files only when testing the module * remove PPPort.xs from CPAN distribution 3.08_05 - 2006-06-23 * when in the core, generate PPPort.pm and PPPort.xs automatically * PPPort.pm can now be loaded by miniperl 3.08_04 - 2006-05-29 * update API info * fix a bug in the automated API info generator that caused slightly wrong output * improve the speed of the automated API info generator; we're now down from several hours to a few minutes 3.08_03 - 2006-05-25 * update API info * add devel/regenerate script to regenerate API info * improve and speed up the development tools 3.08_02 - 2006-05-22 * fix a POD error * added POD test * changed hv_stores() to omit the hash parameter * improve soak script - can now search directories for perl executables - can use only perl binaries of at least a certain revision using the --min option - sorts tests by perl version - shows a summary of failed versions * added support for the following API PERL_USE_GCC_BRACE_GROUPS PoisonFree PoisonNew PoisonWith SvREFCNT_inc SvREFCNT_inc_NN SvREFCNT_inc_simple SvREFCNT_inc_simple_NN SvREFCNT_inc_simple_void SvREFCNT_inc_simple_void_NN SvREFCNT_inc_void SvREFCNT_inc_void_NN 3.08_01 - 2006-05-20 * update NOOP and dNOOP to include lint directives * update API info (for 5.8.8 and 5.9.3) * added support for the following API ckWARN dVAR hv_fetchs hv_stores my_snprintf newSVpvs packWARN PERL_ABS PERL_UNUSED_ARG PERL_UNUSED_CONTEXT PERL_UNUSED_VAR STR_WITH_LEN sv_catpvs sv_setpvs SVf SvVSTRING_mg warner 3.08 - 2006-01-19 * thanks to Craig Berry for fixing my broken ppphtest * add AUTHOR and ABSTRACT_FROM to Makefile.PL 3.07 - 2006-01-16 * improve internals documentation in HACKERS * minor internal cleanups * thanks to Steve Peters for adding support for the following API SvMAGIC_set SvPVX_const SvPVX_mutable SvRV_set SvSTASH_set SvUV_set 3.06_04 - 2005-10-30 * add --strip / --unstrip options * added support for the following API Newx Newxc Newxz XSRETURN 3.06_03 - 2005-10-18 * fix extra ')' in PPPort_pm.PL * fix compiler warnings * fix test for PL_signals * fix API listing * more tests 3.06_02 - 2005-10-18 * improve devel/buildperl.pl utility * added support for the following API dAXMARK PL_signals PERL_SIGNALS_UNSAFE_FLAG XSprePUSH 3.06_01 - 2005-06-25 * fix --compat-version argument checking * filter files passed on the command line by default to make sure 'perl ppport.h *' does something useful * add --nofilter option to override the filtering * testsuite now hopefully supports MacOS Classic * check definedness of PERL_UNUSED_DECL * update API info 3.06 - 2005-02-02 * fix cpan #11327: make fails with syntax error * fix XCPT_* macros 3.05 - 2005-01-31 * fix a test for SvPV_nolen * add more examples to tht documentation * improve wording baseline information * added support for the following API dXCPT dXSTARG XCPT_CATCH XCPT_RETHROW XCPT_TRY_END XCPT_TRY_START 3.04 - 2004-12-29 * fix a hint for sv_pvn_force * fix VMS problem with unquoted command line arguments not preserving case (perl change #23367) * add --api-info switch for ppport.h 3.03 - 2004-09-08 * MY_CXT_CLONE was broken 3.02 - 2004-09-08 * added support for the following API: END_EXTERN_C EXTERN_C MY_CXT_CLONE PERL_GCC_BRACE_GROUPS_FORBIDDEN START_EXTERN_C STMT_END STMT_START 3.01 - 2004-08-23 * patchlevel.h tweak 3.00_03 - 2004-08-20 * make sure the @INC path is kept up-to-date when changing directories while running in the core test suite 3.00_02 - 2004-08-19 * remove PPPort.pm and PPPort.xs dependencies from Makefile.PL, as they can be rebuilt with a "make regen" when neccessary 3.00_01 - 2004-08-17 * fixed problems with $^X in t/ppphtest.t when building in the core on OpenBSD * fixed a "duplicate dependencies" bug that could lead to global NEED_'s where static NEED_'s are sufficient * added support for the following API: PL_DBsingle PL_DBsub PL_debstash PL_diehook PL_errgv PL_no_modify PL_perl_destruct_level PL_ppaddr PL_stack_sp PL_sv_arenaroot PL_tainted PL_tainting PUSHu sv_catpvf_mg sv_catpvf_mg_nocontext sv_setpvf_mg sv_setpvf_mg_nocontext sv_vcatpvf sv_vcatpvf_mg sv_vsetpvf sv_vsetpvf_mg vnewSVpvf XPUSHu 3.00 - 2004-08-16 * added support for dAX and dITEMS, which got lost while working on the 3.00 internals 2.99_07 - 2004-08-13 * improve/check documentation * add tests for CopFILE and CopSTASHPV * add file headers * some code cleanups 2.99_06 - 2004-08-11 * --compat-version now considers all macros/functions provided by Devel::PPPort, not only the documented API * fixed: PL_rsfp was PL_rsfpv * turn __PPPORT_NAME__ back to ppport.h, because the former looks ugly on search.cpan.org 2.99_05 - 2004-08-10 * --compat-version now also hides compatibility warnings for unsupported API calls 2.99_04 - 2004-08-10 * added code to check for correct INSTALLDIRS * added --compat-version option to ppport.h script to only check for compatibility with at least the given Perl version * some small adjustments 2.99_03 - 2004-08-09 * remove useless dependency from Makefile.PL (spotted by Craig A. Berry) * added checking for and replacement of C++ comments as well as --cplusplus option to suppress it to ppport.h script * added more diagnostic output to ppport.h script * added a hint for gv_stashpvn * fixed the thread tests (spotted by Craig A. Berry) * added more tests * renamed and documented DPPP_NAMESPACE * renamed some files 2.99_02 - 2004-08-08 * second beta * feature complete for 3.00 * implemented missing functionality for ppport.h script: - can now perform global (i.e. multi-file) NEED_ checks - checks source for missing aTHX arguments - checks source for unsupported API calls - can now lists provided and unsupported API - can use Text::Diff on platforms without diff utility - can use custom diff utility / options - can write one patch against the module - can write single copies with changes applied * updated the documentation for Devel::PPPort and ppport.h * added lots of tests for the ppport.h script * merged tests for call_* eval_* from XS::APItest * added HACKERS file to document internals * now includes PPPort.pm, so you can read the full docs using search.cpan.org 2.99_01 - 2004-08-07 * first beta towards 3.00 * complete rework of internals * autogenerated API-checks * autogenerated .pm, .xs and .t files * ppport.h changes: - no static/global functions without explicit NEED_ - can now be run without -x - now shows hints and dependencies - now has POD documentation, so perldoc ppport.h works - now has options - now uses File::Find when available * tested with multi-threaded (ithreads and 5.005-threads) perls from 5.005 and single-threaded perls from 5.003 up to 5.9.x * added support for the following API: CopFILE CopFILEAV CopFILEGV CopFILEGV_set CopFILE_set CopFILESV CopSTASH CopSTASH_eq CopSTASHPV CopSTASHPV_set CopSTASH_set CopyD dUNDERBAR IN_PERL_COMPILETIME IV_MAX IV_MIN IVTYPE memEQ memNE MoveD mPUSHi mPUSHn mPUSHp mPUSHu mXPUSHi mXPUSHn mXPUSHp mXPUSHu newCONSTSUB newSVuv PERL_INT_MAX PERL_INT_MIN PERL_LONG_MAX PERL_LONG_MIN PERL_QUAD_MAX PERL_QUAD_MIN PERL_SHORT_MAX PERL_SHORT_MIN PERL_UCHAR_MAX PERL_UCHAR_MIN PERL_UINT_MAX PERL_UINT_MIN PERL_ULONG_MAX PERL_ULONG_MIN PERL_UQUAD_MAX PERL_UQUAD_MIN PERL_USHORT_MAX PERL_USHORT_MIN PL_hexdigit PL_rsfp Poison PUSHmortal sv_2pvbyte sv_2pvbyte_nolen sv_2pv_nolen sv_2uv sv_catpv_mg sv_catpvn_mg sv_catpvn_nomg sv_catsv_mg sv_catsv_nomg SvGETMAGIC SvIV_nomg SvPV_force_nomg sv_pvn sv_pvn_force sv_pvn_nomg SvPV_nomg sv_setiv_mg sv_setnv_mg sv_setpv_mg sv_setpvn_mg sv_setsv_mg sv_setsv_nomg sv_setuv sv_setuv_mg sv_usepvn_mg sv_uv SvUV SvUV_nomg SvUVx SvUVX SvUVXx UNDERBAR UV_MAX UV_MIN UVTYPE XPUSHmortal XSRETURN_UV XST_mUV ZeroD 2.008 - 20th October 2003 * eval_(pv|sv) added * PERL_MAGIC_* added 2.007 - 18th September 2003 * small fix in grok_numeric_radix: variable was used uninitialized 2.006 - 8th September 2003 * call_(pv|sv|method|argv) added * still compiler-warnings for grok_??? and 5.6.x, fixed 2.005 - 2nd September 2003 * Some tweaks to grok_(hex|oct|bin) to make compiler warnings go away for older perls * grok_number and grok_numeric_radix added 2.004 - 22th August 2003 * Added grok_(hex|oct|bin) and related constants 2.003 - 8th May 2003 * Added get_av, get_cv, get_hv and get_sv 2.002 - 2nd December 2001 * More portability issues in Makefile.PL addresed. * Merged the Harness sub-module into Devel::PPPort * More documentation in PPPort.pm 2.001 * Some portability issues in Makefile.PL addresed. 2.000 * Initial port to the perl core. 1.007 * Original version of the module by Kenneth Albanowski.