Revision history for Perl extension Safe::Hole. 0.17 Mar 24 2026 [Improvements] - Remove dead Exporter code (unused @ISA, @EXPORT, @EXPORT_OK) from Hole.pm (PR #17) - Narrow `no strict` to `no strict 'vars'` in AUTOLOAD wrapper for tighter safety (PR #17) - Regenerate README and README.md from current POD to include typo fixes from PR #13 (PR #15) [Maintenance] - Add AI_POLICY.md documenting how AI tools are used in this project - Update .gitignore for ExtUtils::MakeMaker build artifacts after the Module::Build conversion in PR #10 (PR #16) - Remove stale "To do" placeholder in t/01-hole.t — object wrapping tests already exist in t/02-wrap-objects.t (PR #17) 0.16 Mar 22 2026 [Bug Fixes] - Fix POD typos: "dinamically" → "dynamically", "occured" → "occurred", "constrtucted" → "constructed", "refered" → "referred to", "assuption" → "assumption" (PR #13) [Improvements] - Switch from DynaLoader to XSLoader for faster, simpler XS loading (PR #14) - Modernize Hole.pm preamble: use 'use 5.014' instead of 'require 5.005', add 'use warnings', replace 'use vars' with 'our' declarations (PR #13) [Maintenance] - Reformat changelog for consistent style and fix historical typos 0.15 Mar 20 2026 [Bug Fixes] - Preserve $@ across Safe::Hole::call eval to prevent error swallowing when an undefined subroutine is called with a wrapped object argument (GH #1, PR #2) - Fix "Use of uninitialized value $typechar" warnings when wrap() is called without $cpt/$name arguments (PR #2) [Improvements] - Setup CI with GitHub Actions testsuite covering Linux, macOS, and Windows across multiple Perl versions (GH #4, PR #5) - Fix CI dependency installation by adding cpanfile and using cpm to install Module::Build (GH #6, PR #7) - Convert build system from Module::Build (Build.PL) to ExtUtils::MakeMaker (Makefile.PL) (GH #8, PR #10) - Fix XS compilation warnings on macOS: add parentheses around assignment-as-condition and replace deprecated GIMME with GIMME_V (GH #9, PR #11) [Maintenance] - Switch to Devel::PPPort for portability - Bump minimum Perl version to 5.14 - Stop tracking META files in the repository - Add comprehensive object wrapping tests (PR #3) - Add regression tests for undefined subroutine error reporting (GH #1, PR #12) 0.14 April 13 2018 - Update issue tracker to github - Tidy all the things - README.md for github 0.13 May 5 2010 - Remove Makefile.PL. M::B compatibility just doesn't work as expected and breaks on smokers 0.12 May 4 2010 - Hide Safe::Hole::User from CPAN by moving the package name onto a different line 0.11 May 4 2010 - Re-structure module to more modern layout. Convert to M::B - Re-factor tests to Test::More - Pod fixes now we're testing them - Clean up authors and generate proper META.yml - Fix 5.10 deprecation of defined %hash. Just use %hash to the same effect. 0.10 Fri Jan 16 2004 - Don't local(*INC} unless $self->{INC} - This version by Brian McCauley 0.09 Thu Jan 15 2004 - Catch and re-throw exceptions (not doing so seems to cause segfault sometimes) - Restore opmask, %INC and @INC (default backward-compatible mode inhibits this) - test.pl now has some real tests - Safe::Hole::User namespace so that Carp can do the right thing - This version by Brian McCauley 0.08 Wed Jan 17 2001 - License under the GPL 0.07 Wed Oct 4 2000 - AUTOLOAD does not delegate DESTROY 0.06 Mon Jul 10 2000 - Wrapped package name includes hole'd package name 0.05 Mon Jul 10 2000 - 1 security bug (wrapped object contains hole object as public hash value) fixed - AUTOLOAD of wrapped package is defined only once 0.04 Thu Jun 8 2000 - Add 'require 5.005;' - 1 bug fixed in new() 0.03 Mon Nov 15 1999 - Change global stash. 0.02 Mon Nov 1 1999 - wrap() method added. 0.01 Thu Oct 21 1999 - Original version; created by h2xs 1.18