What's new on CPAN - June 2014
Welcome to “What’s new on CPAN”, a curated look at last month’s new CPAN uploads for your reading and programming pleasure.
APIs
- Get a REST API for your database with Cookieville
- Device::SaleaeLogic provides a Perl interface to Saleae Logic devices
- Etcd is a Perl API for etcd, a key value store
- Geo::Coder::OpenCage is a Perl API for OpenCage a geocoding service
- Math::OEIS provides an interface to Online Encyclopaedia of Integer Sequences. Who knew there was such a thing!
- Net::PMP is an interface for the Public Media Platform
- Manage GNU Screen windows easily with Term::GnuScreen::WindowArrayLike
- WWW::Spotify provide an interface to the Spotify API
- Interact with a RabbitMQ broker using WWW::RabbitMQ::Broker
- WWW::GoKGS is a scraper for the KGS Go server
- WebService::Amazon::Route53::Caching implements a caching layer for the Amazon Route 53 DNS service
- Send error reports to raygun.io from your Plack middleware with Plack::Middleware::Raygun
Apps
- Run CPANTS Kwalitee tests on your distribution with App::CPANTS::Lint
- App::Goto::Amazon provides a shortcut command for connecting to Amazon EC2 instances
- App::HPGL2Cadsoft converts HPGL files to Cadsoft Eagle script (a circuit board design tool)
Data
- AnyEvent::Pg::Pool::Multiserver let’s you make asynchronous DB calls to multiple Postgres servers, using AnyEvent::Pg
- Convert CSS into a Regexp::Grammar parse tree with CSS::Selector::Grammar
- Run massive numbers of insert and update statements on a MySQL database using DBIx::TxnPool
- Deeme is a “Database-agnostic driven Event Emitter” with support for multiple backends
- Auto-release your distributions to Stratopan with Dist::Zilla::Plugin::UploadToStratopan
- Lookup USA state names and capitals with Geo::States
- MySQL::Explain::Parser converts MySQL’s explain output into Perl
Development & System Administration
- DBG provides a collection of useful debugging functions for Perl code
- Another useful debugging too: get a stack trace for all system calls with Devel::Trace::Syscall
- Quickly generate Perl data structures using Data::Random::Structure
- MooseX::AuthorizedMethodRoles provides role checking through whitelist methods
- Get Pango constants without the heft of Glib and Gtk2 libraries with PangoConst
- Sort::Key::Domain sorts domain names
- Get Jenkins compatible TAP test output with TAP::Formatter::Jenkins
- Test::RequiresInternet will check for Internet connectivity before running tests - very useful.
Fun
- Looking for the gramatically correct version of “Buffalo buffalo …”? Look no further because Acme::Buffalo::Buffalo has got you covered
- Acme::MilkyHolmes provides character information on the famous Japanese animated cartoon
- Games::Go::Referee analyses sgf files for Go rule violations
Web
Conveniently run A/B testing on CGI applications with CGI::Application::Plugin::AB
CGI::Application::Plugin::Throttle implements a throttling function for users (identifies by IP address)
Avoid connecting to blacklisted URLs with HTTP::Tiny::Paranoid
New Dancer modules:
- Dancer::Plugin::CORS configures cross-origin sharing rules
- Dancer::Plugin::Negotiate wraps HTTP::Negotiate
- Dancer::Plugin::Swig implements a Swig wrapper
New Mojolicious modules:
- Mojolicious::Plugin::Logf flattens and logs complex data structures using sprintf
- Mojolicious::Plugin::MoreUtilHelpers implements some utility methods
- Mojolicious::Plugin::NetsPayment is an experimental module for making payments using Nets
- Mojolicious::Plugin::PayPal is an experimental module for making payments using PayPal
- MojoX::GlobalEvents is an event handler
This article was originally posted on PerlTricks.com.
Tags
David Farrell
David is the editor of Perl.com. An organizer of the New York Perl Meetup, he works for ZipRecruiter as a software developer, and sometimes tweets about Perl and Open Source.
Browse their articles
Feedback
Something wrong with this article? Help us out by opening an issue or pull request on GitHub