Searching CPAN Offline

Post on 17-May-2015

2.336 views 0 download

Tags:

description

Searching CPAN Offline with CPAN::Mini::Webserver

Transcript of Searching CPAN Offline

Searching CPAN o�ine

Léon Brocard

London Perl Workshop 2008

Me

Léon BrocardFrench, live in LondonLike foodLike the colour orangeFounded Amsterdam.pm, Bath.pm, Croydon.pmNow in London.pmStarted YAPC::EuropePerl hacker

What is CPAN?

CPAN is an acronym standing for ComprehensivePerl Archive Network, an archive of over 12,200modules of so�ware written in Perl, as well asdocumentation for it.[1] It has a presence on theWorld Wide Web at www.cpan.org and is mirroredworldwide on more than 250 locations [2]. CPAN candenote either the archive network itself, or the Perlprogram that acts as an interface to the network andas an automated so�ware installer (somewhat like apackage manager). Most so�ware on CPAN is freeso�ware.[3]

CPAN is big

49,400 Uploads16,502 Distributions63,128 Modules7,031 Uploaders

It all began a long time ago

TPC4, during OSCONIn 2000Monterey, CA

I got annoyed

search.cpan.org was closed source (and still is)I am not always connected to the internetLatency

Kobesearch

I played with searching, but didn’t get very farRandy Kobes wrote Search::CPAN::Lite(kobesearch.cpan.org)Needs to extract �les and generates a database

Time passes

Didn’t do anything for a whileNeeding to extract �les and generate a database wastoo much work

Needed distraction from writing a book

www.tickmyboxes.com

Insight in the shower

Do not need to extract CPANIndexes are good enoughCan extract on the �y

Actually

Not CPAN, but MINICPANCPAN::Mini & minicpanCPAN::Mini::Webserver

And

Assume we have a (MINI)CPAN mirrorDependencies: all of CPAN

Dependencies

App::Cache, Archive::Peek, CGI, CPAN::Mini,File::Type, HTTP::Server::Simple,IO::Capture::Stdout, List::MoreUtils, MIME::Base64,Module::InstalledVersion, Moose,Parse::CPAN::Authors, Parse::CPAN::Whois,Parse::CPAN::Meta, Parse::CPAN::Packages,Path::Class, Pod::Simple::HTML, Perl6::Say, PPI,PPI::HTML, Search::QueryParser, String::CamelCase,Template::Declare, Test::More

Release

0.32 Sat Aug 2 19:27:12 BST 2008

Releases

0.32 Sat Aug 2 19:27:12 BST 20080.33 Fri Aug 8 08:00:12 BST 20080.34 Fri Aug 8 18:00:32 BST 20080.35 Tue Aug 12 07:30:28 BST 20080.36�u Aug 14 16:20:53 CEST 20080.37 Fri Aug 15 09:37:46 CEST 20080.38 Mon Aug 18 09:15:25 BST 20080.39 Tue Aug 19 08:27:37 BST 20080.40 Fri Aug 22 09:24:54 BST 20080.41�u Aug 28 15:39:02 BST 20080.42 Sun Sep 7 09:31:44 BST 20080.43�u Sep 18 17:14:50 BST 2008

Other people

andya, bricas, corion, clkao, evdb, jesse, markf,martijn, miyagawa, ranguard, rjbs, rsavage,tokuhirom

All about search

brocardacme::bu�yacme bu�yacme-bu�yblood -orangebu�y -testcamel case

Other features

BonjourOpenSearchActs like search.cpan.orgActs like CPAN mirrorInstall modules

Show me

$ minicpan_webserver

HTTP::Server::Simple: You can connect to

your server at http://localhost:2963/

Future

Slight tweaks

Summary

CPAN::Mini

CPAN::Mini::Webserver