Revision history for Devel-PPPort

3.68 - 2022-03-18

 * fix newSVsv_flags: rename variable to fix C++ compilation issue
 * Update dNOOP definition for Perl < 5.27.7

3.67 - 2022-03-08

  * fix utf8.t with recent development versions of Perl
  * utf8_to_uvchr_buf: Workaround bugs in Perl (BBC)
  * v5.35.9 was returning an incorrect value
  * fix dereference empty string

3.66 - 2022-03-02

  * Fix corrupted release (missing files)

3.65 - 2022-03-02

  * Enable AppVeyor CI
  * Fix CROAK_IF_ERROR without BRACE GROUPS
  * Refactor to use static inline function in multiple parts/inc
  * devel/regenerate: Add --skip-devels option
  * Don't list has_builtin as being provided

3.64 - 2022-02-01
  * Fix: better support for STMT_START / STMT_END definition
  * Fix: Only use '-Wdeclaration-after-statement' if possible
  * 5.55.2 functions: av_fetch_simple, av_store_simple, voidnonfinal
  * 5.33 functions: pack_cat, pad_compname_type
  * apicheck.pl: multiple improvements & code refactor for regenerating files

3.63 - 2021-07-06
  * Backport SvPVCLEAR
  * Backport ASSUME
  * Backport NOT_REACHED
  * Backport G_LIST
  * various internal changes

3.62 - 2020-10-16
  * Restore missing PPPort.pm
  * Fix metaCPAN indexing

3.61 - 2020-10-12
  * 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
  * Remove C `register` declaration
  * Implement return value for newCONSTSUB()

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.
