Revision history for Data-Handle
0.01011702 2010-12-22 02:43:35 Pacific/Auckland
Distribution Change only. Otherwise identical to previous release.
Don't index DB.
0.01011701 2010-12-22 02:29:00 Pacific/Auckland
Give up on trying to operate with the Carp shipped with 5.6.2.
If its not there, and not in Carp::Heavy's injections,
Use a copy of one we stole and made work.
Have to put a fix in as well, because Term::ANSIColor clobbers $@
Changes | 13 +++++
lib/Data/Handle/Exception.pm | 101 ++++++++++++++++++++++++++++++++++++++++--
perlcritic.rc | 2 +-
3 files changed, 111 insertions(+), 5 deletions(-)
0.01011617 2010-12-21 18:46:24 Pacific/Auckland
Fix "missing parentheses around my ( )" for Perl-5.6
Changes | 9 +++++++++
lib/Data/Handle.pm | 2 +-
2 files changed, 10 insertions(+), 1 deletions(-)
0.01011601 2010-12-21 02:07:01 Pacific/Auckland
Yuck. The way caller_info is provided is ambiguous. Hopefully this release will get that right.
Changes | 9 +++++++++
lib/Data/Handle/Exception.pm | 5 +----
2 files changed, 10 insertions(+), 4 deletions(-)
0.01011501 2010-12-20 02:15:59 Pacific/Auckland
The method we were borrowing out of Carp wasn't there in old versions,
so we've added a bit of magic to try get it from older carps too, so we don't fail
on <= 5.10.1 :(
Changes | 11 +++++++++++
lib/Data/Handle/Exception.pm | 17 +++++++++++++----
2 files changed, 24 insertions(+), 4 deletions(-)
0.01011500 2010-12-20 01:36:06 Pacific/Auckland
More tests to improve general function coverage
generate_exception is gone, depercated. Replace:
generate_exception($class , $message)->throw()
with
_gen_tree($full_class)->throw( $message )
Coverage testing detected a missing exception class, fixed in this release.
All tied() methods now tested to some degree to work.
Changes | 23 ++++
lib/Data/Handle/Exception.pm | 40 +------
t/02_example.t | 23 ++++
t/03_mess_with_seek.t | 28 ++++
t/04_things_that_fail.t | 300 ++++++++++++++++++++++++++++++++++++++++++
5 files changed, 376 insertions(+), 38 deletions(-)
0.01011421 2010-12-19 22:52:17 Pacific/Auckland
Reworked the Exception code to be cleaner at the cost of a slight
initialisatin cost.
Reworked code bodies to unify seek/tell calls as _restore_pos and _set_pos.
Added _fh so internal code is less confusing.
Extended tests to cover more scenarios.
Added contributed suggestions as "alternative_techinques" with demonstrations how they
*( so far ) don't work. If people can get them to work (on all perls), that'd be great!.
( Seems there are many weird fdup bugs in perl )
Stolen the backtrace code from Carp a bit and augmented it, now produce useful backtraces.
Have some nice code in our exception stringification that highlights lines with colours based on
how much we think they're related to the problem.
Stuff thats part of DH ( the place the error was detected ) is highlighted green as we think it
will be usefull in diagnosis, but its not the source of the problem.
Stuff that we know is likely to be infrastructural and not likely to be part of the problem
( ie: code like Try::Tiny and Test::Fatal ) are highlighted yellow because we doubt its useful.
Everything else is left white, and you should look for the problem there first.
Changes | 40 +++++
lib/Data/Handle.pm | 151 +++++++------------
lib/Data/Handle/Exception.pm | 165 +++++++++++++++++----
perlcritic.rc | 2 +-
t/01_lowlevel.t | 25 +++
t/02_example.t | 4 +-
t/alternative_techniques/03_fdup_test.t | 56 +++++++
t/alternative_techniques/03_fdup_test_cowns.t | 54 +++++++
t/alternative_techniques/03_fdup_test_cowns.t_out | 42 ++++++
t/alternative_techniques/04_fopen.t | 27 ++++
t/alternative_techniques/05_new_from_fd.t | 27 ++++
11 files changed, 470 insertions(+), 123 deletions(-)
0.01011322 2010-12-18 23:14:03 Pacific/Auckland
First version.