What's new on CPAN - December 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 & Apps

Config & DevOps

  • Debug::Statements provides a convenient way of managing debug statements in code
  • Log every time a Perl process starts using Devel::PerlLog
  • There are already several Dist::Zilla plugins for auto-generating a distribution readme from pod, but Dist::Zilla::Plugin::Pod2Readme aims to be as simple as possible. Very useful for GitHub hosted distributions
  • Add a timeout to command line prompts, including default options with IO::Prompt::Timeout
  • Version::Compare can compare version numbers and determine which is greater
  • Allow certain exceptions to not be caught using Try::Tiny::Except
  • Regexp::SAR implements event handling on regexp matching conditions

Data

  • Color::RGB::Util provides a bunch of useful functions for manipulating RGB colors
  • Implement a circular list with Data::CircularList
  • Data::Embed provides read / write accessors for data embedded in files
  • Looking for a faster Excel reader? Check out Data::XLSX::Parser
  • ETL::Yertl is a command line data ETL tool. At an early stage of development, but looks interesting
  • Only access part of a file using IO::Slice
  • SQL::Interpol can interpolate Perl variables into SQL queries
  • PQL::Cache is an in-memory Perl database with many useful features

Math, Science & Language

  • Geo::Coder::All is an all-in-one wrapper for geocoding data that works with Google, Bing, TomTom etc.
  • Compare image hashes with Image::Hash. Very cool!
  • Map::Metro is another implementation of public transport graphing with some useful features
  • Safely truncate unicode text using Unicode::Truncate

Web


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.

Browse their articles

Feedback

Something wrong with this article? Help us out by opening an issue or pull request on GitHub