Devel::Cover.pm history
Release 0.67 - 8th May 2010
- Fix up the Makefile for dmake on Strawberry Perl (Curtis Jewell) (rt 50774).
Release 0.66 - 12th April 2010
- Move to faster method of collecting data. Could be up to twice as fast now.
- Add -replace_ops options to be able to revert to previous collection method.
- Test against 5.12.0 and update tests as necessry.
- Work better with non-existent databases.
- XS fixes related to overriding ops rather than replacing runops
(Florian Ragwitz).
- Don't chmod created directories (mkdir should suffice).
Release 0.65 - 8th August 2009
- Fix uninitialised value warning (reported by Andrew Billeb).
- Test against 5.8.9 and 5.10.1 (RC1).
- Correct deparsed conditional output in elsif conditions.
- Unset PERL5OPT when running tests.
Release 0.64 - 10th April 2008
- Build on Windows.
- Make "cover -test" work for Module::Build (Michael G Schwern) (rt 34263).
- Make "cover -test" cover .[ch] files (Michael G Schwern) (rt 34262).
- Make "cover -gcov" a valid option (Michael G Schwern) (rt 34261).
Release 0.63 - 16th November 2007
- require 5.006001 might stop CPAN testers trying to test with 5.005.
- store_return() should be a void function (H.Merijn Brand).
- Finish dor support.
- Add support for exec (Brandon Black).
- Tested against 5.10 (RC1).
Release 0.62 - 5th November 2007
- Add table sorting to Html_basic report (Nathan Haigh).
- Assume heredocs are constants.
- Don't add 0x200 to $^P ("file" names for evals) (Fix for Template::Declare).
- Add timer and alarm for cpancover.
- Add Report Date to basic html report.
- Quieten some warnings.
- Document cover -test.
- Get rid of any __DIE__and __WARN__ signals during the report.
- Don't try to get a digest for "-e".
- Tidy up filename normalisation.
- Be more explicit about what I mean when I call this alpha software.
- Add uncoverable comments.
- Don't complain about POSIX.pm (Erwan Lemonnier).
- Don't resolve pathnames of symbolic links (Stefan Becker).
- Spelling nits (James E Keenen).
Release 0.61 - 10th January 2007
- Fix some "ignored" errors due to multiple subs of the same name on the same
line (rt 14192).
- Display pod coverage with subroutine coverage in text report.
- Update golden output (tests were failing in 0.60).
Release 0.60 - 2nd January 2007
- Simplify get_key function and remove TODO item (Gisle Aas).
- Be careful with UNC paths on Windows (John LoVerso) (rt 24105).
- Only call HvSHAREKEYS_off if threading is enabled.
- s/unvailable/unavailable/ (Jim Cromie).
- Don't key on op_targ - it might change (rt 22701).
- Tidy up docs and error messages for reports (rt 21098).
- Better database validation.
- Don't delete invalid datbases (rt 16039).
- Tested against 5.9.5.
- Allow for new anonlist and anonhash ops (rt 24067).
- Use outputfile for both cover and cpancover.
- Add compilation report (Denis Howe).
Release 0.59 - 23rd August 2006
- Tidy up HTML, especially for cpancover.
- Allow coverage of subroutine statements in a different file (as with Mason)
(clkao).
- Bump refcount on subs to ensure they stay around for us to look at them
(yes, this is a hack).
Release 0.58 - 6th August 2006
- Be more clever about void context and so avoid SvROK hack.
- Document some bugs, limitations and requirements.
- HTML alignment fix (Sébastien Aperghis-Tramoni).
- CSS improvements for HTML reports (Sébastien Aperghis-Tramoni).
Release 0.57 - 3rd August 2006
- Report Pod::Coverage load failure (dom - happygiraffe.net) (rt 14425).
- Use Perl::Tidy as an alternative syntax highlighter
(Sébastien Aperghis-Tramoni).
- Lighten the style a little - make table cells only have right and bottom
borders, using the ones from the surrounding cells to form the grid
(Sébastien Aperghis-Tramoni).
- subs_only option to only show coverage for subs (Nicholas Clark).
Release 0.56 - 1st August 2006
- gcov2perl creates db if necessary (Steve Peters) (rt 13536).
- Properly merge identical files (Jeff Wren) (rt 12410).
- Allow line achors in html_basic (Mark Stosberg) (rt 13615).
- Right justify numerical tabular html output (Sébastien Aperghis-Tramoni).
- Work around ExtUtils::MakeMaker realclean bug (Florian Ragwitz) (rt 17324).
- Don't try to delete db if it isn't there.
- The following changes were made at the Devel::Cover hackathon, sponsored by
Best Practical.
- No longer create the temporary .version files (Leon Brocard).
- Document Module::Build's testcover (Leon Brocard).
- Add more detail about code coverage in docs (Leon Brocard).
- Make the HTML valid by moving comment past the <?xml> (Leon Brocard).
- Add syntax highlighting to HTML_basic if PPI::HTML is installed
(Leon Brocard).
- Refactored common code for calculate_summary across all Criterion classes
(Norman Nunley).
- Remove duplicated code paths between Branch and Condition (Norman Nunley).
- Don't call overload bool in condition coverage (clkao).
- Fix the XML comment for cpancover (Norman Nunley).
- Turn conditionals in void context into or2 conditions so that the value of
the RHS doesn't matter for coverage purposes.
- Add a tool to scan comments about uncoverable code and output .uncoverable
format to stdout (clkao).
- Add and update overload tests.
Release 0.55 - 22nd September 2005
- Add -gcov option to cover and make it default when using gcc.
- Remolve unused File::Find from cpancover.
- Document how to get XS coverage in gcov2perl.
- Improvements to SVK annotation (Chia-liang Kao).
Release 0.54 - 13th September 2005
- Make html_basic prettier.
- Fix pod coverage percentages.
- Fix integer <-> pointer conversion warnings (Robin Barker).
- Add more tests for sort bug fixed in 0.53 (Rob Kinyon).
- Handle || bless {}, "XXX" (reported by Marcel Grünauer).
- Add preliminary dor support (unfinished).
- Test against perl-5.8.7.
- Add check for Pod::Coverage::CountParents.
- Fix line number display problem in conditionals in Html_basic.
- Add eval_sub and eval3 tests.
- Add buildperl script.
- Add -report option to cpancover.
- Update cpancover CSS.
- Partial solution for structure problems including debugging code.
- Add outputfile option to Html_basic.
Release 0.53 - 17th April 2005
- Clean up database directories.
- Allow require File::Spec->catfile('t', 'common.pl'); (from an example by
Randy W. Sims).
- Fix core dump associated with sort subs and add test case supplied by
Leif Eriksen.
- Add extra options for coverage criteria.
- Allow pod coverage options to be specified.
- Update copyrights.
- Allow Test::Differences output to be displayed usefully.
- Test against perl-5.9.3.
Release 0.52 - 13th December 2004
- Fix thread locking bug (Ruslan Zakirov).
- Make valgrind happy.
- Fix gcov2perl (Steve Peters).
- Restore failure message to CLONE.
Release 0.51 - 29th November 2004
- Handle $y || undef.
- Small branch coverage fix.
- Improve reporting of uncoverable constructs in html reports.
- Test against perl-5.8.6.
- Recommend at least perl-5.8.2.
Release 0.50 - 25th October 2004
- Add -test option to cover.
- Fix missing coverage when calling a sub in an ignored module.
- Add module_ignore test.
- Add uncoverable options to cover.
Release 0.49 - 6th October 2004
- Compile on Win32 (and elsewhere) (Steve Hay).
Release 0.48 - 5th October 2004
- Working towards thread safety.
- Test against perl-5.8.5.
- Store perl version number in Inc.pm and complain if it doesn't match.
- Add annotation API and Random example.
- Display run information in text report.
- Remove POSIX path bodge which is now properly fixed.
- Update test results for new functionality.
- Add -select_re and -ignore_re options to cover.
- Sort out "ignoring extra subroutine" and friends.
- Add eval2 and eval_use tests.
- Ignore *.t by default with blib.
- Add beginnings of sort report.
- Bump up DB version.
- Fix problems with references in INC (which can't be handled).
- Fixes for mod_perl (Vadim O. Ustiansky).
Release 0.47 - 27th June 2004
- Provide subroutine coverage for empty subs - sub empty { }.
- Only override B::Deparse subs whilst using them and add deparse test.
Release 0.46 - 23rd June 2004
- Don't lose data merging DBs.
- Work with Safe.pm, by not covering it.
- Swap Profiling_op for Profiling_key to avoid accessing freed memory.
- Rename -file and -exclude options in cover to -select and -ignore.
- Fully cover conditions and branches when the condition calls a sub in
an ignored file.
Release 0.45 - 27th May 2004
- Cope with spaces in build path on Windows (Max Maischein).
- Allow Devel::Cover to be used under mod_perl (Philippe M. Chiasson).
- Handle $x ||= 1 and friends nicely, including subs and *foo{THING}.
- Allow uncoverable code to be specified. (Unfinished)
Release 0.44 - 18th May 2004
- Fix get_elapsed, although its result is not used yet.
- Recommend 5.8.1 as a minimum.
- Replace run Makefile target with text and html.
- Fix up gcov2perl.
- Fail gracefully when covering a threaded program.
- Add DEVEL_COVER_OPTIONS environment variable.
Release 0.43 - 2nd May 2004
- Add +ignore and +select options, and change meaning of -ignore and
-select options. This is an interface change.
- Ignore coverage on Devel::Cover's files by default.
- Cover INIT and END blocks more reliably.
- Fix 5.6 on Windows. Well, sort of.
- Add a message in Makefile.PL recommending against using Devel::Cover
on 5.6, especially under Windows.
Release 0.42 - 30th April 2004
- Add SYNOPSIS section to README.
- Resolve links for Devel::Cover::Inc (Dave Rolsky).
- Get things running on Windows again.
Release 0.41 - 29th April 2004
- Correct time coverage percentages.
- Collect data for BEGIN, CHECK, INIT and END blocks in the main
program, and INIT and END blocks in modules.
- Ensure our END block is always the last run.
- Don't clean up Pending_conditionals data.
- Untaint @INC after using blib.
- Be silent if called via HARNESS_PERL_SWITCHES.
- Test against perl-5.8.4.
- Store cwd from when each module was required in order to find them again.
- Refactor and tidy XS code.
- Get cpancover running again with the DB changes.
- Normalise filenames.
Release 0.40 - 24th March 2004
- Remove DB structure for unwanted files.
- Identify ops based on address and OP contents, except for op_ppaddr,
which we modify.
- Overhaul of coverage collection.
- Additions to tests.
Release 0.39 - 22nd March 2004
- Major database rework to store runs.
- Add Devel::Cover::DB::Structure.pm.
- Check for Test::Differences in Makefile.PL.
- Test with perl5.9.2.
- Skip fork test on MSWin32.
Release 0.38 - 12th March 2004
- Allow coverage summary title to be changed (David Wheeler).
- More care generating pod golden results.
- Small Devel::Cover::Op output fix.
- Handle "my $x = shift || []" and friends nicely.
- Add default_param test.
- Provide summary output to one decimal place.
- Update gcov2perl.
Release 0.37 - 10th March 2004
- Fix up pod test golden results.
- Add limitation documentation (Michael Carman).
Release 0.36 - 9th March 2004
- Add fork test.
- Remove debugging code from md5 test.
- Remove runs after merging - code was commented out for debugging.
- Don't merge runs during coverage collection.
- Delete database at start if not merging to cope with forking.
Release 0.35 - 8th March 2004
- Change Text2 to pick up version changes.
- Minor documentation updates.
- Minor changes to Devel::Cover::Op.
- Add outputfile option to HTML output (David Wheeler).
- Document -silent option to Devel::Cover.
- Add -silent option to cover (David Wheeler).
- Make Devel::Cover taint safe, or tolerant at least.
- Only add versioned golden results to tests that need them.
- Add trivial, md5 and module_no_inc tests.
- Increase flexibility of testing system to accomodate md5 test.
- Add mani, all_gold and all_test Makefile targets.
- Make all_versions skip non-existent platforms.
- Add DB option to make dump target.
- Remove dependencies on op_seq. (I removed it from bleadperl.) Use
op_targ instead.
- Collect some metadata.
- Documentation updates (Andy Lester).
- Document the mechanism by which files are selected for coverage.
Release 0.34 - 14th January 2004
- Fix various warnings and errors that had crept in whilst working on
dynamic subs.
Release 0.33 - 13th January 2004
- Get things working on paths with spaces in them.
- Documentation clarifications (Andy Lester).
- Fix coverage for simple if, elsif and unless conditionals.
- Add if test.
- Ensure runs are merged in the order they were created.
- Don't report multiple data from dynamically created subs.
- Add alias, alias1 and dynamic_subs tests.
- Fix and document Devel::Cover::Op.
- Redo subroutine coverage so anon subs are covered correctly in 5.6.x.
Release 0.32 - 4th January 2004
- Actually include do test.
- Create run concept in database.
- Belatedly remove check for Template.
- Add branch_return_sub test.
- Add finalise_conditions() to collect previously missed coverage.
- Fix incorrect coverage results associated with "and" conditions.
- Add all_versions utility script.
- Put /usr/bin/perl on all shebang lines.
Release 0.31 - 22nd December 2003
- Remove debugging output. Hmmm.
Release 0.30 - 22nd December 2003
- Get things working under Windows.
Release 0.29 - 19th December 2003
- Merge data from files with identical MD5 checksums (Arthur Bergman).
- Add do test.
- Handle $x || return.
- Keep cover -delete happy when there is no existing database.
- In cover, make -file a glob and add -exclude.
- Watch for coverage options being set in cover (PERL5OPT set?).
- Fix up html_basic and html_subtle.
- Make 5.6.x builds a bit quieter.
- Clean up time routines in XS code.
Release 0.28 - 1st December 2003
- Remove leading whitespace from HTML templates (Gabor Szabo).
- Remove obsolete indent option.
- Add MD5 checksums (Michael Carman).
- Add Html_minimal.pm (Michael Carman) (Obsoleting Gabor's patch before it was
released).
- Pass unknown cover options to the formatter and remove -option.
- Specify the output directory for HTML.
- Search up directory trees for modules.
Release 0.27 - 9th November 2003
- Behave sensibly if import() is not called, for example when MakeMaker does a
PREREQ_PM check.
- Use Storable for the database instead of Data::Dumper/eval (Michael Carman).
Release 0.26 - 12th October 2003
- Decline to output HTML results for conditions containing > 16 terms.
- Add titles to HTML output.
Release 0.25 - 10th October 2003
- Fix for perl 5.6.1. Cwd::abs_path($d) gets upset if $d doesn't exist.
- Start of some changes to cpancover HTML.
Release 0.24 - 10th October 2003
- Paths in Devel::Cover::Inc in single quotes for Windows platforms.
- Add -dir option and default it to cwd.
- Ignore test.pl in cpancover.
- Display pod coverage in cpancover.
Release 0.23 - 6th September 2003
- Report condition coverage for branches on the same line as the branch.
- Add subroutine coverage.
- Made "all" coverage value work and made it the default.
Release 0.22 - 2nd September 2003
- Rewrite runops function.
- First line of DESTROY blocks and overload subs not now skipped.
- Add some more tests.
Release 0.21 - 1st September 2003
- Add cpancover.
- Handle $x || next and friends.
- Add html_subtle and text2 backends (Michael Carman).
- Rename html backend to html_basic.
- Make html backend a wrapper around preferred style, currently html_subtle.
- Make time coverage a little more accurate. OK, a lot more accurate, it's at
least on the right line now, but I still wouldn't really trust it.
- Fix pod coverage which has been broken for a while.
- Don't collect branch coverage when not asked for.
- Provide golden results for different Perl versions.
- Change some B::Deparse logic to mirror changes in 5.8.1/5.10.
Release 0.20 - 5th October 2002
- Add break after default to satisfy IBM's xlC compiler on AIX.
- Get things working with threads again.
- make realclean is.
Release 0.19 - 29th September 2002
- Quieten uninitialised value warnings.
Release 0.18 - 28th September 2002
- Redo the way condition coverage is gathered - abuse op_ppaddr.
- Put or conditions the right way round.
- Allow for subclasses of coverage types.
- Add:
Devel::Cover::Condition_or_2.pm
Devel::Cover::Condition_or_3.pm
Devel::Cover::Condition_and_3.pm
Devel::Cover::Condition_xor_4.pm
- "use" all conditions in Criterion.pm, and nowhere else.
- Add support for xor, ||= and &&=.
Release 0.17 - 15th September 2002
- Call check_files() in report() to ensure we pick up anything added to the
symbol table while the program was running.
Release 0.16 - 9th September 2002
- Get rid of some uninitialised warnings.
- Inline the HTML templates.
- Rebless the op after blessing it as a COP.
- Make branch coverage line numbers more accurate.
Release 0.15 - 5th September 2002
- Reinstate coverage of subs in main:: which got lost somewhere (0.11?).
- Bug fixes for use of uninitialised values.
- Automatically generate tests. Well, their infrastructure anyway.
- Move Cover to lib/Devel/Cover to keep case insensitive filesystems happy.
- Remove -detail option. (It belongs to cover.)
- Work on op addresses and sequence numbers instead of just op addresses, to be
(almost) unique.
- Clean up subroutine location code.
- Fix -select to override anything else.
- Add condition coverage for && and || ops.
- Various changes in runops_cover to try to reduce runtime.
- Don't use runops_cover until CHECK time.
- Add merge, write and file options to cover.
- Add branch coverage.
- Abstract away cover backends.
- Use TT for HTML output.
Release 0.14 - 28th February 2002
- Add a workaround for an AUTOLOAD bug in bleadperl.
- Add gcov2perl program to convert gcov files to Devel::Cover databases.
- Get rid of // comments in xs file.
Release 0.13 - 14th October 2001
- Forgot to allow for lack of Pod::Coverage in Devel::Cover::Pod.pm.
Release 0.12 - 14th October 2001
- Improve pod coverage by considering private subs.
- Add time coverage, aka profiling.
- Add:
Devel::Cover::DB::File.pm
Devel::Cover::Time.pm
- Abstract summary and percentage calculations to appropriate classes.
Release 0.11 - 10th September 2001
- Add pod coverage based on Pod::Coverage.pm.
- Put a full API on the database.
- Add:
Devel::Cover::Criterion.pm
Devel::Cover::Statement.pm
Devel::Cover::Condition.pm
Devel::Cover::Pod.pm
- Some improvements to the cover program.
Release 0.10 - 27th August 2001
- Add cover program to generate reports.
Release 0.09 - 18th August 2001
- Beef up Devel::Cover::DB.
Release 0.08 - 18th August 2001
- Provide better handling of files to report on or ignore.
Makefile.PL generates Inc.pm containing default @INC.
added +inc, -ignore and -select.
Release 0.07 - 17th August 2001
- Add an API to Devel::Cover::DB.
Release 0.06 - 10th August 2001
- Rename Devel::Cover::Process to Devel::Cover::DB
- Make the database a directory.
- Add fix for eval in filename. (Arthur Bergman <arthur@contiller.se>)
- Add more tests and abstract away comparison subroutine.
- Clear @Inc if it is set explicitly.
- Trim filename length in detailed output.
Release 0.05 - 9th August 2001
- Make line numbers more accurate when nextstate has been optimised away.
- Get things working with ithreads.
Release 0.04 - 12th April 2001
- Include Devel::Cover::Op
- Add condition coverage (sort of).
Release 0.03 - 10th April 2001
- Add detailed output.
- Add -d option to turn it on.
Release 0.02 - 10th April 2001
- Add summary output.
- Add -S option to turn it off.
- Turn Devel::Cover::Process into a class.
Release 0.01 - Initial release - 9th April 2001