Revision history for Perl extension Params-Util

1.103_001	2026-05-01
	- fix #3 / RT#75561: XS variants of _HASH/_HASH0/_ARRAY/_ARRAY0
	  now reject blessed references, matching the documented "raw and
	  unblessed" contract and the pure-perl behaviour. Thanks to
	  Guillaume Aubert (AUBERTG) for the original RT report (2012),
	  Paul Cochrane (PCOCHRANE) for tests and patches (2014), Ricardo
	  Signes (rjbs) for confirming the PP code is the reference (2024),
	  and Matthew Horsfall (@wolfsage) for the GitHub re-report.
	- fix RT#141940: declare `parent` as a runtime prerequisite.
	  lib/Params/Util.pm uses `use parent qw{Exporter XSLoader}` but
	  parent was only listed in CONFIGURE_REQUIRES; on Perls older
	  than 5.10.1 it is not core and must be pulled in at install time.
	- fix duplicate `requires` key in the test prereqs hash in
	  Makefile.PL that silently dropped Test::More and Storable from
	  the META develop section.
	- update ppport.h from Devel::PPPort 3.73
	- replace Travis-CI configuration with GitHub Actions: Linux matrix
	  (Perl 5.30..5.42) running in perldocker/perl-tester containers,
	  plus host-runner jobs on macOS-latest and Windows-latest with
	  Strawberry to verify XS builds under clang and MSVC.
	- add Docker-based devcontainer setup (.devcontainer + docker-compose)
	  for local multi-Perl testing without installing Perl on the host.
	- author tests: suppress Bangs::ProhibitNumberedNames for the
	  intentionally-named _SCALAR0/_ARRAY0/_HASH0/_SET0 predicates,
	  fix minor perltidy formatting in Makefile.PL and t/driver/.

1.102	2020-11-02
	- fix RT#133623 - Can't install in pureperl mode. Thanks to Nigel
	  Gregoire (@nfg) for reporting and proposal for proper fix.
	- update ppport.h from Devel::PPPort 3.62

1.101	2020-10-22
	- fix inconsistent license conditions in meta data and documentation
	  and add appropriate LICENSE files. Fixes RT#133586.

1.100	2020-10-21
	- Re-release 1.099_001 without further changes

1.099_001	2020-10-01
	- refactor tooling to get reasonable author tests and
	  code/distribution quality checks (fixes RT#109106 - thanks
	  to Alexandr Ciornii (CHORNY) for reporting -- and fixes RT#81924:
	  obsolete section in Makefile.PL? - thanks to Sam Ferencik and
	  Paul Cochrane for reporing and contribution)
	- seaparate PP code into dedicated module
	- fix spelling errors (including RT#115910 - thanks to
	  Salvatore Bonaccorso (CARNIL) for reporting -- and RT#86356 -
	  thanks to D. Steinbrunner for reporing and sorry Paul for fixing
	  it during adding new author tests)
        - fix RT#87649 (_CLASS) and RT#81276 (_POSINT) plus similar fixes
	  for _STRING, _IDENTIFIER, _NUMBER and _NONNEGINT - thanks to
	  Bernhard Graf (GRAF) and victor@vsespb.ru for reporting and
	  Paul Cochrane <paul@liekut.de> for submitting initial patches.
	- fix RT#79995: Please mention _INSTANCEDOES in Changes (and _CLASSDOES)
	- fix RT#79856: Build breaks in 1.07
	- 

1.07	2012-03-11
	- Disable XS version on cygwin as it shows bizarre behaviour
	  that breaks form when using Params::Util XS verwion.

1.06	2012-03-01
	- Remove the need for the sanexs.c file by generating into a temp
	  file instead.

1.05	2012-03-01
	- Restore compatibility with pre-5.8.8 Perls without a working
	  compiler available install time (RIBASUSHI)
	- Added _CLASSDOES and _INSTANCEDOES

1.04	2011-04-20
	- Fixed #67522 have_compiler returns

1.03	2010-11-22
	- No CPAN Testers failures, moving to production release

1.02_01	2010-09-16
	- Trying for a much more advanced can_xs() alternative to can_cc()
	  to deal with the situation where a host has a superficially
	  working compiler, but completely screwed up headers.
	- Adding some fallback strategies to deal with cases where these
	  same machines don't support configure_requires.
	- Adopt Chorny's eumm-upgrade style for the Makefile.PL.
	- Allow the Makefile.PL to build it's own META.yml now.

1.01	2010-03-18
        - Fixed can_cc() bug in Makefile.PL where it was checking an existence
          of PATH directory rather than executables. RT#55668 (DGOLDEN, MIYAGAWA)

1.00	2009-03-31
	- Now all known XS bugs are worked out, I've removed
	  the experimental flags and set that as the first 1+ release.
	- Fixed XS implementation of _*LIKE and _INSTANCE
	- Added test for a negative custom isa returning ('')
	- Improving the 'clean' file list in a Makefile.PL

0.38	2009-02-17
	- Fix _IDENTIFIER to return false for "foo\n" (ZEFRAM)
	- Fix _CLASS to return false for "foo\n" (ZEFRAM)

0.37	2009-02-04
	- Fix _HASH for bleadperl (patch from RAFL)
	- Fix regex (more) for bleadperl (patch from RAFL)

0.36	2009-01-30
	- Fixing the overload for _REGEX
	- Adding the tests for _REGEX
	- Reorganising the Makefile.PL
	- Adding duplicate tests for when the XS version isn't compiled

0.35	2008-11-11
	- No changes
	- CPAN Testers results look good, moving to production version

0.34_01	2008-11-03
	- Adding experimental XS implementation by the awesome Jens Rehsack

0.33	2008-05-27
	- Upgrading to Module::Install 0.74
	- Bumping Scalar::Util version to 1.18 to get a fixed better looks_like_number
	- Moved B driver test class to My_B to prevent collision with the B modules

0.32_01	2008-02-23
	- Moving 01_compile.t minimum version to 5.005 to match Makefile.PL
	  (Resolves rt.cpan.org #26674)
	- Removing the deprecated _CALLABLE function

0.31	2007-11-14
	- Upgrading to Module::Install 0.68

0.30	2007-10-22
	- Incremental release to get a newer and non-broken version of the
	  author-only tests.

0.29	2007-08-23
	- Correcting a test which only ran under AUTOMATED_TESTING,
	  apparently my release automation isn't doing what I think
	  it is doing.

0.28	2007-08-18
	- Dropping the Perl version requirement in 01_compile.t to 5.004

0.27	2007-08-18
	- Skipping one particularly evil test that we know fails on a few OS
	  unless AUTOMATED_TESTING is enabled.
	  These failures weren't worth preventing installation at all.

0.26	2007-07-27
	- Adding the _NONNEGINT function

0.25	2007-05-14
	- Adding the _CLASSISA and _SUBCLASS functions to fill
	  a gap between _CLASS and _DRIVER

0.24	2007-05-09
	- Adding the _DRIVER function for use in writing driver APIs

0.23	2007-02-20
        - Bug fix to _INVOCANT to handle false classes.

0.22	2006-11-01
	- Bug fix to _CODELIKE to handle CODE refs properly
	- Updating tests to work more accurately in this regard.

0.21	2006-10-10
	- When no compiler available, minimise the dependency on Scalar::Util,
	  because it's better to leave them with a slightly leaky version
	  than to fail altogether.

0.20	2006-09-26
	- Advanced deprecation of _CALLABLE to "warn but work".
	- Correctly refer to _CALLABLE being deprecated, not _CODELIKE.
	- Add support for Tie::Handle objects to _HANDLE
	- Add support for IO::Scalar objects to _HANDLE
	- Add support for IO::String objects to _HANDLE

0.19	2006-09-14
	- Adding more Scalar::Util tests, this time with some diagnostics

0.18	2006-09-14
	- Explicitly importing refaddr in t/07_handle.t to fix
          test failure on ActivePerl 5.8.0.
	- Increased Scalar::Util dep to 1.14 because we may well
	  be hurt by tied handles-related bug.

0.17	2006-08-08
	- Adding experimental _HANDLE implementation

0.16	2006-07-02
	- We don't check for stash definedness for _INVOCANT.
	  (This is required for 5.005 compat.)

0.15	2006-07-02
	# This release contains only build-time changes
	- Updating to Module::Install 0.63 to add 5.004 support (sorta)
	- Dropping version dependency to 5.004 (Ricardo Signes)

0.14	2006-05-10
	- No features() used in this dist, so removing auto_install
	- Moved _CALLABLE to _CODELIKE for symmetry reasons. Sorry :(
	  Immediate doc changover. Silent alias for a month, then
	  warning alias for 3 months, then full deprecation at the end
	  of August.
	- Removed RJBS's use warnings that broke 5.005-compatibility.
	- Other minor test cleanups.

0.13	2006-05-07
	# This release contains only build-time changes
	- Upgrading Module::Install to 0.62 final

0.12	2006-05-01
	- Added _ARRAYLIKE and _HASHLIKE (Ricardo Signes again)
	- Added _INVOCANT (Ricardo Signes again!)
	- Expanded test suite (Does Ricardo Signes ever sleep??)

0.11	2006-04-12
	- Update _CLASS to allow numeric parts in the tail, like Foo::10
	  (provided by Ricardo Signes)

0.10	2006-01-14
	- Updated copyright
	- Added _STRING

0.09	2005-12-30
	- Fixed broken link to RT in POD

0.08	2005-12-19
	- Moved from old CVS repository to newer SVN repository
	- Added _CALLABLE (provided by Ricardo Signes)

0.07	2005-10-10
	- Adding the :ALL tag

0.06	2005-10-05
	- Rereleasing with newer Module::Install that correctly
	  includes ExtUtils::AutoInstall.

0.05	2005-05-02
	- Added _POSINT

0.04	2005-04-27
	- Fixed a POD bug in the synopsis

0.03	2005-04-24
	- Added the _CODE function

0.02	2005-04-22
	- Added the _CLASS function

0.01	2005-04-22
	- Completed the first implementation
