summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
Diffstat (limited to 'README')
-rw-r--r--README68
1 files changed, 68 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..fb5df4f
--- /dev/null
+++ b/README
@@ -0,0 +1,68 @@
+NAME
+ CPAN::DistnameInfo - Extract distribution name and version from a
+ distribution filename
+
+SYNOPSIS
+ my $pathname = "authors/id/G/GB/GBARR/CPAN-DistnameInfo-0.02.tar.gz";
+
+ my $d = CPAN::DistnameInfo->new($pathname);
+
+ my $dist = $d->dist; # "CPAN-DistnameInfo"
+ my $version = $d->version; # "0.02"
+ my $maturity = $d->maturity; # "released"
+ my $filename = $d->filename; # "CPAN-DistnameInfo-0.02.tar.gz"
+ my $cpanid = $d->cpanid; # "GBARR"
+ my $distvname = $d->distvname; # "CPAN-DistnameInfo-0.02"
+
+ my %prop = $d->properties;
+
+DESCRIPTION
+ Many online services that are centered around CPAN attempt to associate
+ multiple uploads by extracting a distribution name from the filename of
+ the upload. For most distributions this is easy as they have used
+ ExtUtils::MakeMaker or Module::Build to create the distribution, which
+ results in a uniform name. But sadly not all uploads are created in this
+ way.
+
+ "CPAN::DistnameInfo" uses heuristics that have been learnt by
+ <http://search.cpan.org/> to extract the distribution name and version
+ from filenames and also report if the version is to be treated as a
+ developer release
+
+ The constructor takes a single pathname, returning an object with the
+ following methods
+
+ cpanid
+ If the path given looked like a CPAN authors directory path, then
+ this will be the the CPAN id of the author.
+
+ dist
+ The name of the distribution
+
+ distvname
+ The file name with any suffix and leading directory names removed
+
+ filename
+ If the path given looked like a CPAN authors directory path, then
+ this will be the path to the file relative to the detected CPAN
+ author directory. Otherwise it is the path that was passed in.
+
+ maturity
+ The maturity of the distribution. This will be either "released" or
+ "developer"
+
+ properties
+ This will return a list of key-value pairs, suitable for assigning
+ to a hash, for the known properties.
+
+ version
+ The extracted version
+
+AUTHOR
+ Graham Barr <gbarr@pobox.com>
+
+COPYRIGHT
+ Copyright (c) 2003 Graham Barr. All rights reserved. This program is
+ free software; you can redistribute it and/or modify it under the same
+ terms as Perl itself.
+