The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 3.60_02 - 2020-10-07

  • 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

Documentation

Devel::PPPort internals for hackers
Perl/Pollution/Portability
build/install perl distributions
Automatically regenerate Devel::PPPort's API information
Perl/Pollution/Portability version __VERSION__
Test Perl modules with multiple Perl releases