++ed by:
4 non-PAUSE users
Author image Andy Lester

Changes for version 1.39_02

    • Removed the ability to call new from an instance of MARC::Record or MARC::Field. Any place where you might have code like:
      • my $rec = MARC::Record->new(); ... my $another = $rec->new();
      • will have to be changed to:
        • my $rec = MARC::Record->new(); ... my $class = ref( $rec ); my $another = $class->new();
      • or:
        • my $rec = MARC::Record->new(); ... my $another = MARC::Record->new();
    • Removed MARC::Lint and the marclint utility to a separate package on CPAN.
    • Clarified docs on the interface to field(), and fixed problem whereby in scalar context if no match was found we were returning an empty list instead of undef. Strictly speaking, this is an interface change, but in practice anyone making this call in a scalar context was going to get 0, which if used as a MARC::Field would bomb. We therefore don't expect the change to affect anything that wasn't already blowing up.
    • Fixed the doc and example for MARC::Field::subfields() so that they match the behavior of the function, namely returning a list rather than a list ref.
    • Fixed behavior of MARC::Batch::next() to not reset warnings on the MARC::Record object that it returns. Also added test to t/75.warnings.t
    • Turned off utf8 handling until it can safely be done without converting all MARC data to utf8.
    • Made marcdump respect --noquiet as documented.
    • added MARC::Field::delete_subfields() and tests to t/67.subfield.t
    • Added tests to make sure that MARC::Record::leader() adds warnings if called as a setter with data that isn't the right length.
    • Added explicit tests for convenience function behavior (title(), edition(), etc.) when there's no data.
    • Added test to verify insert_fields_before() behavior when the field to insert before isn't in the record.
    • Added tests to MARC::Field::indicator() to make sure that when called on a control field the return is undef.

Changes for version 1.39_01

    • Support for UTF8 in Perls >= 5.8.1. When using a utf8 friendly Perl all file streams will be opened in utf8 mode, and the bytes pragma will be used to create and use direcotry byte offsets.
    • Added MARC::File::Utils which contains utf8 safe functions.
    • marcdump now sets STDOUT to utf8 if it is able to.
    • t/utf8.t is no longer skipped.
    • removed redundant record length check in MARC::File::USMARC::_next() and adjusted tests in t/75.warnings.t
    • All tests run under -T.


MARC record dump utility
A documentation-only module for new users of MARC::Record


Perl module for handling files of MARC::Record objects
Perl extension for handling MARC fields
Base class for files of MARC records
MicroLIF-specific file handling
USMARC-specific file handling
Perl extension for handling MARC records


in lib/MARC/File/Utils.pm