CPAN-Mini-Devel

 view release on metacpan or  search on metacpan

lib/CPAN/Mini/Devel.pm  view on Meta::CPAN

        my $base_id = $latest{$name}{base_id};
        $mirror{$base_id} = $latest{$name}{datetime} unless $mirror{$base_id};
    }

    # for dev versions, it must be newer than the latest version of
    # the same base name from the packages file

    for my $name ( keys %latest_dev ) {
        if ( !$latest{$name} ) {
            $self->trace(
                "Shouldn't be missing '$name' matching '$latest_dev{$name}{base_id}'\n");
            next;
        }
        next if $latest{$name}{datetime} > $latest_dev{$name}{datetime};
        $mirror{ $latest_dev{$name}{base_id} } = $latest_dev{$name}{datetime};
    }

    my $mirror_list =
      [ sort map { s{^(((.).).+)$}{authors/id/$3/$2/$1}; $_ } keys %mirror ] ## no critic
      ;

    return $mirror_list;
}

1;

__END__

=pod

=encoding UTF-8

=head1 NAME

CPAN::Mini::Devel - Create CPAN::Mini mirror with developer releases

=head1 VERSION

version 0.04

=head1 SYNOPSIS

    $ minicpan -c CPAN::Mini::Devel

=head1 DESCRIPTION

Normally, L<CPAN::Mini> creates a minimal CPAN mirror with the latest version of
each distribution, but excluding developer releases (those with an underscore
in the version number, like 0.10_01).  

CPAN::Mini::Devel enhances CPAN::Mini to include the latest developer and
non-developer release in the mirror. For example, if Foo-Bar-0.01,
Foo-Bar-0.02, Foo-Bar-0.03_01 and Foo-Bar-0.03_02 are on CPAN, only
Foo-Bar-0.02 and Foo-Bar 0.03_02 will be mirrored. This is particularly useful
for creating a local mirror for smoke testing.

Unauthorized releases will also be included if they resemble a distribution
name already in the normal CPAN packages list.

There may be errors retrieving very new modules if they are indexed but not
yet synchronized on the mirror.

CPAN::Mini::Devel also mirrors the F<indices/find-ls.gz> file, which is used
to identify developer releases.

=head1 USAGE

See L<Mini::CPAN>.

=head1 SEE ALSO

=over 4

=item *

L<CPAN::Mini>

=back

=for :stopwords cpan testmatrix url annocpan anno bugtracker rt cpants kwalitee diff irc mailto metadata placeholders metacpan

=head1 SUPPORT

=head2 Bugs / Feature Requests

Please report any bugs or feature requests through the issue tracker
at L<https://github.com/dagolden/CPAN-Mini-Devel/issues>.
You will be notified automatically of any progress on your issue.

=head2 Source Code

This is open source software.  The code repository is available for
public review and contribution under the terms of the license.

L<https://github.com/dagolden/CPAN-Mini-Devel>

  git clone https://github.com/dagolden/CPAN-Mini-Devel.git

=head1 AUTHOR

David Golden <dagolden@cpan.org>

=head1 COPYRIGHT AND LICENSE

This software is Copyright (c) 2014 by David Golden.

This is free software, licensed under:

  The Apache License, Version 2.0, January 2004

=cut



( run in 0.708 second using v1.01-cache-2.11-cpan-9581c071862 )