Acme-Locals

 view release on metacpan or  search on metacpan

devel/build_wikidoc.pl  view on Meta::CPAN

        while (defined (my $file = $next_file->())) {
            if (-f $file && $file =~ $RE_PERL_FILE) {
                next FILE if $IGNORE_FILE{$file}; 
                my $source_file = $file;
                my $output_file = $self->pm_file_to_pod_file($source_file);
                $parser->filter(
                    {   input  => $source_file,
                        output => $output_file,
                    }
                );
                $self->log_info("Creating $output_file\n");
            }
        }
    }
    else {
        $self->log_warn(
            'Pod::WikiDoc not available. Skipping wikidoc.'
        );
    }

    return;
}

sub pm_file_to_pod_file {                                                                 
    my ($self, $filename) = @_;                                                           
    $filename =~ s{(?:\. .*?)\z}{.pod}xms;                                                        
    return $filename;                                                                     
}

sub log_warn {                                                                            
    my ($self, @messages) = @_;                                                           
                                                                                          
    for my $message (@messages) {                                                         
        chomp $message;                                                                   
        $message .= qq{\n};                                                               
    }

    warn @messages;
                                                                                          
    return;
}

sub log_info {                                                                            
    my ($self, @messages) = @_;                                                           
                                                                                          
    for my $message (@messages) {                                                         
        chomp $message;                                                                   
        $message .= qq{\n};                                                               
    }

    warn @messages;
                                                                                          
    return;

inc/Module/Install/Fetch.pm  view on Meta::CPAN

    require Cwd;
    my $dir = Cwd::getcwd();
    chdir $args{local_dir} or return if exists $args{local_dir};

    if (eval { require LWP::Simple; 1 }) {
        LWP::Simple::mirror($args{url}, $file);
    }
    elsif (eval { require Net::FTP; 1 }) { eval {
        # use Net::FTP to get past firewall
        my $ftp = Net::FTP->new($host, Passive => 1, Timeout => 600);
        $ftp->login("anonymous", 'anonymous@example.com');
        $ftp->cwd($path);
        $ftp->binary;
        $ftp->get($file) or (warn("$!\n"), return);
        $ftp->quit;
    } }
    elsif (my $ftp = $self->can_run('ftp')) { eval {
        # no Net::FTP, fallback to ftp.exe
        require FileHandle;
        my $fh = FileHandle->new;

        local $SIG{CHLD} = 'IGNORE';
        unless ($fh->open("|$ftp -n")) {
            warn "Couldn't open ftp: $!\n";
            chdir $dir; return;
        }

        my @dialog = split(/\n/, <<"END_FTP");
open $host
user anonymous anonymous\@example.com
cd $path
binary
get $file $file
quit
END_FTP
        foreach (@dialog) { $fh->print("$_\n") }
        $fh->close;
    } }
    else {
        warn "No working 'ftp' program available!\n";
        chdir $dir; return;
    }

    unless (-f $file) {
        warn "Fetching failed: $@\n";
        chdir $dir; return;



( run in 0.509 second using v1.01-cache-2.11-cpan-49f99fa48dc )