A clone of 'official' Archive::BagIt reposity by CPAN author Rob Schmidt (https://github.com/rjeschmi/Archive-BagIt). This repository contains patches to update Archive::BagIt to version 1.0 of BagIt, see RFC 8493 (https://tools.ietf.org/html/rfc8493)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Andreas Romeyke 914d63826a - fixed whitespace in version string 5 months ago
bagit_conformance_suite - fixed whitespace in version string 5 months ago
lib/Archive - improved POD 5 months ago
t - fixed some conformance tests 5 months ago
.gitignore - ignore ide-config 7 months ago
Changes Released 0.059 5 months ago
README - updated 7 months ago
README.developer - init 7 months ago
README.mkdn Released 0.059-TRIAL 6 months ago
dist.ini - disabled Git::Tag because expects gpg 5 months ago
ignore.txt - adapted to build a clean package 7 months ago



This is experimental software for the moment and under active

Under the hood, the module Archive::BagIt::Base was adapted and
extended to support BagIt 1.0 according to RFC 8493

Also: Check out Archive::BagIt::Fast if you are willing to add some
extra dependencies to get better speed by mmap-ing files.


Archive::BagIt - An interface to make and verify bags according to the
BagIt standard


This modules will hopefully help with the basic commands needed to
create and verify a bag. My intention is not to be strict and enforce
all of the specification. The reference implementation is the java
version and I will endeavour to maintain compatibility with it.

use Archive::BagIt;

#read in an existing bag:
my $bag_dir = "/path/to/bag";
my $bag = Archive::BagIt->new($bag_dir);

#construct bag in an existing directory
my $bag2 = Archive::BagIt->make_bag($bag_dir);

# Validate a BagIt archive against its manifest
my $bag3 = Archive::BagIt->new($bag_dir);
my $is_valid = $bag3->verify_bag();



An Object Oriented Interface to a bag. Opens an existing bag.

my $bag = Archive::BagIt->new('/path/to/bag');


A constructor that will make and return a bag from a directory

If a data directory exists, assume it is already a bag (no checking for
invalid files in root)


An interface to verify a bag.

You might also want to check Archive::BagIt::Fast to see a more direct
way of accessing files (and thus faster).


This is the checksum for the bag, md5 of the manifest-md5.txt


Returns the bagit version according to the bagit.txt file.


Returns an array with all of the payload files (those files that are
below the data directory)


Returns an array with files that are in the root of the bag,
non-manifest files


Return an array with the list of manifest files that exist in the bag


Return an array with the list of tagmanifest files


Robert Schmidt, <rjeschmi at gmail.com>

William Wueppelmann, <william at c7a.ca>

Andreas Romeyke, <pause at andreas minus romeyke.de>


Serhiy Bolkun

Russell McOrmond


The original development version is on github at
http://github.com/rjeschmi/Archive-BagIt and may be cloned from there.

The actual development version is available at


Please report any bugs or feature requests to bug-archive-bagit at
rt.cpan.org, or through the web interface at
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Archive-BagIt. I will be
notified, and then you'll automatically be notified of progress on your
bug as I make changes.


You can find documentation for this module with the perldoc command.

perldoc Archive::BagIt

You can also look for information at:

* RT: CPAN's request tracker (report bugs here)


* AnnoCPAN: Annotated CPAN documentation


* CPAN Ratings


* Search CPAN



Copyright (c) 2012, the above named author(s).


This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.