diff options
Diffstat (limited to 'Changes')
-rw-r--r-- | Changes | 336 |
1 files changed, 336 insertions, 0 deletions
@@ -0,0 +1,336 @@ +2.00 2014-11-01 + +[BACKWARDS INCOMPATIBILITIES] + +- The no_refs constructor parameter is now deprecated, and has been replace by + a new unsafe_ref_capture parameter that defaults to false, meaning no + references are captured by default. Capturing references by default caused + too many issues that couldn't be worked around, including running DESTROY + blocks multiple times on captured objects in the worst case. + +- Removed support for the long-deprecated no_object_refs constructor parameter + (deprecated in 2002!). + + +1.34 2014-06-26 + +- Fixed use of // operator (my use, not Graham's) in previous release. + + +1.33 2014-06-26 + +- Added a skip_frames option. This causes the stack trace to skip an arbitrary + number of frames. Patch by Graham Knopp. PR #5. + + +1.32 2014-05-05 + +- Added a filter_frames_early option to filter frames before arguments are + stringified. Added by Dagfinn Ilmari Mannsåker. PR #4. + + +1.31 2014-01-16 + +- No code changes, just doc updates, including documenting the as_string() + method in Devel::StackTrace::Frame. Requested by Skef. RT #91575. + + +1.30 2012-11-19 + +- There was an eval which did not first localize $@ and $SIG{__DIE__}. This + broke Plack::Middleware::StackTrace (and possibly other tihngs). + + +1.29 2012-11-16 + +- The Devel::StackTrace->frames() method is now read-write. This allows you to + do more complex filtering of frames than is easily possible with the + frame_filter argument to the constructor. Patch by David Cantrell. + + +1.28 2012-11-16 + +- Allow arguments to a trace's as_string method, specifically max_arg_length + Patch by Ricardo Signes. + +- Added a no_args option to the constructor in 1.26 but forgot to mention it + in Changes. Requested by Scott J. Miller. RT #71482. + + +1.27 2011-01-16 + +- Skip some tests on 5.13.8+ that are no longer relevant because of a change + in the Perl core. Reported by Andreas Koenig. RT #64828. + + +1.26 2010-10-15 + +- The as_string method did not localize $@ and $SIG{__DIE__} before doing an + eval. Reported and tested by Marc Mims. RT #61072. + + +1.25 2010-09-06 + +- Devel::StackTraceFrame was not actually subclassing + Devel::StackTrace::Frame. Patch by Tatsuhiko Miyagawa. + + +1.24 2010-09-03 + +- Version 1.23 was missing a $VERSION assignment. Reported by Sergei + Vyshenski. + +- Moved the frame object to its own file, and renamed it + Devel::StackTrace::Frame. The old package name, Devel::StackTraceFrame, is + now a subclass of the new package, to provide a backwards compatibility + shim. + + +1.23 2010-08-27 + +- Added message and indent constructor parameters. Based on a patch by James + Laver. RT #59830. + + +1.22 2009-07-15 + +- Apparently, overload::StrVal on older Perls (5.8.5, but not 5.8.8) + tried to call a stringification method if it existed. So now, + Devel::StackTrace just uses overload::AddrRef instead, which should + always be safe. Reported by Michael Stevens. Fixes RT #47900. + + +1.21 2009-07-01 + +- Overloaded objects which didn't provide a stringification method + cause Devel::StackTrace to die when respect_overload was + true. Reported by Laurent Dami. RT #39533. + +- Added a frame_filter option which allows for fine-grained control + over what frames are included in a trace. Based on (but expanded) + from a patch proposed by Florian Ragwitz. RT #47415. + + +1.20 2008-10-25 + +- The change in 1.15 to object creation broke the no_refs feature, + causing references to be stored until the trace's frame objects were + created. + +* Exception::Class objects are always stringified by calling + overload::StrVal(). + + +1.1902 2008-07-16 + +- This release just contains another test fix. + +- The new tests for bad utf-8 apparently fail with any Perl before + 5.8.8. Reported by Lee Heagney. RT #37702. + + +1.1901 2008-06-13 + +- This release just contains a test fix. + +- The new tests for bad utf-8 fail with Perl 5.8.x where x <= + 6. Apparently, utf-8 was just more broken back then. Reported by + Andreas Koenig's smokebots. + + +1.19 2008-06-13 + +- Dropped support for Perl 5.005. + +- If a function was in stack trace had been called with invalid utf-8 + bytes, this could cause stringifying a stack trace to blow up when + it tried to stringify that argument. We now catch those (and other) + errors and simply put "(bad utf-8)" or "?" in the stringified + argument list. Reported by Alex Vandiver. + + +1.18 2008-03-31 + +- Fix a test failure on Win32. No changes to the non-test code. + + +1.17 2008-03-30 + +- Added a max_arg_length parameter, which if set causes + Devel::StackTrace to truncate long strings when printing out a + frame. RT #33519. Patch by Ian Burrell. + + +1.16 2008-02-02 + +- A test fix for bleadperl. The value of wantarray from caller() needs + to be treated as a boolean, as opposed to expecting 0 (vs + undef). RT #32583. Patch by Jerry Hedden. + + +1.15 2007-04-28 + +- Changed how objects are created in order to greatly speed up the + constructor. Instead of processing all the stack trace data when the + object is first created, this is delayed until it is needed. This + was done in order to help speed up Exception::Class. There are cases + where code may be throwing many exceptions but never examining the + stack traces. + + Here is a representative benchmark of object construction for the + old code versus the new code: + + Rate old new + old 1764/s -- -76% + new 7353/s 317% -- + + +1.14 2007-03-16 + +- Added a few micro-optimizations from Ruslan Zakirov, who is hoping + this will ultimately help speed up RT. + + +1.13 2006-04-01 + +- Add another fix for filename handling in the tests. Tests were + giving false failures on Win32 because the tests needed to use + File::Spec->canonpath(), just like Devel::StackTrace does + internally. + + +1.12 2005-09-30 + +- Newer versions of Perl use Unix-style filenames when reporting the + filename in caller(), which breaks Exception::Class tests on other + platforms, and is just kind of funky. This module now calls + File::Spec->canonpath() to clean up the filename in each frame. + Reported by Garret Goebel. + + +1.11 2004-04-12 + +- No code changes, just switching to including a Makefile.PL that uses + ExtUtils::MakeMaker instead of one that sneakily uses Module::Build. + Requested by Perrin Harkins. + + +1.10 2004-03-10 + +- Silence a warning from the test code if Exception::Class isn't + installed. Reported by Stefano Ruberti. + +- Localize $@ to avoid overwriting a previously set $@ while creating + a Devel::StackTrace object. This caused a test failure in the + Exception::Class tests when run with Perl 5.6.1, but not with 5.8.3. + I don't really know how to test for it outside of Exception::Class. + Reported by Jesse Erlbaum. + + +1.09 2004-02-26 + +- The overload workaround blows up if a DBI handle is anywhere in the + stack, because of a bad interaction between overload::Overloaded and + DBI's custom dispatching. This release works around that. + + +1.08 2004-02-23 + +- Some tests failed on Win32 because they were hardcoded to expect a + file name with forward slashes. Reported by Steve Hay. + + +1.07 2004-02-21 + +- This release includes a change to the overload handling that is + necessary for cooperation with Exception::Class. + + +1.06 2004-02-21 + +- Devel::StackTrace now uses overload::StrVal() to get the underlying + string value of an overloaded object when creating a stack frame for + display. This can be turned off by setting respect_overload to a + true value. Suggested by Matt Sisk. + + +1.05 2004-02-17 + +- Devel::StackTrace incorrectly reported that arguments were being + passed to eval blocks (which isn't possible). Reported by Mark + Dedlow. + + +1.04 2003-09-25 + +- The special handling of Exception::Class::Base objects was broken. + This was exposed by the fact that Exception::Class 1.15 now uses + Devel::StackTrace in a slightly different way than it did + previously. + + +1.03 2003-01-22 + +- Special handling of Exception::Class::Base objects when stringifying + references. This avoids infinite recursion between the two classes. + + +1.02 2002-09-19 + +- Forgot to add Test::More to PREREQ_PM for previous releases. + + +1.01 2002-09-18 + +- Change the "no object refs" feature to be a plain old "no refs" + feature. As was pointed out to me by Jean-Phillippe Bouchard, a + plain reference (to an array, for example), can easily hold + references to objects internally. And since I'm not going to bother + descending through nested data structures weeding out objects, this + is an easier way to handle the problem. Thanks to Jean-Phillippe + Bouchard for a patch for this as well. + + The "no_object_refs" parameter is deprecated, and now does the same + thing as the "no_refs" parameter. + + +1.00 2010-10-15 + +- Add an option to not store references to objects in stack frames. + This can be important if you're expecting DESTROY to be called but a + Devel::StackTraceFrame object is still holding a reference to your + object(s). Based on discussion with Tatsuhiko Miyagawa. + + +0.9 2001-11-24 + +- Doc tweaks. + + +0.85 2000-09-02 + +- doc bug fix that made it seem like args method was only available + under Perl 5.6.0 + +- converted objects from pseudo-hashes to regular hashes. + + +0.8 2000-09-02 + +- Should work under Perl 5.6.0+. + +- Added hints & bitmask methods for use under Perl 5.6.0. + + +0.75 2000-06-29 + +- Added frames method (and docs for it). + +- Added 'use 5.005' which I should have put in there earlier. + +- DOCS: explanation of 'top' and 'bottom' as they refer to the stack. + + +0.7 2000-06-27 + +- First release (I think) |